Skip to content

Commit

Permalink
refactor sample_udf_dx, with new test for non Dx-udf
Browse files Browse the repository at this point in the history
  • Loading branch information
melferink committed Mar 11, 2024
1 parent 1949437 commit 7c940f9
Showing 1 changed file with 19 additions and 9 deletions.
28 changes: 19 additions & 9 deletions tests/test_export_sample.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,41 +9,51 @@ def __init__(self, udf):


def test_sample_udf_withudf(mocker, capsys):
# Test output for sample with known udf in database
# Test output for sample with known Dx-udf in database
samples_mock[sample_name] = MyMock({"Dx geslacht": "Vrouw"})
patched_clarity_epp = mocker.patch(
'clarity_epp.export.sample.get_samples',
return_value=samples_mock
)
sample.sample_udf("lims", sys.stdout, udf=udf_value, column_name=column_name)
sample.sample_udf_dx("lims", sys.stdout, udf="Dx geslacht", column_name=column_name)
captured = capsys.readouterr()
assert captured.out == f"Sample\t{column_name}\n{sample_name}\t{geslacht}\n"
assert captured.out == f"Sample\t{column_name}\n{sample_name}\tVrouw\n"


def test_sample_udf_withoutudf(mocker, capsys):
# Test output for sample with no known udf in database
samples_mock[sample_name] = MyMock({"Dx geslacht": "Vrouw"})
patched_clarity_epp = mocker.patch(
'clarity_epp.export.sample.get_samples',
return_value=samples_mock
)
sample.sample_udf("lims", sys.stdout, udf="udf2", column_name=column_name)
sample.sample_udf_dx("lims", sys.stdout, udf="udf2", column_name=column_name)
captured = capsys.readouterr()
assert captured.out == f"Sample\t{column_name}\n{sample_name}\tunknown\n"

def test_sample_udf_withoutdxudf(mocker, capsys):
# Test output for sample with known udf in database, but not Dx-udf
samples_mock[sample_name] = MyMock({"Geslacht": "Vrouw"})
patched_clarity_epp = mocker.patch(
'clarity_epp.export.sample.get_samples',
return_value=samples_mock
)
sample.sample_udf_dx("lims", sys.stdout, udf="Geslacht", column_name=column_name)
captured = capsys.readouterr()
assert captured.out == f"Sample\t{column_name}\nWarning, udf is not type \'Dx\'\n"


def test_sample_udf_nosamples(mocker, capsys):
# Test output for sample not known in database
samples_mock[sample_name] = MyMock({"Dx geslacht": "Vrouw"})
patched_clarity_epp = mocker.patch(
'clarity_epp.export.sample.get_samples',
return_value=None
)
sample.sample_udf("lims", sys.stdout)
sample.sample_udf_dx("lims", sys.stdout)
captured = capsys.readouterr()
assert captured.out == "no_sample_found\n"


column_name = "test_column"
sample_name = "test_sample"
udf_value = "Dx geslacht"
geslacht = "Vrouw"
samples_mock = {}
samples_mock[sample_name] = MyMock({udf_value: geslacht})

0 comments on commit 7c940f9

Please sign in to comment.