예제 #1
0
    def test__run_scenario_constantly_aborted(self):
        runner = constant.ConstantForDurationScenarioRunner(None, self.config)

        runner.abort()
        runner._run_scenario(fakes.FakeScenario, "do_it", self.context,
                             self.args)
        self.assertEqual(len(runner.result_queue), 0)
예제 #2
0
    def test_run_scenario_constantly_for_duration(self):
        runner = constant.ConstantForDurationScenarioRunner(None, self.config)

        runner._run_scenario(fakes.FakeScenario, "do_it", self.context,
                             self.args)
        # NOTE(mmorais): when duration is 0, scenario executes exactly 1 time
        expected_times = 1
        self.assertEqual(len(runner.result_queue), expected_times)
        for result in runner.result_queue:
            self.assertIsNotNone(base.ScenarioRunnerResult(result))
예제 #3
0
    def test_run_scenario_constantly_for_duration_timeout(self):
        runner = constant.ConstantForDurationScenarioRunner(
                        None, [self.context["admin"]["endpoint"]], self.config)

        result = runner._run_scenario(fakes.FakeScenario,
                                      "raise_timeout", self.context, self.args)
        # NOTE(mmorais): when duration is 0, scenario executes exactly 1 time
        expected_times = 1
        self.assertEqual(len(result), expected_times)
        self.assertIsNotNone(base.ScenarioRunnerResult(result))
        self.assertIn('error', result[0])
예제 #4
0
    def test_run_scenario_constantly_for_duration_exception(self):
        runner = constant.ConstantForDurationScenarioRunner(
            None, [self.context["admin"]["endpoint"]], self.config)

        runner._run_scenario(fakes.FakeScenario, "something_went_wrong",
                             self.context, self.args)
        # NOTE(mmorais): when duration is 0, scenario executes exactly 1 time
        expected_times = 1
        self.assertEqual(len(runner.result_queue), expected_times)
        for result in runner.result_queue:
            self.assertIsNotNone(base.ScenarioRunnerResult(result))
        self.assertIn('error', runner.result_queue[0])
예제 #5
0
 def test_abort(self):
     runner = constant.ConstantForDurationScenarioRunner(None, self.config)
     self.assertFalse(runner.aborted.is_set())
     runner.abort()
     self.assertTrue(runner.aborted.is_set())