def test_include_and_exclude(self): atom = Atom(mass=2.0 * u.g / u.mol, charge=30.0 * u.C, name="TestAtom") atom_json = atom.json(exclude={"mass"}) assert "mass" not in atom_json atom_json = atom.json(exclude={"mass_"}) assert "mass" not in atom_json atom_json = atom.json(include={"mass"}) assert "name" not in atom_json atom_json = atom.json(include={"mass_"}) assert "name" not in atom_json
def test_atom_every_field_set(self, full_atom_type, are_equivalent_atoms): atom = Atom( name="test_atom", label="test_label", position=[0.0, 0.0, 0.0], charge=1.5, mass=2.0, element=element_by_symbol("C"), atom_type=full_atom_type, ) atom_copy = Atom.parse_raw(atom.json()) assert are_equivalent_atoms(atom, atom_copy)