diff --git a/test/check.py b/test/check.py index 264c599c3d7fb0c802023122d75b55777f94642b..e34ca77de6e83c5fed9a69188762a06b3c2cad5c 100644 --- a/test/check.py +++ b/test/check.py @@ -16,7 +16,7 @@ from lwr.lwr_client import ClientOutputs from lwr.lwr_client import build_client_manager from lwr.lwr_client import ClientJobDescription from galaxy.tools.deps.requirements import ToolRequirement -from .test_utils import write_json_config +from .test_common import write_json_config TEST_SCRIPT = b""" import sys @@ -107,6 +107,9 @@ def run(options): __write_to_file(os.path.join(temp_index_dir_sibbling, "human_full_seqs"), b"AGTC") empty_input = u"/foo/bar/x" + + test_unicode = getattr( options, "test_unicode", False ) # TODO Switch this in integration tests + cmd_text = EXAMPLE_UNICODE_TEXT if test_unicode else "Hello World" command_line_params = ( temp_tool_path, temp_config_path, @@ -114,7 +117,7 @@ def run(options): temp_output_path, empty_input, temp_output2_path, - EXAMPLE_UNICODE_TEXT, + cmd_text, temp_output3_path, temp_input_extra_path, temp_version_output_path, @@ -129,7 +132,7 @@ def run(options): client, client_manager = __client(temp_directory, options) waiter = Waiter(client, client_manager) requirements = [] - test_requirement = options.get("test_requirement", False) + test_requirement = getattr( options, "test_requirement", False ) if test_requirement: requirements.append(TEST_REQUIREMENT) client_outputs = ClientOutputs( @@ -170,7 +173,7 @@ def run(options): failed_message = failed_message_template % (result_status, failed) assert False, failed_message __assert_contents(temp_output_path, EXPECTED_OUTPUT, result_status) - __assert_contents(temp_output2_path, EXAMPLE_UNICODE_TEXT, result_status) + __assert_contents(temp_output2_path, cmd_text, result_status) __assert_contents(os.path.join(temp_work_dir, "galaxy.json"), b"GALAXY_JSON", result_status) __assert_contents(os.path.join(temp_directory, "dataset_1_files", "extra"), b"EXTRA_OUTPUT_CONTENTS", result_status) __assert_contents(temp_version_output_path, b"1.0.1", result_status) diff --git a/test/integration_test.py b/test/integration_test.py index d614945ceb2b9f785f35fa158a90926656e07d59..189e8ef8e95197ed42209ae3d260b248cbf30f98 100644 --- a/test/integration_test.py +++ b/test/integration_test.py @@ -86,7 +86,7 @@ class BaseIntegrationTest(TempDirectoryTestCase): class IntegrationTests(BaseIntegrationTest): - default_kwargs = dict(direct_interface=False, test_requirement=True) + default_kwargs = dict(direct_interface=False, test_requirement=True, test_unicode=True) def test_integration_no_requirement(self): self._run(private_token=None, **self.default_kwargs) diff --git a/test/test_common.py b/test/test_common.py new file mode 100644 index 0000000000000000000000000000000000000000..742c6334bcde2f4ac20eb9b788c4068107b0b22a --- /dev/null +++ b/test/test_common.py @@ -0,0 +1,16 @@ +""" For code shared between test_utils.py and check.py. Not sure this is the +best place - but check needs to not depend on test_utils so run_client_tests +can execute without webob dependency. +""" +import json + + +def write_json_config(has_temp_directory, data, name="config.json"): + try: + temp_directory = has_temp_directory.temp_directory + except AttributeError: + temp_directory = has_temp_directory + config_file = join(temp_directory, name) + with open(config_file, "w") as f: + json.dump(data, f) + return config_file \ No newline at end of file diff --git a/test/test_utils.py b/test/test_utils.py index c3ab5ffd32dcede98c33e22521188717088b661b..197bf748cab87bc36e675d8f85c99fc5e2b0caea 100644 --- a/test/test_utils.py +++ b/test/test_utils.py @@ -1,6 +1,5 @@ from contextlib import contextmanager from stat import S_IXOTH -import json from os import pardir, stat, chmod, access, X_OK, pathsep, environ from os import makedirs from os.path import join, dirname, isfile, split @@ -28,6 +27,8 @@ from lwr.tools import ToolBox from lwr.managers.base import JobDirectory from lwr.framework import file_response +from .test_common import write_json_config + TEST_DIR = dirname(__file__) ROOT_DIR = join(TEST_DIR, pardir) @@ -51,17 +52,6 @@ def get_test_tool(): return get_test_toolbox().get_tool("tool1") -def write_json_config(has_temp_directory, data, name="config.json"): - try: - temp_directory = has_temp_directory.temp_directory - except AttributeError: - temp_directory = has_temp_directory - config_file = join(temp_directory, name) - with open(config_file, "w") as f: - json.dump(data, f) - return config_file - - class TestManager(object): def setup_temp_directory(self):