diff options
author | Lydia Stepanek <lydia.stepanek@mongodb.com> | 2020-02-28 16:29:08 -0500 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-02-28 22:43:39 +0000 |
commit | 3c5a2527afba733f4b358d28d0128033ba56d7cd (patch) | |
tree | f990ecd8d9d9375d47ec82e13cd381c1afa4cde5 | |
parent | 90d3ce821b6faa28c68b515bfacb4ce63388759d (diff) | |
download | mongo-3c5a2527afba733f4b358d28d0128033ba56d7cd.tar.gz |
Revert "SERVER-45958 End to end tests for selected_tests"
This reverts commit cc7df7d69ff471a1b4e3affcc4d2612577e43ae8.
-rw-r--r-- | buildscripts/selected_tests.py | 2 | ||||
-rw-r--r-- | buildscripts/tests/test_selected_tests.py | 121 |
2 files changed, 24 insertions, 99 deletions
diff --git a/buildscripts/selected_tests.py b/buildscripts/selected_tests.py index d35e9a75e85..f9464e0e30f 100644 --- a/buildscripts/selected_tests.py +++ b/buildscripts/selected_tests.py @@ -97,7 +97,7 @@ class SelectedTestsConfigOptions(ConfigOptions): :param origin_variant_expansions: Expansions of the origin build variant. :param selected_tests_variant_expansions: Expansions of the selected-tests variant. - :param overwrites: Dict of configuration values to overwrite those listed in expansions. + :param overwrites: Dict of configuration values to overwrite those listed in filepath. :param required_keys: Set of keys required by this config. :param defaults: Dict of default values for keys. :param formats: Dict with functions to format values before returning. diff --git a/buildscripts/tests/test_selected_tests.py b/buildscripts/tests/test_selected_tests.py index f22372ada9e..d8a4e0bc349 100644 --- a/buildscripts/tests/test_selected_tests.py +++ b/buildscripts/tests/test_selected_tests.py @@ -7,8 +7,6 @@ from shrub.config import Configuration # pylint: disable=wrong-import-position import buildscripts.ciconfig.evergreen as _evergreen -from buildscripts.evergreen_generate_resmoke_tasks import Suite -from buildscripts.tests.test_burn_in_tests import get_evergreen_config from buildscripts import selected_tests as under_test # pylint: disable=missing-docstring,invalid-name,unused-argument,protected-access @@ -39,102 +37,6 @@ def tests_by_task_stub(): } -class TestAcceptance(unittest.TestCase): - """A suite of Acceptance tests for selected_tests.""" - - def setUp(self): - Suite._current_index = 0 - - @staticmethod - def _mock_evg_api(): - evg_api_mock = MagicMock() - task_mock = evg_api_mock.task_by_id.return_value - task_mock.execution = 0 - return evg_api_mock - - def test_when_no_mappings_are_found_for_changed_files(self): - evg_api_mock = self._mock_evg_api() - evg_config = get_evergreen_config("etc/evergreen.yml") - selected_tests_service_mock = MagicMock() - selected_tests_service_mock.get_test_mappings.return_value = [] - selected_tests_variant_expansions = { - "task_name": "selected_tests_gen", "build_variant": "selected-tests", - "build_id": "my_build_id", "project": "mongodb-mongo-master" - } - changed_files = ["src/file1.cpp"] - origin_build_variants = ["enterprise-rhel-62-64-bit"] - - config_dict = under_test.run(evg_api_mock, evg_config, selected_tests_service_mock, - selected_tests_variant_expansions, changed_files, - origin_build_variants) - - self.assertEqual(config_dict["selected_tests_config.json"], "{}") - - def test_when_test_mappings_are_found_for_changed_files(self): - evg_api_mock = self._mock_evg_api() - evg_config = get_evergreen_config("etc/evergreen.yml") - selected_tests_service_mock = MagicMock() - selected_tests_service_mock.get_test_mappings.return_value = [ - { - "source_file": "src/file1.cpp", - "test_files": [{"name": "jstests/auth/auth1.js"}], - }, - ] - selected_tests_variant_expansions = { - "task_name": "selected_tests_gen", "build_variant": "selected-tests", - "build_id": "my_build_id", "project": "mongodb-mongo-master" - } - changed_files = ["src/file1.cpp"] - origin_build_variants = ["enterprise-rhel-62-64-bit"] - - config_dict = under_test.run(evg_api_mock, evg_config, selected_tests_service_mock, - selected_tests_variant_expansions, changed_files, - origin_build_variants) - - self.assertIn("selected_tests_config.json", config_dict) - # jstests/auth/auth1.js belongs to two suites, auth and auth_audit, each of which has - # fallback_num_sub_suites = 4 in their resmoke args, resulting in 4 subtasks being generated - # for each - self.assertEqual(len(config_dict), 9) - self.assertEqual( - sorted(config_dict.keys()), [ - "auth_0.yml", "auth_1.yml", "auth_2.yml", "auth_3.yml", "auth_audit_4.yml", - "auth_audit_5.yml", "auth_audit_6.yml", "auth_audit_7.yml", - "selected_tests_config.json" - ]) - - def test_when_task_mappings_are_found_for_changed_files(self): - evg_api_mock = self._mock_evg_api() - evg_config = get_evergreen_config("etc/evergreen.yml") - selected_tests_service_mock = MagicMock() - selected_tests_service_mock.get_task_mappings.return_value = [ - { - "source_file": "src/file1.cpp", - "tasks": [{"name": "auth"}], - }, - ] - selected_tests_variant_expansions = { - "task_name": "selected_tests_gen", "build_variant": "selected-tests", - "build_id": "my_build_id", "project": "mongodb-mongo-master" - } - changed_files = ["src/file1.cpp"] - origin_build_variants = ["enterprise-rhel-62-64-bit"] - - config_dict = under_test.run(evg_api_mock, evg_config, selected_tests_service_mock, - selected_tests_variant_expansions, changed_files, - origin_build_variants) - - self.assertIn("selected_tests_config.json", config_dict) - # the auth task's generator task, auth_gen, has fallback_num_sub_suites = 4 in - # its resmoke args, resulting in 4 subtasks being generated, plus a _misc task - self.assertEqual(len(config_dict), 6) - self.assertEqual( - sorted(config_dict.keys()), [ - "auth_0.yml", "auth_1.yml", "auth_2.yml", "auth_3.yml", "auth_misc.yml", - "selected_tests_config.json" - ]) - - class TestSelectedTestsConfigOptions(unittest.TestCase): def test_overwrites_overwrite_filepath_config(self): origin_variant_expansions = {"key1": 0} @@ -561,3 +463,26 @@ class TestGetTaskConfigs(unittest.TestCase): changed_files) self.assertEqual(task_configs["task_config_key"], "task_config_value_2") + + +class TestRun(unittest.TestCase): + @patch(ns("SelectedTestsConfigOptions")) + @patch(ns("_get_task_configs")) + @patch(ns("_update_config_with_task")) + def test_run(self, update_config_with_task_mock, get_task_configs_mock, + selected_tests_config_options): + get_task_configs_mock.return_value = {"task_config_key": "task_config_value_1"} + + def update_config_with_task(evg_api, shrub_config, config_options, + config_dict_of_suites_and_tasks): + config_dict_of_suites_and_tasks["new_config_key"] = "new_config_values" + shrub_config.task("my_fake_task") + + update_config_with_task_mock.side_effect = update_config_with_task + changed_files = {"src/file1.cpp", "src/file2.js"} + + config_dict_of_suites_and_tasks = under_test.run(MagicMock(), MagicMock(), MagicMock(), {}, + changed_files, ["variant_1", "variant_2"]) + + self.assertEqual(config_dict_of_suites_and_tasks["new_config_key"], "new_config_values") + self.assertIn("my_fake_task", config_dict_of_suites_and_tasks["selected_tests_config.json"]) |