Beispiel #1
0
 def testWriteAndParsePropertys(self):
     m = Cml.Molecule()
     m.atoms["a1"] = Cml.Atom("a1", "H", 0, 0, 0)
     m.property["Name"] = "Hydrogen"
     m.property["Weight"] = 1.0
     m.property["Radius"] = 25
     m.write("tests/testHydrogen.cml")
     m = Cml.Molecule()
     m.parse("tests/testHydrogen.cml")
     self.assertEqual(m.property["Name"], "Hydrogen")
     self.assertEqual(m.property["Weight"], 1.0)
     self.assertEqual(m.property["Radius"], 25)
     self.assertEqual(m.is_atom, True)
     os.remove("tests/testHydrogen.cml")
Beispiel #2
0
 def testCreateMoleculeWithCharge(self):
     m = Cml.Molecule()
     a1 = Cml.Atom("a1", "C",-1, 0, 0)
     a2 = Cml.Atom("a2", "O", 1, 1, 0)
     m.atoms["a1"] = a1
     m.atoms["a2"] = a2
     b = Cml.Bond(a1, a2, 2)
     m.bonds.append(b)
     m.write("tests/testOxygen.cml")
     m = Cml.Molecule()
     m.parse("tests/testOxygen.cml")
     self.assertAlmostEqual(m.atoms["a1"].x, 0.0)
     self.assertAlmostEqual(m.atoms["a1"].y, 0.0)
     self.assertEqual(m.atoms["a1"].elementType, "C")
     self.assertEqual(m.atoms["a1"].formalCharge,-1)
     self.assertAlmostEqual(m.atoms["a2"].x, 1.0)
     self.assertAlmostEqual(m.atoms["a2"].y, 0.0)
     self.assertEqual(m.atoms["a2"].elementType, "O")
     self.assertEqual(m.atoms["a2"].formalCharge,1)
     self.assertEqual(m.bonds[0].atomA.id, "a1")
     self.assertEqual(m.bonds[0].atomB.id, "a2")
     self.assertEqual(m.bonds[0].bonds, 2)
     os.remove("tests/testOxygen.cml")