Exemplo n.º 1
0
    def test_fuzzer_tasks_are_generated(self):
        mock_params = build_mock_fuzzer_params()
        fuzzer_service = under_test.FuzzerGenTaskService()

        fuzzer_task = fuzzer_service.generate_tasks(mock_params)

        self.assertEqual(fuzzer_task.task_name, mock_params.task_name)
        self.assertEqual(len(fuzzer_task.sub_tasks), mock_params.num_tasks)
Exemplo n.º 2
0
    def test_sub_task_should_be_built_correct(self):
        mock_params = build_mock_fuzzer_params(npm_command="jstestfuzz")
        fuzzer_service = under_test.FuzzerGenTaskService()

        sub_task = fuzzer_service.build_fuzzer_sub_task(3, mock_params)

        self.assertEqual(sub_task.name, f"{mock_params.task_name}_3_{mock_params.variant}")
        self.assertEqual(len(sub_task.commands), 7)
Exemplo n.º 3
0
    def test_sub_task_multi_version_tasks_should_be_built_correct(self):
        mock_params = build_mock_fuzzer_params(multi_version="multiversion value")
        fuzzer_service = under_test.FuzzerGenTaskService()

        sub_task = fuzzer_service.build_fuzzer_sub_task(3, mock_params, "")

        self.assertEqual(sub_task.name, f"{mock_params.task_name}_3_{mock_params.variant}")
        self.assertEqual(len(sub_task.commands), 6)
Exemplo n.º 4
0
    def test_fuzzers_for_multiversion_are_generated(self):
        version_list = ["version0", "version1"]
        mock_params = build_mock_fuzzer_params(version_config=version_list)
        fuzzer_service = under_test.FuzzerGenTaskService()

        fuzzer_task = fuzzer_service.generate_tasks(mock_params)

        self.assertEqual(fuzzer_task.task_name, mock_params.task_name)
        self.assertEqual(len(fuzzer_task.sub_tasks), mock_params.num_tasks * len(version_list))
Exemplo n.º 5
0
    def test_sub_task_should_include_timeout_info(self):
        mock_params = build_mock_fuzzer_params()
        fuzzer_service = under_test.FuzzerGenTaskService()

        sub_task = fuzzer_service.build_fuzzer_sub_task(3, mock_params)

        cmd = sub_task.commands[0].as_dict()

        self.assertEqual(cmd["command"], "timeout.update")
        self.assertEqual(cmd["params"]["timeout_secs"], mock_params.timeout_secs)
Exemplo n.º 6
0
    def test_sub_task_should_be_built_correct_no_minimize_command(self):
        mock_params = build_mock_fuzzer_params(npm_command="jstestfuzz")
        fuzzer_service = under_test.FuzzerGenTaskService()

        sub_task = fuzzer_service.build_fuzzer_sub_task(3, mock_params)

        self.assertEqual(sub_task.name,
                         f"{mock_params.task_name}_3_{mock_params.variant}")
        self.assertEqual(len(sub_task.commands), 6)
        self.assertNotEqual(sub_task.commands[-1].as_dict()["func"],
                            "minimize jstestfuzz")