toil.test.wdl.wdltoil_test

Attributes

logger

WDL_CONFORMANCE_TEST_REPO

WDL_CONFORMANCE_TEST_COMMIT

WDL_CONFORMANCE_TESTS_UNSUPPORTED_BY_TOIL

WDL_UNIT_TESTS_UNSUPPORTED_BY_TOIL

Classes

BaseWDLTest

Base test class for WDL tests.

WDLConformanceTests

WDL conformance tests for Toil.

WDLTests

Tests for Toil's MiniWDL-based implementation.

WDLToilBenchTests

Tests for Toil's MiniWDL-based implementation that don't run workflows.

Module Contents

toil.test.wdl.wdltoil_test.logger
class toil.test.wdl.wdltoil_test.BaseWDLTest(methodName='runTest')

Bases: toil.test.ToilTest

Base test class for WDL tests.

setUp()

Runs anew before each test to create farm fresh temp dirs.

Return type:

None

tearDown()

Hook method for deconstructing the test fixture after testing it.

Return type:

None

toil.test.wdl.wdltoil_test.WDL_CONFORMANCE_TEST_REPO = 'https://github.com/DataBiosphere/wdl-conformance-tests.git'
toil.test.wdl.wdltoil_test.WDL_CONFORMANCE_TEST_COMMIT = 'baf44bcc7e6f6927540adf77d91b26a5558ae4b7'
toil.test.wdl.wdltoil_test.WDL_CONFORMANCE_TESTS_UNSUPPORTED_BY_TOIL = [16, 21, 64, 77]
toil.test.wdl.wdltoil_test.WDL_UNIT_TESTS_UNSUPPORTED_BY_TOIL = [14, 19, 52, 58, 59, 66, 67, 68, 69, 87, 97, 105, 107, 108, 109, 110, 120, 131, 134, 144]
class toil.test.wdl.wdltoil_test.WDLConformanceTests(methodName='runTest')

Bases: BaseWDLTest

WDL conformance tests for Toil.

wdl_dir = 'wdl-conformance-tests'
classmethod setUpClass()

Hook method for setting up class fixture before running tests in the class.

Return type:

None

check(p)

Make sure a call completed or explain why it failed.

Parameters:

p (subprocess.CompletedProcess)

Return type:

None

test_unit_tests_v11()
test_conformance_tests_v10()
test_conformance_tests_v11()
test_conformance_tests_integration()
classmethod tearDownClass()

Hook method for deconstructing the class fixture after running all tests in the class.

Return type:

None

class toil.test.wdl.wdltoil_test.WDLTests(methodName='runTest')

Bases: BaseWDLTest

Tests for Toil’s MiniWDL-based implementation.

classmethod setUpClass()

Runs once for all tests.

Return type:

None

test_MD5sum()

Test if Toil produces the same outputs as known good outputs for WDL’s GATK tutorial #1.

test_url_to_file()

Test if web URL strings can be coerced to usable Files.

test_wait()

Test if Bash “wait” works in WDL scripts.

test_all_call_outputs()

Test if Toil can collect all call outputs from a workflow that doesn’t expose them.

test_croo_detection()

Test if Toil can detect and do something sensible with Cromwell Output Organizer workflows.

test_caching()

Test if Toil can cache task runs.

test_url_to_optional_file()

Test if missing and error-producing URLs are handled correctly for optional File? values.

test_missing_output_directory()

Test if Toil can run a WDL workflow into a new directory.

test_miniwdl_self_test(extra_args=None)

Test if the MiniWDL self test runs and produces the expected output.

Parameters:

extra_args (Optional[list[str]])

Return type:

None

test_miniwdl_self_test_by_reference()

Test if the MiniWDL self test works when passing input files by URL reference.

Return type:

None

test_dockstore_trs(extra_args=None)
Parameters:

extra_args (Optional[list[str]])

Return type:

None

test_giraffe_deepvariant()

Test if Giraffe and GPU DeepVariant run. This could take 25 minutes.

test_giraffe()

Test if Giraffe runs. This could take 12 minutes. Also we scale it down but it still demands lots of memory.

test_gs_uri()

Test if Toil can access Google Storage URIs.

class toil.test.wdl.wdltoil_test.WDLToilBenchTests(methodName='runTest')

Bases: toil.test.ToilTest

Tests for Toil’s MiniWDL-based implementation that don’t run workflows.

test_coalesce()

Test if WDLSectionJob can coalesce WDL decls.

White box test; will need to be changed or removed if the WDL interpreter changes.

make_string_expr(to_parse)

Parse pseudo-WDL for testing whitespace removal.

Parameters:

to_parse (str)

Return type:

WDL.Expr.String

test_remove_common_leading_whitespace()

Make sure leading whitespace removal works properly.

test_choose_human_readable_directory()

Test to make sure that we pick sensible but non-colliding directories to put files in.

test_uri_packing()

Test to make sure Toil URI packing brings through the required information.

test_disk_parse()

Test to make sure the disk parsing is correct