def test_duplicate_names(self): with self.assertRaises(DuplicateNameError): AddressFamily.create('name/space', [AddressMap('name/space/0', {'one': Thing(name='one', age=42)}), AddressMap('name/space/1', {'one': Thing(name='one', age=37)})])
def test_create_multiple(self): address_family = AddressFamily.create('name/space', [AddressMap('name/space/0', {'one': Thing(name='one', age=42)}), AddressMap('name/space/1', {'two': Thing(name='two', age=37)})]) self.assertEqual('name/space', address_family.namespace) self.assertEqual({Address.parse('name/space:one'): Thing(name='one', age=42), Address.parse('name/space:two'): Thing(name='two', age=37)}, address_family.addressables)
def test_create_single(self): address_family = AddressFamily.create('', [AddressMap('0', { 'one': Thing(name='one', age=42), 'two': Thing(name='two', age=37) })]) self.assertEqual('', address_family.namespace) self.assertEqual({Address.parse('//:one'): Thing(name='one', age=42), Address.parse('//:two'): Thing(name='two', age=37)}, address_family.addressables)
def test_mismatching_paths(self): with self.assertRaises(DifferingFamiliesError): AddressFamily.create('/dev/null', [ AddressMap('/dev/null/one/0', {}), AddressMap('/dev/null/two/0', {}) ])