File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -338,6 +338,29 @@ def test_name(self):
338338 p = Property (name )
339339 self .assertEqual (p .name , name )
340340
341+ # Test name can be properly set on single and connected Properties
342+ prop = Property ()
343+ self .assertNotEqual (prop .name , "prop" )
344+ prop .name = "prop"
345+ self .assertEqual (prop .name , "prop" )
346+
347+ sec = Section ()
348+ prop_a = Property (parent = sec )
349+ self .assertNotEqual (prop_a .name , "prop_a" )
350+ prop_a .name = "prop_a"
351+ self .assertEqual (prop_a .name , "prop_a" )
352+
353+ # Test property name can be changed with siblings
354+ prop_b = Property (name = "prop_b" , parent = sec )
355+ self .assertEqual (prop_b .name , "prop_b" )
356+ prop_b .name = "prop"
357+ self .assertEqual (prop_b .name , "prop" )
358+
359+ # Test property name set will fail on existing sibling with same name
360+ with self .assertRaises (KeyError ):
361+ prop_b .name = "prop_a"
362+ self .assertEqual (prop_b .name , "prop" )
363+
341364 def test_parent (self ):
342365 p = Property ("property_section" , parent = Section ("S" ))
343366 self .assertIsInstance (p .parent , BaseSection )
You can’t perform that action at this time.
0 commit comments