Example #1
0
    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)
Example #2
0
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)
Example #5
0
 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)
Example #6
0
    def test_default_can_be_specified(self):
        value = read_config.get_config_value("option", {}, {},
                                             default="default")

        self.assertEqual("default", value)
Example #7
0
    def test_undefined_values_return_none(self):
        value = read_config.get_config_value("unknown", {}, {})

        self.assertEqual(None, value)
Example #8
0
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)
Example #9
0
 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)
Example #10
0
    def test_default_can_be_specified(self):
        value = read_config.get_config_value("option", {}, {}, default="default")

        self.assertEqual("default", value)
Example #11
0
    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)