Esempio n. 1
0
    def test_job_requests(self, mock_pause_job, mock_resume_job,
                          mock_remove_job):
        ui = SchedulerUI(self.scheduler)

        ui._pause_job('a_job')
        mock_pause_job.assert_called()

        ui._resume_job('a_job')
        mock_resume_job.assert_called()

        ui._remove_job('a_job')
        mock_remove_job.assert_called()
Esempio n. 2
0
    def test_scheduler_commands_are_serialized(self, mock_pause, mock_abort):
        ui = SchedulerUI(self.scheduler, operation_timeout=0.01)

        with ui._scheduler_lock:
            # If we acquire the lock, every command we send to the web server should be aborted on lock acquire timeout.
            ui._pause_scheduler()

            mock_abort.assert_called()
            mock_pause.assert_not_called()

            ui._resume_scheduler()
            ui._stop_scheduler()
            ui._start_scheduler()
            ui._pause_job('a_job')
            ui._resume_job('a_job')
            ui._run_job('a_job')
            ui._remove_job('a_job')

            self.assertEqual(8, mock_abort.call_count)