@@ -58,10 +58,20 @@ def assertListAlmostEqual(self, l1, l2, places=None):
5858 for i in range (len (l1 )):
5959 self .assertAlmostEqual (l1 [i ], l2 [i ], places )
6060
61- # def test___init__(self):
62- # """check Structure.__init__()
63- # """
64- # return
61+
62+ def test___init__ (self ):
63+ """check Structure.__init__()
64+ """
65+ atoms = [Atom ('C' , [0 , 0 , 0 ]), Atom ('C' , [0.5 , 0.5 , 0.5 ])]
66+ self .assertRaises (ValueError , Structure , atoms , filename = teifile )
67+ self .assertRaises (ValueError , Structure ,
68+ lattice = Lattice (), filename = teifile )
69+ self .assertRaises (ValueError , Structure ,
70+ title = 'test' , filename = teifile )
71+ stru1 = Structure (title = 'my title' )
72+ self .assertEqual ('my title' , stru1 .title )
73+ return
74+
6575
6676 def test_copy (self ):
6777 """check Structure.copy()
@@ -406,6 +416,8 @@ def test___imul__(self):
406416 self .failUnless (numpy .array_equal (numpy .tile (xyz , (2 , 1 )), cdse .xyz ))
407417 self .assertEqual (8 , len (set (cdse )))
408418 self .assertEqual (8 * [lat ], [a .lattice for a in cdse ])
419+ self .stru *= - 3
420+ self .assertEqual (0 , len (self .stru ))
409421 return
410422
411423
@@ -429,6 +441,18 @@ def test__set_lattice(self):
429441 return
430442
431443
444+ def test_composition (self ):
445+ """check Structure.composition property
446+ """
447+ stru = self .stru
448+ self .assertEqual ({'C' : 2 }, stru .composition )
449+ stru *= 2
450+ self .assertEqual ({'C' : 4 }, stru .composition )
451+ stru [:] = []
452+ self .assertEqual ({}, stru .composition )
453+ return
454+
455+
432456 def test_element (self ):
433457 """check Structure.element
434458 """
0 commit comments