From de7092d56b5232c29b6b10e6d3df1098e2ee8f8c Mon Sep 17 00:00:00 2001 From: Takafumi Arakaki Date: Tue, 12 Mar 2013 11:24:48 +0100 Subject: [PATCH] Fix: --thirdparty was not considered --- test/conftest.py | 10 ++++++---- test/run.py | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/test/conftest.py b/test/conftest.py index 4cb2f4e5..87a7fa9f 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -25,7 +25,7 @@ def pytest_addoption(parser): "For example: -T generators.py:10,13,19. " "Note that you can use -m to specify the test case by id.")) parser.addoption( - "--thirdparty", + "--thirdparty", action='store_true', help="Include integration tests that requires third party modules.") @@ -53,9 +53,11 @@ def pytest_generate_tests(metafunc): if 'case' in metafunc.fixturenames: base_dir = metafunc.config.option.integration_case_dir thirdparty = metafunc.config.option.thirdparty - metafunc.parametrize( - 'case', - run.collect_dir_tests(base_dir, test_files, thirdparty)) + cases = list(run.collect_dir_tests(base_dir, test_files)) + if thirdparty: + cases.extend(run.collect_dir_tests( + os.path.join(base_dir, 'thirdparty'), test_files)) + metafunc.parametrize('case', cases) if 'refactor_case' in metafunc.fixturenames: base_dir = metafunc.config.option.refactor_case_dir metafunc.parametrize( diff --git a/test/run.py b/test/run.py index e37abab2..16d08f8a 100755 --- a/test/run.py +++ b/test/run.py @@ -171,7 +171,7 @@ def collect_file_tests(lines, lines_to_execute): correct = None -def collect_dir_tests(base_dir, test_files, thirdparty=False): +def collect_dir_tests(base_dir, test_files): for f_name in os.listdir(base_dir): files_to_execute = [a for a in test_files.items() if a[0] in f_name] lines_to_execute = reduce(lambda x, y: x + y[1], files_to_execute, [])