class IonEntryTest(unittest.TestCase): """ Test IonEntry using fictitious entry """ def setUp(self): ion = Ion.from_formula("MnO4[-]") self.entry = IonEntry(ion, 49) def test_get_energy(self): self.assertEqual(self.entry.energy, 49, "Wrong energy!") def test_get_name(self): self.assertEqual(self.entry.name, 'MnO4[-]', "Wrong name!") def test_get_composition(self): comp = self.entry.composition expected_comp = Ion.from_formula('MnO4[-]') self.assertEqual(comp, expected_comp, "Wrong composition!") def test_to_from_dict(self): d = self.entry.as_dict() entry = IonEntry.from_dict(d) self.assertEqual(entry.name, 'MnO4[-]', "Wrong name!") self.assertEqual(entry.energy_per_atom, 49.0 / 5)