Beispiel #1
0
 def test_eps(self):
     """Test the P_cif.eps coordinates resolution.
     """
     pcif = P_cif()
     pcif.eps = 1e-8
     grph = pcif.parseFile(self.graphiteciffile)
     self.assertEqual(8, len(grph))
     self.assertTrue(all(a.label.startswith('C1') for a in grph[:2]))
     self.assertTrue(all(a.label.startswith('C2') for a in grph[2:]))
     pcif2 = P_cif()
     pcif2.eps = 1e-3
     grph2 = pcif2.parseFile(self.graphiteciffile)
     self.assertEqual(4, len(grph2))
     return
Beispiel #2
0
 def test_parseFile(self):
     """check P_cif.parseFile()
     """
     # goodciffile
     stru = self.pfile.parseFile(self.goodciffile)
     self.assertEqual(8, len(stru))
     self.assertEqual(6.461, stru.lattice.a)
     self.assertEqual(6.461, stru.lattice.b)
     self.assertEqual(6.461, stru.lattice.c)
     self.assertEqual(90.0, stru.lattice.alpha)
     self.assertEqual(90.0, stru.lattice.beta)
     self.assertEqual(90.0, stru.lattice.gamma)
     self.assertEqual('Fm-3m', self.pfile.spacegroup.short_name)
     a0 = stru[0]
     self.assertEqual(0.5, a0.x)
     self.assertEqual(0.5, a0.y)
     self.assertEqual(0.5, a0.z)
     self.assertEqual(False, a0.anisotropy)
     self.assertEqual(1.0, a0.occupancy)
     self.assertEqual(0.0225566, a0.Uisoequiv)
     # badciffile
     pfile2 = P_cif()
     self.assertRaises(StructureFormatError,
             pfile2.parseFile, self.badciffile)
     # graphite
     pgraphite = P_cif()
     graphite = pgraphite.parseFile(self.graphiteciffile)
     self.assertEqual(4, len(graphite))
     c1 = graphite[0]
     self.assertEqual(str, type(c1.element))
     self.assertEqual('C', c1.element)
     self.assertEqual(str, type(c1.label))
     self.assertEqual('C1', c1.label)
     # filename with unicode encoding
     ugraphite = P_cif().parseFile(unicode(self.graphiteciffile))
     self.assertEqual(4, len(ugraphite))
     # File with full space group name
     ptei = P_cif().parseFile(self.teiciffile)
     self.assertEqual(16 , len(ptei))
     return
Beispiel #3
0
 def test_parseLines(self):
     """check P_cif.parseLines()
     """
     goodlines = open(self.goodciffile).readlines()
     badlines = open(self.badciffile).readlines()
     pfile, ptest = self.pfile, self.ptest
     stru_check = pfile.parseFile(self.goodciffile)
     stru = ptest.parseLines(goodlines)
     self.assertEqual(str(stru_check), str(stru))
     self.assertEqual(str(stru_check.lattice), str(stru.lattice))
     self.assertEqual(pfile.spacegroup.short_name,
                      ptest.spacegroup.short_name)
     ptest2 = P_cif()
     self.assertRaises(StructureFormatError, ptest2.parseLines, badlines)
     return
Beispiel #4
0
 def test_parse(self):
     """check P_cif.parse()
     """
     sgood = open(self.goodciffile).read()
     sbad = open(self.badciffile).read()
     pfile, ptest = self.pfile, self.ptest
     stru_check = pfile.parseFile(self.goodciffile)
     stru = ptest.parse(sgood)
     self.assertEqual(str(stru_check), str(stru))
     self.assertEqual(str(stru_check.lattice), str(stru.lattice))
     self.assertEqual(pfile.spacegroup.short_name,
                      ptest.spacegroup.short_name)
     ptestb = P_cif()
     self.assertRaises(StructureFormatError, ptestb.parse, sbad)
     return
Beispiel #5
0
 def setUp(self):
     self.ptest = P_cif()
     self.pfile = P_cif()
     return