@@ -371,24 +371,50 @@ def test_insert(self):
371371 with self .assertRaises (ValueError ):
372372 prop1 .insert (1 , "5.927" )
373373 self .assertEqual (prop1 .values , [0 , 1 , 2 , 3 ])
374+
375+ prop2 = Property (name = "prop2" , dtype = "int" , values = [1 , 2 ])
376+ prop2 .insert (1 , 3.14 , strict = False )
377+ self .assertEqual (prop2 .values , [1 , 3 , 2 ])
378+ prop2 .insert (1 , True , strict = False )
379+ self .assertEqual (prop2 .values , [1 , 1 , 3 , 2 ])
380+ prop2 .insert (1 , "5.927" , strict = False )
381+ self .assertEqual (prop2 .values , [1 , 5 , 1 , 3 , 2 ])
374382
375- prop2 = Property (name = "prop2" , dtype = "string" , values = ["a" , "c" ])
376- prop2 .insert (1 , "b" )
377- self .assertEqual (prop2 .values , ["a" , "b" , "c" ])
378-
379- prop3 = Property (name = "prop3" , dtype = "float" , values = [1.1 , 1.3 ])
380- prop3 .insert (1 , 1.2 )
381- self .assertEqual (prop3 .values , [1.1 , 1.2 , 1.3 ])
382-
383- prop4 = Property (name = "prop4" , dtype = "2-tuple" , values = ["(1; 2)" , "(5; 6)" ])
384- prop4 .insert (1 , "(3; 4)" )
385- self .assertEqual (prop4 .values , [['1' , '2' ], ['3' , '4' ], ['5' , '6' ]])
383+ prop3 = Property (name = "prop3" , dtype = "string" , values = ["a" , "c" ])
384+ prop3 .insert (1 , "b" )
385+ self .assertEqual (prop3 .values , ["a" , "b" , "c" ])
386+ prop3 .insert (1 , 1 , strict = False )
387+ self .assertEqual (prop3 .values , ["a" , "1" , "b" , "c" ])
388+ with self .assertRaises (ValueError ):
389+ prop3 .insert (1 , 2 , strict = True )
390+ self .assertEqual (prop3 .values , ["a" , "1" , "b" , "c" ])
391+
392+ prop4 = Property (name = "prop4" , dtype = "float" , values = [1.1 , 1.3 ])
393+ prop4 .insert (1 , 1.2 )
394+ self .assertEqual (prop4 .values , [1.1 , 1.2 , 1.3 ])
395+ prop4 .insert (1 , 2 , strict = False )
396+ self .assertEqual (prop4 .values , [1.1 , 2.0 , 1.2 , 1.3 ])
397+ with self .assertRaises (ValueError ):
398+ prop4 .insert (1 , 2 , strict = True )
399+ self .assertEqual (prop4 .values , [1.1 , 2.0 , 1.2 , 1.3 ])
386400
387- prop5 = Property (name = "prop5" , dtype = "int" , values = [1 , 2 ])
388- prop5 .insert (1 , 3.14 , strict = False )
389- prop5 .insert (1 , True , strict = False )
390- prop5 .insert (1 , "5.927" , strict = False )
391- self .assertEqual (prop5 .values , [1 , 5 , 1 , 3 , 2 ])
401+ prop5 = Property (name = "prop5" , dtype = "2-tuple" , values = ["(1; 2)" , "(5; 6)" ])
402+ prop5 .insert (1 , "(3; 4)" , strict = True )
403+ self .assertEqual (prop5 .values , [['1' , '2' ], ['3' , '4' ], ['5' , '6' ]])
404+ prop5 .insert (1 , [['4' , '5' ]], strict = True )
405+ self .assertEqual (prop5 .values , [['1' , '2' ], ['4' , '5' ], ['3' , '4' ], ['5' , '6' ]])
406+
407+ prop6 = Property (name = "prop6" , dtype = "boolean" , values = [True , True ])
408+ prop6 .insert (1 , False )
409+ self .assertEqual (prop6 .values , [True , False , True ])
410+ prop6 .insert (1 , 1 , strict = False )
411+ self .assertEqual (prop6 .values , [True , True , False , True ])
412+ with self .assertRaises (ValueError ):
413+ prop6 .insert (1 , 2 , strict = False )
414+ self .assertEqual (prop6 .values , [True , True , False , True ])
415+ with self .assertRaises (ValueError ):
416+ prop6 .insert (1 , 0 , strict = True )
417+ self .assertEqual (prop6 .values , [True , True , False , True ])
392418
393419 def test_reorder (self ):
394420 sec = Section ()
0 commit comments