# # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License # import unittest from qpid_dispatch.management.entity import EntityBase, camelcase class EntityTest(unittest.TestCase): def test_camelcase(self): self.assertEqual('', camelcase('')) self.assertEqual('foo', camelcase('foo')) self.assertEqual('Foo', camelcase('foo', capital=True)) self.assertEqual('fooBar', camelcase('foo bar')) self.assertEqual('fooBar', camelcase('foo.bar')) self.assertEqual('fooBar', camelcase('foo-bar')) self.assertEqual('fooBar', camelcase('foo_bar')) self.assertEqual('fooBarBaz', camelcase('foo_bar.baz')) self.assertEqual('FooBarBaz', camelcase('foo_bar.baz', capital=True)) self.assertEqual('fooBar', camelcase('fooBar')) self.assertEqual('FooBar', camelcase('fooBar', capital=True)) def test_entity(self): e = EntityBase({'foo-bar': 'baz'}, type='container', name='x') self.assertEqual(e.attributes, {'type': 'container', 'name':'x', 'foo-bar': 'baz'}) self.assertEqual(e.name, 'x') self.assertEqual(e['name'], 'x') e.name = 'y' self.assertEqual(e.name, 'y') self.assertEqual(e['name'], 'y') self.assertEqual(e.attributes['name'], 'y') e.xx = 'xx' self.assertEqual(e.xx, 'xx') self.assertEqual(e['xx'], 'xx') self.assertEqual(e.attributes['xx'], 'xx') if __name__ == '__main__': unittest.main()