mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
96 lines
2.7 KiB
Python
96 lines
2.7 KiB
Python
from galaxy.tool_util.unittest_utils import t_data_downloader_for
|
|
from galaxy.tool_util.verify import verify
|
|
|
|
|
|
def test_writes_output_to_target_directory(tmp_path):
|
|
item_label = "my test case"
|
|
output_content = b"expected"
|
|
filename = "my_output.txt"
|
|
|
|
assert not (tmp_path / filename).exists()
|
|
verify(
|
|
item_label,
|
|
output_content,
|
|
attributes={},
|
|
filename=filename,
|
|
keep_outputs_dir=str(tmp_path),
|
|
get_filecontent=t_data_downloader_for(output_content),
|
|
)
|
|
assert (tmp_path / filename).exists()
|
|
assert (tmp_path / filename).open("rb").read() == output_content
|
|
|
|
|
|
def test_no_writes_output_to_target_directory_on_contains(tmp_path):
|
|
item_label = "my test case"
|
|
output_content = b"expected"
|
|
attributes = {
|
|
"compare": "contains",
|
|
}
|
|
filename = "my_output.txt"
|
|
|
|
get_filecontent = t_data_downloader_for(b"xpecte")
|
|
assert not (tmp_path / filename).exists()
|
|
verify(
|
|
item_label,
|
|
output_content,
|
|
attributes=attributes,
|
|
filename=filename,
|
|
keep_outputs_dir=str(tmp_path),
|
|
get_filecontent=get_filecontent,
|
|
)
|
|
# Consider switching this to not update - see discussion on
|
|
# https://github.com/galaxyproject/galaxy/pull/14661
|
|
assert (tmp_path / filename).exists()
|
|
|
|
|
|
def test_sim_size(tmp_path):
|
|
item_label = "my test case"
|
|
output_content = b"expected"
|
|
attributes = {
|
|
"compare": "sim_size",
|
|
"delta": 2,
|
|
}
|
|
filename = "my_output.txt"
|
|
|
|
get_filecontent = t_data_downloader_for(b"xpected")
|
|
assert not (tmp_path / filename).exists()
|
|
verify(
|
|
item_label,
|
|
output_content,
|
|
attributes=attributes,
|
|
filename=filename,
|
|
keep_outputs_dir=str(tmp_path),
|
|
get_filecontent=get_filecontent,
|
|
)
|
|
assert (tmp_path / filename).exists()
|
|
assert (tmp_path / filename).open("rb").read() == b"expected"
|
|
|
|
|
|
def test_sim_size_failure_still_updates(tmp_path):
|
|
item_label = "my test case"
|
|
output_content = b"expected"
|
|
attributes = {
|
|
"compare": "sim_size",
|
|
"delta": 2,
|
|
}
|
|
filename = "my_output.txt"
|
|
|
|
get_filecontent = t_data_downloader_for(b"ected")
|
|
assert not (tmp_path / filename).exists()
|
|
assertion_error = None
|
|
try:
|
|
verify(
|
|
item_label,
|
|
output_content,
|
|
attributes=attributes,
|
|
filename=filename,
|
|
keep_outputs_dir=str(tmp_path),
|
|
get_filecontent=get_filecontent,
|
|
)
|
|
except AssertionError as ae:
|
|
assertion_error = ae
|
|
|
|
assert assertion_error
|
|
assert (tmp_path / filename).exists()
|
|
assert (tmp_path / filename).open("rb").read() == b"expected"
|