Skip to content

Commit

Permalink
update gather tests
Browse files Browse the repository at this point in the history
  • Loading branch information
dwhswenson authored and richardjgowers committed Aug 24, 2023
1 parent f48827c commit 0601e7e
Showing 1 changed file with 62 additions and 53 deletions.
115 changes: 62 additions & 53 deletions openfecli/tests/commands/test_gather.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,73 +27,82 @@ def test_get_column(val, col):
@pytest.fixture
def results_dir(tmpdir):
with tmpdir.as_cwd():
with resources.path('openfecli.tests.data', 'results.tar.gz') as f:
with resources.path('openfecli.tests.data', 'rbfe_results.tar.gz') as f:
t = tarfile.open(f, mode='r')
t.extractall('.')

yield

_EXPECTED_DG = b"""
ligand DG(MLE) (kcal/mol) uncertainty (kcal/mol)
lig_ejm_31 -0.09 0.05
lig_ejm_42 0.7 0.1
lig_ejm_46 -0.98 0.05
lig_ejm_47 -0.1 0.1
lig_ejm_48 0.53 0.09
lig_ejm_50 0.91 0.06
lig_ejm_43 2.0 0.2
lig_jmc_23 -0.68 0.09
lig_jmc_27 -1.1 0.1
lig_jmc_28 -1.25 0.08
"""

