@@ -863,6 +863,35 @@ def test_comparison(self):
863863 self .assertNotEqual (sec_a , sec_b )
864864 self .assertNotEqual (sec_a .properties , sec_b .properties )
865865
866+ def test_create_section (self ):
867+ root = Section ("root" )
868+ self .assertEqual (len (root .sections ), 0 )
869+
870+ name = "subsec"
871+ type = "subtype"
872+ oid = "79b613eb-a256-46bf-84f6-207df465b8f7"
873+ subsec = root .create_section (name , type , oid )
874+
875+ self .assertEqual (len (root .sections ), 1 )
876+ self .assertEqual (subsec .parent , root )
877+ self .assertEqual (root .sections [name ], subsec )
878+ self .assertEqual (root .sections [name ].type , type )
879+ self .assertEqual (root .sections [name ].oid , oid )
880+
881+ name = "othersec"
882+ subsec = root .create_section (name )
883+ self .assertEqual (len (root .sections ), 2 )
884+ self .assertEqual (subsec .parent , root )
885+ self .assertEqual (root .sections [name ], subsec )
886+ self .assertEqual (root .sections [name ].type , "undefined" )
887+
888+ name = "subsubsec"
889+ subsec = root .sections [0 ].create_section (name )
890+ self .assertEqual (len (root .sections ), 2 )
891+ self .assertEqual (subsec .parent , root .sections [0 ])
892+ self .assertEqual (len (root .sections [0 ].sections ), 1 )
893+ self .assertEqual (root .sections [0 ].sections [0 ].name , name )
894+
866895 def test_link (self ):
867896 pass
868897
0 commit comments