@@ -180,15 +180,19 @@ class TestConfigNode(BaseTestCase):
180
180
"with_names" : [{"name" : "test_name" , "value" : "test_value" },
181
181
{"name" : "test_name2" ,
182
182
"value" : {"key1" , "test" }},
183
- {"name" : "test_name3" , "value" : [1 , 2 , 3 ]}]}
183
+ {"name" : "test_name3" , "value" : [1 , 2 , 3 ]}],
184
+ "with_names_dup" : [{"name" : "test_name" , "value" : "test_value" },
185
+ {"name" : "test_name" ,
186
+ "value" : {"key1" , "test" }},
187
+ {"name" : "test_name3" , "value" : [1 , 2 , 3 ]}]}
184
188
185
189
def setUp (self ):
186
190
super (TestConfigNode , self ).setUp ()
187
191
self .node = ConfigNode ("test_obj" , self .test_obj )
188
192
189
193
def test_normal_map_array_operations (self ):
190
194
self .assertEqual ("test" , self .node ['key1' ])
191
- self .assertEqual (4 , len (self .node ))
195
+ self .assertEqual (5 , len (self .node ))
192
196
193
197
self .assertEqual ("test_obj/key2" , self .node ['key2' ].name )
194
198
self .assertEqual (["a" , "b" , "c" ], self .node ['key2' ].value )
@@ -235,6 +239,11 @@ def test_get_with_name_on_name_does_not_exists(self):
235
239
lambda : self .node ['with_names' ].get_with_name ('no-name' ),
236
240
"Expected object with name no-name in test_obj/with_names list" )
237
241
242
+ def test_get_with_name_on_duplicate_name (self ):
243
+ self .expect_exception (
244
+ lambda : self .node ['with_names_dup' ].get_with_name ('test_name' ),
245
+ "Expected only one object with name test_name in test_obj/with_names_dup list" )
246
+
238
247
239
248
class FakeConfig :
240
249
0 commit comments