@pytest.fixture
def ref_gather():
return b"""\
measurement\ttype\tligand_i\tligand_j\testimate (kcal/mol)\tuncertainty (kcal/mol)
DDGhyd(lig_15, lig_12)\tRHFE\tlig_12\tlig_15\t-1.1\t0.055
DDGhyd(lig_16, lig_15)\tRHFE\tlig_15\tlig_16\t-5.7\t0.043
DDGhyd(lig_15, lig_11)\tRHFE\tlig_11\tlig_15\t5.4\t0.045
DDGhyd(lig_3, lig_14)\tRHFE\tlig_14\tlig_3\t1.3\t0.12
DDGhyd(lig_6, lig_1)\tRHFE\tlig_1\tlig_6\t-3.5\t0.038
DDGhyd(lig_8, lig_6)\tRHFE\tlig_6\tlig_8\t4.1\t0.074
DDGhyd(lig_3, lig_2)\tRHFE\tlig_2\tlig_3\t0.23\t0.044
DDGhyd(lig_5, lig_10)\tRHFE\tlig_10\tlig_5\t-8.8\t0.099
DDGhyd(lig_15, lig_10)\tRHFE\tlig_10\tlig_15\t1.4\t0.047
DDGhyd(lig_6, lig_14)\tRHFE\tlig_14\tlig_6\t-2.1\t0.034
DDGhyd(lig_15, lig_14)\tRHFE\tlig_14\tlig_15\t3.3\t0.056
DDGhyd(lig_9, lig_6)\tRHFE\tlig_6\tlig_9\t-0.079\t0.021
DDGhyd(lig_7, lig_3)\tRHFE\tlig_3\tlig_7\t73.0\t2.0
DDGhyd(lig_7, lig_4)\tRHFE\tlig_4\tlig_7\t2.7\t0.16
DDGhyd(lig_14, lig_13)\tRHFE\tlig_13\tlig_14\t0.49\t0.038
DGsolvent(lig_12, lig_15)\tsolvent\tlig_12\tlig_15\t-5.1\t0.055
DGvacuum(lig_12, lig_15)\tvacuum\tlig_12\tlig_15\t-4.0\t0.0014
DGsolvent(lig_15, lig_16)\tsolvent\tlig_15\tlig_16\t-17.0\t0.043
DGvacuum(lig_15, lig_16)\tvacuum\tlig_15\tlig_16\t-11.0\t0.0064
DGsolvent(lig_11, lig_15)\tsolvent\tlig_11\tlig_15\t4.1\t0.041
DGvacuum(lig_11, lig_15)\tvacuum\tlig_11\tlig_15\t-1.3\t0.019
DGvacuum(lig_14, lig_3)\tvacuum\tlig_14\tlig_3\t-29.0\t0.051
DGsolvent(lig_14, lig_3)\tsolvent\tlig_14\tlig_3\t-28.0\t0.11
DGvacuum(lig_1, lig_6)\tvacuum\tlig_1\tlig_6\t20.0\t0.022
DGsolvent(lig_1, lig_6)\tsolvent\tlig_1\tlig_6\t17.0\t0.032
DGsolvent(lig_6, lig_8)\tsolvent\tlig_6\tlig_8\t-6.1\t0.069
DGvacuum(lig_6, lig_8)\tvacuum\tlig_6\tlig_8\t-10.0\t0.027
DGsolvent(lig_2, lig_3)\tsolvent\tlig_2\tlig_3\t15.0\t0.03
DGvacuum(lig_2, lig_3)\tvacuum\tlig_2\tlig_3\t15.0\t0.032
DGvacuum(lig_10, lig_5)\tvacuum\tlig_10\tlig_5\t19.0\t0.046
DGsolvent(lig_10, lig_5)\tsolvent\tlig_10\tlig_5\t11.0\t0.087
DGvacuum(lig_10, lig_15)\tvacuum\tlig_10\tlig_15\t2.3\t0.01
DGsolvent(lig_10, lig_15)\tsolvent\tlig_10\tlig_15\t3.7\t0.046
DGvacuum(lig_14, lig_6)\tvacuum\tlig_14\tlig_6\t16.0\t0.011
DGsolvent(lig_14, lig_6)\tsolvent\tlig_14\tlig_6\t14.0\t0.032
DGsolvent(lig_14, lig_15)\tsolvent\tlig_14\tlig_15\t10.0\t0.056
DGvacuum(lig_14, lig_15)\tvacuum\tlig_14\tlig_15\t6.9\t0.0028
DGvacuum(lig_6, lig_9)\tvacuum\tlig_6\tlig_9\t-5.0\t0.00056
DGsolvent(lig_6, lig_9)\tsolvent\tlig_6\tlig_9\t-5.1\t0.021
DGvacuum(lig_3, lig_7)\tvacuum\tlig_3\tlig_7\t-28.0\t0.91
DGsolvent(lig_3, lig_7)\tsolvent\tlig_3\tlig_7\t45.0\t1.8
DGsolvent(lig_4, lig_7)\tsolvent\tlig_4\tlig_7\t-3.3\t0.15
DGvacuum(lig_4, lig_7)\tvacuum\tlig_4\tlig_7\t-6.1\t0.048
DGsolvent(lig_13, lig_14)\tsolvent\tlig_13\tlig_14\t15.0\t0.037
DGvacuum(lig_13, lig_14)\tvacuum\tlig_13\tlig_14\t15.0\t0.0057
_EXPECTED_DDG = b"""
ligand_i ligand_j DDG(i->j) (kcal/mol) uncertainty (kcal/mol)
lig_ejm_31 lig_ejm_42 0.8 0.1
lig_ejm_31 lig_ejm_46 -0.89 0.06
lig_ejm_31 lig_ejm_47 0.0 0.1
lig_ejm_31 lig_ejm_48 0.61 0.09
lig_ejm_31 lig_ejm_50 1.00 0.04
lig_ejm_42 lig_ejm_43 1.4 0.2
lig_ejm_46 lig_jmc_23 0.29 0.09
lig_ejm_46 lig_jmc_27 -0.1 0.1
lig_ejm_46 lig_jmc_28 -0.27 0.06
"""

_EXPECTED_DG_RAW = b"""
leg ligand_i ligand_j DG(i->j) (kcal/mol) uncertainty (kcal/mol)
complex lig_ejm_31 lig_ejm_42 -15.0 0.1
solvent lig_ejm_31 lig_ejm_42 -15.71 0.03
complex lig_ejm_31 lig_ejm_46 -40.75 0.04
solvent lig_ejm_31 lig_ejm_46 -39.86 0.05
complex lig_ejm_31 lig_ejm_47 -27.8 0.1
solvent lig_ejm_31 lig_ejm_47 -27.83 0.06
complex lig_ejm_31 lig_ejm_48 -16.14 0.08
solvent lig_ejm_31 lig_ejm_48 -16.76 0.03
complex lig_ejm_31 lig_ejm_50 -57.33 0.04
solvent lig_ejm_31 lig_ejm_50 -58.33 0.02
complex lig_ejm_42 lig_ejm_43 -18.9 0.2
solvent lig_ejm_42 lig_ejm_43 -20.28 0.03
complex lig_ejm_46 lig_jmc_23 17.42 0.06
solvent lig_ejm_46 lig_jmc_23 17.12 0.06
complex lig_ejm_46 lig_jmc_27 15.81 0.09
solvent lig_ejm_46 lig_jmc_27 15.91 0.05
complex lig_ejm_46 lig_jmc_28 23.14 0.04
solvent lig_ejm_46 lig_jmc_28 23.41 0.05
"""

def test_gather(results_dir, ref_gather):

@pytest.mark.parametrize('report', ["", "dg", "ddg", "dg-raw"])
def test_gather(results_dir, report):
expected = {
"": _EXPECTED_DG,
"dg": _EXPECTED_DG,
"ddg": _EXPECTED_DDG,
"dg-raw": _EXPECTED_DG_RAW,
}[report]
runner = CliRunner()

result = runner.invoke(gather, ['results', '-o', '-'])
if report:
args = ["--report", report]
else:
args = []

result = runner.invoke(gather, ['results'] + args + ['-o', '-'])

assert result.exit_code == 0

actual_lines = set(result.stdout_bytes.split(b'\n'))

assert set(ref_gather.split(b'\n')) == actual_lines
assert set(expected.split(b'\n')) == actual_lines

0 comments on commit 0601e7e

Please sign in to comment.