Skip to content

Commit

Permalink
Fix typos, tests
Browse files Browse the repository at this point in the history
  • Loading branch information
mattwthompson committed Jan 27, 2022
1 parent c529ee0 commit 6555475
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 21 deletions.
26 changes: 12 additions & 14 deletions openff/toolkit/tests/test_topology.py
Original file line number Diff line number Diff line change
Expand Up @@ -266,24 +266,22 @@ def test_get_atom(self, ethane_from_smiles):
with pytest.raises(Exception) as context:
topology_atom = topology.atom(8)

def test_topology_atom_element(self, toluene_from_sdf):
"""Test getters of TopologyAtom element and atomic number"""
from mendeleev import element
from mendeleev.models import Element

def test_topology_atom_element_properties(self, toluene_from_sdf):
"""
Test element-like getters of TopologyAtom atomic number. In 0.11.0, Atom.element
was removed and replaced with Atom.atomic_number and Atom.symbol.
"""
topology = Topology()
topology.add_molecule(toluene_from_sdf)

first_element = topology.atom(0).element
eighth_element = topology.atom(7).element

# Check if types/instances are correct
assert isinstance(first_element, Element)
assert isinstance(eighth_element, Element)
first_atom = topology.atom(0)
eighth_atom = topology.atom(7)

# Make sure first is a carbon element and eighth is a hydrogen element
assert first_element.symbol == element(6).symbol
assert eighth_element.symbol == element(1).symbol
# These atoms are expected to be hydrogen and carbon, respectively
assert first_atom.symbol == "C"
assert first_atom.atomic_number == 6
assert eighth_atom.symbol == "H"
assert eighth_atom.atomic_number == 1

def test_get_bond(self, ethane_from_smiles, ethene_from_smiles):
"""Test Topology.bond function (bond lookup from index)"""
Expand Down
4 changes: 2 additions & 2 deletions openff/toolkit/topology/molecule.py
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,7 @@ def atomic_number(self) -> int:
"""
return self._atomic_number

@propert
@property
def symbol(self) -> str:
"""
Return the symbol implied by the atomic number of this atom
Expand Down Expand Up @@ -5539,7 +5539,7 @@ def _to_xyz_file(self, file_path):
for j, atom_coords in enumerate(geometry.m_as(unit.angstrom)):
x, y, z = atom_coords
xyz_data.write(
f"{SYMBOLS[self.atoms[j].atomic_number} {x: .10f} {y: .10f} {z: .10f}\n"
f"{SYMBOLS[self.atoms[j].atomic_number]} {x: .10f} {y: .10f} {z: .10f}\n"
)

# now we up the frame count
Expand Down
4 changes: 3 additions & 1 deletion openff/toolkit/topology/topology.py
Original file line number Diff line number Diff line change
Expand Up @@ -1420,7 +1420,9 @@ def from_openmm(cls, openmm_topology, unique_molecules=None):
# Convert all openMM mols to graphs
omm_topology_G = nx.Graph()
for atom in openmm_topology.atoms():
omm_topology_G.add_node(atom.index, atomic_number=atom.atomic_number)
omm_topology_G.add_node(
atom.index, atomic_number=atom.element.atomic_number
)
for bond in openmm_topology.bonds():
omm_topology_G.add_edge(
bond.atom1.index, bond.atom2.index, bond_order=bond.order
Expand Down
8 changes: 4 additions & 4 deletions openff/toolkit/utils/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -273,7 +273,7 @@ def string_to_unit(unit_string):
return unit.Unit(unit_string)


def string_to_quantity(quantity_string) -> Union[str, unit.Quantity]:
def string_to_quantity(quantity_string) -> Union[str, int, float, unit.Quantity]:
"""Attempt to parse a string into a unit.Quantity.
Note that dimensionless floats and ints are returns as floats or ints, not Quantity objects.
Expand All @@ -291,9 +291,9 @@ def string_to_quantity(quantity_string) -> Union[str, unit.Quantity]:
# TODO: Should intentionally unitless array-likes be Quantity objects
# or their raw representation?
if (quantity.units == unit.dimensionless) and isinstance(quantity.m, (int, float)):
quantity = quantity.m

return quantity
return quantity.m
else:
return quantity


def _string_to_quantity(quantity_string):
Expand Down

0 comments on commit 6555475

Please # to comment.