FAQ | This is a LIVE service | Changelog

Skip to content
Snippets Groups Projects
Commit c715edd7 authored by Mark Driver's avatar Mark Driver
Browse files

update to Phase, Phases and System to get name inchikey mapping.

This is required groundwork to solve Issue #12.
parent 330b1d8d
No related branches found
No related tags found
No related merge requests found
......@@ -203,3 +203,17 @@ class Phase(object):
"""
return [molecule.ssip_file_loc for molecule in self.molecule_list]
def get_name_inchikey_map(self):
"""Get the name inchikey mapping for all molecules in the phases.
Returns
-------
name_inchikey_map : dict
name: inchikey pairings for molecules.
"""
name_inchikey_map = {}
for molecule in self.molecule_list:
name_inchikey_map[molecule.name] = molecule.inchikey
return name_inchikey_map
......@@ -181,3 +181,17 @@ class Phases(object):
for phase in self.phase_list:
ssip_file_locations.extend(phase.get_ssip_file_locations())
return set(ssip_file_locations)
def get_name_inchikey_map(self):
"""Get the name inchikey mapping for all molecules in the phases.
Returns
-------
name_inchikey_map : dict
name: inchikey pairings for molecules.
"""
name_inchikey_map = {}
for phase in self.phase_list:
name_inchikey_map.update(phase.get_name_inchikey_map())
return name_inchikey_map
\ No newline at end of file
......@@ -268,6 +268,17 @@ class System(object):
"""
return self.phases.get_ssip_file_locations()
def get_name_inchikey_map(self):
"""Get the name inchikey mapping for all molecules in the phases.
Returns
-------
name_inchikey_map : dict
name: inchikey pairings for molecules.
"""
return self.phases.get_name_inchikey_map()
def calc_fgip(self):
"""Boolean indicating whether to Calculate FGIP information for Phases.
......
......@@ -145,3 +145,14 @@ class PhasesTestCase(unittest.TestCase):
expected_set = {self.molecule.ssip_file_loc}
actual_set = self.phases.get_ssip_file_locations()
self.assertSetEqual(expected_set, actual_set)
def test_get_name_inchikey_map(self):
"""Test expected name: inchikey mapping is returned.
Returns
-------
None.
"""
expected_dict = {'water': 'XLYOFNOQVPJJNP-UHFFFAOYSA-N'}
actual_dict = self.phases.get_name_inchikey_map()
self.assertDictEqual(expected_dict, actual_dict)
......@@ -138,3 +138,14 @@ class PhaseTestCase(unittest.TestCase):
expected_list = [self.molecule.ssip_file_loc]
actual_list = self.phase.get_ssip_file_locations()
self.assertListEqual(expected_list, actual_list)
def test_get_name_inchikey_map(self):
"""Test expected name: inchikey mapping is returned.
Returns
-------
None.
"""
expected_dict = {'water': 'XLYOFNOQVPJJNP-UHFFFAOYSA-N'}
actual_dict = self.phase.get_name_inchikey_map()
self.assertDictEqual(expected_dict, actual_dict)
\ No newline at end of file
......@@ -222,6 +222,18 @@ class SystemTestCase(unittest.TestCase):
expected_set = {self.molecule.ssip_file_loc}
actual_set = self.system.get_ssip_file_locations()
self.assertSetEqual(expected_set, actual_set)
def test_get_name_inchikey_map(self):
"""Test expected name: inchikey mapping is returned.
Returns
-------
None.
"""
expected_dict = {'water': 'XLYOFNOQVPJJNP-UHFFFAOYSA-N'}
actual_dict = self.system.get_name_inchikey_map()
self.assertDictEqual(expected_dict, actual_dict)
def test_calc_fgip(self):
"""Test expected bool returned.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment