diff options
author | Mikhail Shchatko <mikhail.shchatko@mongodb.com> | 2021-09-01 15:42:40 +0300 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2021-09-02 10:36:38 +0000 |
commit | 931cf49bd86728eb8eab9e2b35ae321fa009718a (patch) | |
tree | 75f8a67043836d38681bc5b98c33201e08e22e70 /buildscripts/tests | |
parent | 21f26ebfc3397c926af673058c0d3467d5868c62 (diff) | |
download | mongo-931cf49bd86728eb8eab9e2b35ae321fa009718a.tar.gz |
SERVER-59116 Fallback to downloading from master if release branch has no successful compiles yet
Diffstat (limited to 'buildscripts/tests')
-rw-r--r-- | buildscripts/tests/resmokelib/setup_multiversion/test_setup_multiversion.py | 40 |
1 files changed, 35 insertions, 5 deletions
diff --git a/buildscripts/tests/resmokelib/setup_multiversion/test_setup_multiversion.py b/buildscripts/tests/resmokelib/setup_multiversion/test_setup_multiversion.py index 17a3af9edd3..32981fce51f 100644 --- a/buildscripts/tests/resmokelib/setup_multiversion/test_setup_multiversion.py +++ b/buildscripts/tests/resmokelib/setup_multiversion/test_setup_multiversion.py @@ -110,11 +110,7 @@ class TestSetupMultiversionGetLatestUrls(TestSetupMultiversionBase): mock_expected_version.build_variants_map = {self.buildvariant_name: "build_id"} evg_versions = [mock_version for _ in range(3)] evg_versions.append(mock_expected_version) - evg_versions = iter(evg_versions) - mock_versions_by_project.return_value = evg_versions - print(self.setup_multiversion.evg_api) - print(self.buildvariant_name) - print(mock_version) + mock_versions_by_project.return_value = iter(evg_versions) mock_get_compile_artifact_urls.side_effect = lambda evg_api, evg_version, buildvariant_name, ignore_failed_push: { (self.setup_multiversion.evg_api, mock_version, self.buildvariant_name, False): {}, (self.setup_multiversion.evg_api, mock_expected_version, self.buildvariant_name, False): @@ -141,6 +137,40 @@ class TestSetupMultiversionGetLatestUrls(TestSetupMultiversionBase): urls = self.setup_multiversion.get_latest_urls("4.4") self.assertEqual(urls, expected_urls) + @patch("evergreen.version.Version") + @patch("evergreen.version.Version") + @patch("evergreen.api.EvergreenApi.versions_by_project") + @patch("buildscripts.resmokelib.utils.evergreen_conn.get_compile_artifact_urls") + def test_start_from_revision(self, mock_get_compile_artifact_urls, mock_versions_by_project, + mock_version, mock_expected_version): + start_from_revision = "90f767adbb1901d007ee4dd8714f53402d893669" + unexpected_urls = { + "Binaries": + "https://mciuploads.s3.amazonaws.com/project/build_variant/revision/binaries/unexpected.tgz" + } + expected_urls = { + "Binaries": + "https://mciuploads.s3.amazonaws.com/project/build_variant/90f767adbb1901d007ee4dd8714f53402d893669/binaries/expected.tgz" + } + + mock_version.build_variants_map = {self.buildvariant_name: "build_id"} + mock_expected_version.build_variants_map = {self.buildvariant_name: "build_id"} + mock_expected_version.revision = start_from_revision + + evg_versions = [mock_version for _ in range(3)] + evg_versions.append(mock_expected_version) + mock_versions_by_project.return_value = iter(evg_versions) + + mock_get_compile_artifact_urls.side_effect = lambda evg_api, evg_version, buildvariant_name, ignore_failed_push: { + (self.setup_multiversion.evg_api, mock_version, self.buildvariant_name, False): + unexpected_urls, + (self.setup_multiversion.evg_api, mock_expected_version, self.buildvariant_name, False): + expected_urls, + }[evg_api, evg_version, buildvariant_name, ignore_failed_push] + + urls = self.setup_multiversion.get_latest_urls("master", start_from_revision) + self.assertEqual(urls, expected_urls) + class TestSetupMultiversionGetUrls(TestSetupMultiversionBase): @patch("evergreen.version.Version") |