コード例 #1
0
ファイル: test_evergreen.py プロジェクト: ShaneHarvey/mongo
 def test_get_evergreen_api_bad_kwargs(self):
     api_server = "https://myserver.com"
     api_headers = {"header1": "val1", "header2": "val2"}
     with patch(EVERGREEN + ".get_evergreen_server", return_value=api_server),\
          patch(EVERGREEN + ".get_evergreen_headers", return_value=api_headers):
         with self.assertRaises(TypeError):
             evergreen.get_evergreen_apiv2(kw1="kw1")
コード例 #2
0
ファイル: test_evergreen.py プロジェクト: stjordanis/mongo
 def test_get_evergreen_api_bad_kwargs(self):
     api_server = "https://myserver.com"
     api_headers = {"header1": "val1", "header2": "val2"}
     with patch(EVERGREEN + ".get_evergreen_server", return_value=api_server),\
          patch(EVERGREEN + ".get_evergreen_headers", return_value=api_headers):
         with self.assertRaises(TypeError):
             evergreen.get_evergreen_apiv2(kw1="kw1")
コード例 #3
0
ファイル: test_evergreen.py プロジェクト: ShaneHarvey/mongo
 def test_get_evergreen_api_kwargs_override(self):
     api_server = "https://myserver.com"
     api_headers = {"header1": "val1", "header2": "val2"}
     api_server_override = "https://myserver_override.com"
     api_headers_override = {"header1_override": "val1", "header2_override": "val2"}
     num_retries = 99
     with patch(EVERGREEN + ".get_evergreen_server", return_value=api_server),\
          patch(EVERGREEN + ".get_evergreen_headers", return_value=api_headers):
         with self.assertRaises(TypeError):
             evergreen.get_evergreen_apiv2(api_server=api_server_override,
                                           api_headers=api_headers_override,
                                           num_retries=num_retries)
コード例 #4
0
ファイル: test_evergreen.py プロジェクト: stjordanis/mongo
 def test_get_evergreen_api_kwargs_override(self):
     api_server = "https://myserver.com"
     api_headers = {"header1": "val1", "header2": "val2"}
     api_server_override = "https://myserver_override.com"
     api_headers_override = {
         "header1_override": "val1",
         "header2_override": "val2"
     }
     num_retries = 99
     with patch(EVERGREEN + ".get_evergreen_server", return_value=api_server),\
          patch(EVERGREEN + ".get_evergreen_headers", return_value=api_headers):
         with self.assertRaises(TypeError):
             evergreen.get_evergreen_apiv2(api_server=api_server_override,
                                           api_headers=api_headers_override,
                                           num_retries=num_retries)
コード例 #5
0
ファイル: test_evergreen.py プロジェクト: stjordanis/mongo
 def test_get_evergreen_api(self):
     api_server = "https://myserver.com"
     api_headers = {"header1": "val1", "header2": "val2"}
     with patch(EVERGREEN + ".get_evergreen_server", return_value=api_server),\
          patch(EVERGREEN + ".get_evergreen_headers", return_value=api_headers):
         evg_api = evergreen.get_evergreen_apiv2()
         self.assertEqual(api_server, evg_api.api_server)
         self.assertDictEqual(api_headers, evg_api.api_headers)
コード例 #6
0
ファイル: test_evergreen.py プロジェクト: ShaneHarvey/mongo
 def test_get_evergreen_api(self):
     api_server = "https://myserver.com"
     api_headers = {"header1": "val1", "header2": "val2"}
     with patch(EVERGREEN + ".get_evergreen_server", return_value=api_server),\
          patch(EVERGREEN + ".get_evergreen_headers", return_value=api_headers):
         evg_api = evergreen.get_evergreen_apiv2()
         self.assertEqual(api_server, evg_api.api_server)
         self.assertDictEqual(api_headers, evg_api.api_headers)
コード例 #7
0
    def __init__(  # pylint: disable=too-many-arguments
            self, project=DEFAULT_PROJECT, tests=None, tasks=None, variants=None, distros=None,
            retries=evergreen.EvergreenApiV2.DEFAULT_RETRIES):
        """Initialize the TestHistory instance with the list of tests, tasks, variants, and distros.

        The list of tests specified are augmented to ensure that failures on both POSIX and Windows
        platforms are returned by the Evergreen API.
        """

        tests = tests if tests is not None else []
        tests = [test for test_file in tests for test in self._denormalize_test_file(test_file)]

        self._tests = tests
        self._tasks = tasks if tasks is not None else []
        self._variants = variants if variants is not None else []
        self._distros = distros if distros is not None else []
        self._project = project

        self.evg_api = evergreen.get_evergreen_apiv2(num_retries=retries)
コード例 #8
0
        with open(os.path.join(CONFIG_DIR, task + ".json"), "w") as file_handle:
            file_handle.write(evg_config.to_json())

    def main(self):
        """Generate resmoke suites that run within a specified target execution time."""

        options = self.parse_commandline()
        self.options = options

        if options.verbose:
            enable_logging()

        LOGGER.debug("Starting execution for options %s", options)
        end_date = datetime.datetime.utcnow().replace(microsecond=0)
        start_date = end_date - datetime.timedelta(days=options.duration_days)

        prepare_directory_for_suite(CONFIG_DIR)

        suites = self.calculate_suites(start_date, end_date)

        LOGGER.debug("Creating %d suites for %s", len(suites), self.config_options.task)

        render_suite(suites, self.config_options.suite)
        render_misc_suite(self.test_list, self.config_options.suite)

        self.write_evergreen_configuration(suites, self.config_options.task)


if __name__ == "__main__":
    Main(evergreen.get_evergreen_apiv2()).main()
コード例 #9
0
        with open(os.path.join(CONFIG_DIR, task + ".json"), "w") as file_handle:
            file_handle.write(evg_config.to_json())

    def main(self):
        """Generate resmoke suites that run within a specified target execution time."""

        options = self.parse_commandline()
        self.options = options

        if options.verbose:
            enable_logging()

        LOGGER.debug("Starting execution for options %s", options)
        end_date = datetime.datetime.utcnow().replace(microsecond=0)
        start_date = end_date - datetime.timedelta(days=options.duration_days)

        prepare_directory_for_suite(CONFIG_DIR)

        suites = self.calculate_suites(start_date, end_date)

        LOGGER.debug("Creating %d suites for %s", len(suites), self.config_options.task)

        render_suite(suites, self.config_options.suite)
        render_misc_suite(self.test_list, self.config_options.suite)

        self.write_evergreen_configuration(suites, self.config_options.task)


if __name__ == "__main__":
    Main(evergreen.get_evergreen_apiv2()).main()