def test_cmdline_value_is_used(self): cmdline_mock = mock.Mock cmdline_mock.option = "cmdline value" value = read_config.get_config_value("option", cmdline_mock, {"option": "value 0"}, default="default", required=True) self.assertEqual("cmdline value", value)
def get_config_options(cmd_line_options, config_file): """ Get the configuration to use for generated tests. Command line options override config file options. :param cmd_line_options: Command line options specified. :param config_file: config file to use. :return: ConfigOptions to use. """ config_file_data = read_config.read_config_file(config_file) fallback_num_sub_suites = read_config.get_config_value( "fallback_num_sub_suites", cmd_line_options, config_file_data, required=True) max_sub_suites = read_config.get_config_value("max_sub_suites", cmd_line_options, config_file_data) project = read_config.get_config_value("project", cmd_line_options, config_file_data, required=True) resmoke_args = read_config.get_config_value("resmoke_args", cmd_line_options, config_file_data, default="") resmoke_jobs_max = read_config.get_config_value("resmoke_jobs_max", cmd_line_options, config_file_data) run_multiple_jobs = read_config.get_config_value("run_multiple_jobs", cmd_line_options, config_file_data, default="true") task = read_config.get_config_value("task", cmd_line_options, config_file_data, required=True) suite = read_config.get_config_value("suite", cmd_line_options, config_file_data, default=task) variant = read_config.get_config_value("build_variant", cmd_line_options, config_file_data, required=True) return ConfigOptions(fallback_num_sub_suites, max_sub_suites, project, resmoke_args, resmoke_jobs_max, run_multiple_jobs, suite, task, variant)
def get_config_options(cmd_line_options, config_file): """ Get the configuration to use for generated tests. Command line options override config file options. :param cmd_line_options: Command line options specified. :param config_file: config file to use. :return: ConfigOptions to use. """ # pylint: disable=too-many-locals config_file_data = read_config.read_config_file(config_file) fallback_num_sub_suites = int( read_config.get_config_value("fallback_num_sub_suites", cmd_line_options, config_file_data, required=True)) max_sub_suites = read_config.get_config_value("max_sub_suites", cmd_line_options, config_file_data) project = read_config.get_config_value("project", cmd_line_options, config_file_data, required=True) resmoke_args = read_config.get_config_value("resmoke_args", cmd_line_options, config_file_data, default="") resmoke_jobs_max = read_config.get_config_value("resmoke_jobs_max", cmd_line_options, config_file_data) target_resmoke_time = int( read_config.get_config_value("target_resmoke_time", cmd_line_options, config_file_data, default=60)) run_multiple_jobs = read_config.get_config_value("run_multiple_jobs", cmd_line_options, config_file_data, default="true") task = read_config.get_config_value("task", cmd_line_options, config_file_data, required=True) suite = read_config.get_config_value("suite", cmd_line_options, config_file_data, default=task) variant = read_config.get_config_value("build_variant", cmd_line_options, config_file_data, required=True) use_large_distro = read_config.get_config_value("use_large_distro", cmd_line_options, config_file_data, default=False) large_distro_name = read_config.get_config_value("large_distro_name", cmd_line_options, config_file_data) use_multiversion = read_config.get_config_value("use_multiversion", cmd_line_options, config_file_data) is_patch = read_config.get_config_value("is_patch", cmd_line_options, config_file_data) if is_patch: is_patch = strtobool(is_patch) depends_on = split_if_exists( read_config.get_config_value("depends_on", cmd_line_options, config_file_data)) build_id = read_config.get_config_value("build_id", cmd_line_options, config_file_data) repeat_suites = int( read_config.get_config_value("resmoke_repeat_suites", cmd_line_options, config_file_data, default=1)) return ConfigOptions(build_id, depends_on, fallback_num_sub_suites, is_patch, large_distro_name, max_sub_suites, project, repeat_suites, resmoke_args, resmoke_jobs_max, run_multiple_jobs, suite, target_resmoke_time, task, use_large_distro, use_multiversion, variant)
def get_config_options(cmd_line_options, config_file): """ Get the configuration to use for generated tests. Command line options override config file options. :param cmd_line_options: Command line options specified. :param config_file: config file to use. :return: ConfigOptions to use. """ # pylint: disable=too-many-locals config_file_data = read_config.read_config_file(config_file) fallback_num_sub_suites = read_config.get_config_value( "fallback_num_sub_suites", cmd_line_options, config_file_data, required=True) max_sub_suites = read_config.get_config_value("max_sub_suites", cmd_line_options, config_file_data) project = read_config.get_config_value("project", cmd_line_options, config_file_data, required=True) resmoke_args = read_config.get_config_value("resmoke_args", cmd_line_options, config_file_data, default="") resmoke_jobs_max = read_config.get_config_value("resmoke_jobs_max", cmd_line_options, config_file_data) target_resmoke_time = int( read_config.get_config_value("target_resmoke_time", cmd_line_options, config_file_data, default=60)) run_multiple_jobs = read_config.get_config_value("run_multiple_jobs", cmd_line_options, config_file_data, default="true") task = read_config.get_config_value("task", cmd_line_options, config_file_data, required=True) suite = read_config.get_config_value("suite", cmd_line_options, config_file_data, default=task) variant = read_config.get_config_value("build_variant", cmd_line_options, config_file_data, required=True) use_large_distro = read_config.get_config_value("use_large_distro", cmd_line_options, config_file_data, default=False) large_distro_name = read_config.get_config_value("large_distro_name", cmd_line_options, config_file_data) use_multiversion = read_config.get_config_value("use_multiversion", cmd_line_options, config_file_data) is_patch = read_config.get_config_value("is_patch", cmd_line_options, config_file_data) if is_patch: is_patch = strtobool(is_patch) depends_on = split_if_exists( read_config.get_config_value("depends_on", cmd_line_options, config_file_data)) build_id = read_config.get_config_value("build_id", cmd_line_options, config_file_data) return ConfigOptions(fallback_num_sub_suites, max_sub_suites, project, resmoke_args, resmoke_jobs_max, target_resmoke_time, run_multiple_jobs, suite, task, variant, use_large_distro, large_distro_name, use_multiversion, is_patch, depends_on, build_id)
def test_config_file_value_is_used(self): value = read_config.get_config_value("option", {}, {"option": "value 0"}, default="default", required=True) self.assertEqual("value 0", value)
def test_default_can_be_specified(self): value = read_config.get_config_value("option", {}, {}, default="default") self.assertEqual("default", value)
def test_undefined_values_return_none(self): value = read_config.get_config_value("unknown", {}, {}) self.assertEqual(None, value)
def _get_config_options(cmd_line_options, config_file): # pylint: disable=too-many-locals """ Get the configuration to use. Command line options override config files options. :param cmd_line_options: Command line options specified. :param config_file: config file to use. :return: ConfigOptions to use. """ config_file_data = read_config.read_config_file(config_file) num_files = int( read_config.get_config_value("num_files", cmd_line_options, config_file_data, required=True)) num_tasks = int( read_config.get_config_value("num_tasks", cmd_line_options, config_file_data, required=True)) resmoke_args = read_config.get_config_value("resmoke_args", cmd_line_options, config_file_data, default="") npm_command = read_config.get_config_value("npm_command", cmd_line_options, config_file_data, default="jstestfuzz") jstestfuzz_vars = read_config.get_config_value("jstestfuzz_vars", cmd_line_options, config_file_data, default="") name = read_config.get_config_value("name", cmd_line_options, config_file_data, required=True) variant = read_config.get_config_value("build_variant", cmd_line_options, config_file_data, required=True) continue_on_failure = read_config.get_config_value("continue_on_failure", cmd_line_options, config_file_data, default="false") resmoke_jobs_max = read_config.get_config_value("resmoke_jobs_max", cmd_line_options, config_file_data, default="0") should_shuffle = read_config.get_config_value("should_shuffle", cmd_line_options, config_file_data, default="false") timeout_secs = read_config.get_config_value("timeout_secs", cmd_line_options, config_file_data, default="1800") use_multiversion = read_config.get_config_value("task_path_suffix", cmd_line_options, config_file_data, default=False) return ConfigOptions(num_files, num_tasks, resmoke_args, npm_command, jstestfuzz_vars, name, variant, continue_on_failure, resmoke_jobs_max, should_shuffle, timeout_secs, use_multiversion)
def get_config_options(cmd_line_options, config_file): """ Get the configuration to use for generated tests. Command line options override config file options. :param cmd_line_options: Command line options specified. :param config_file: config file to use. :return: ConfigOptions to use. """ config_file_data = read_config.read_config_file(config_file) fallback_num_sub_suites = read_config.get_config_value( "fallback_num_sub_suites", cmd_line_options, config_file_data, required=True) max_sub_suites = read_config.get_config_value("max_sub_suites", cmd_line_options, config_file_data) project = read_config.get_config_value("project", cmd_line_options, config_file_data, required=True) resmoke_args = read_config.get_config_value("resmoke_args", cmd_line_options, config_file_data, default="") resmoke_jobs_max = read_config.get_config_value("resmoke_jobs_max", cmd_line_options, config_file_data) target_resmoke_time = int( read_config.get_config_value("target_resmoke_time", cmd_line_options, config_file_data, default=60)) run_multiple_jobs = read_config.get_config_value("run_multiple_jobs", cmd_line_options, config_file_data, default="true") task = read_config.get_config_value("task", cmd_line_options, config_file_data, required=True) suite = read_config.get_config_value("suite", cmd_line_options, config_file_data, default=task) variant = read_config.get_config_value("build_variant", cmd_line_options, config_file_data, required=True) use_large_distro = read_config.get_config_value("use_large_distro", cmd_line_options, config_file_data, default=False) large_distro_name = read_config.get_config_value("large_distro_name", cmd_line_options, config_file_data) return ConfigOptions(fallback_num_sub_suites, max_sub_suites, project, resmoke_args, resmoke_jobs_max, target_resmoke_time, run_multiple_jobs, suite, task, variant, use_large_distro, large_distro_name)