def test_run_with_timeout_err(self): """Test the running connect task with timeout error.""" task = ConnectTaskRunner(self.scan_job, self.scan_task) with patch('scanner.satellite.connect.utils.status', side_effect=mock_timeout_error) as mock_sat_status: status = task.run() mock_sat_status.assert_called_once_with(ANY) self.assertEqual(status[1], ScanTask.FAILED)
def test_run_sat5_bad_status(self): """Test the running connect task for Satellite 5.""" task = ConnectTaskRunner(self.scan_job, self.scan_task) with patch('scanner.satellite.connect.utils.status', return_value=(401, None, SATELLITE_VERSION_5)) as mock_sat_status: status = task.run(Value('i', ScanJob.JOB_RUN)) mock_sat_status.assert_called_once_with(ANY) self.assertEqual(status[1], ScanTask.FAILED)
def test_run_with_auth_err(self): """Test the running connect task with satellite auth error.""" task = ConnectTaskRunner(self.scan_job, self.scan_task) with patch('scanner.satellite.connect.utils.status', side_effect=mock_sat_auth_exception) as mock_sat_status: status = task.run(Value('i', ScanJob.JOB_RUN)) mock_sat_status.assert_called_once_with(ANY) self.assertEqual(status[1], ScanTask.FAILED)
def test_run_sat6_bad_api_version(self): """Test the running connect task for Sat6 with bad api version.""" task = ConnectTaskRunner(self.scan_job, self.scan_task) with patch('scanner.satellite.connect.utils.status', return_value=(200, 3, SATELLITE_VERSION_6)) as mock_sat_status: status = task.run() mock_sat_status.assert_called_once_with(ANY) self.assertEqual(status[1], ScanTask.FAILED)
def test_run_unknown_sat(self): """Test the running connect task for unknown sat version.""" task = ConnectTaskRunner(self.scan_job, self.scan_task) with patch('scanner.satellite.connect.utils.status', return_value=(None, None, None)) as mock_sat_status: status = task.run(Value('i', ScanJob.JOB_RUN)) mock_sat_status.assert_called_once_with(ANY) self.assertEqual(status[1], ScanTask.FAILED)
def test_run_sat5_bad_status(self): """Test the running connect task for Satellite 5.""" options = SourceOptions( satellite_version=SourceOptions.SATELLITE_VERSION_5) options.save() self.source.options = options self.source.save() task = ConnectTaskRunner(self.scan_job, self.scan_task) with patch('scanner.satellite.connect.utils.status', return_value=(401, None)) as mock_sat_status: status = task.run() mock_sat_status.assert_called_once_with(ANY, ANY) self.assertEqual(status[1], ScanTask.FAILED)
def test_run_with_except(self): """Test the running connect task with general exception.""" options = SourceOptions( satellite_version=SourceOptions.SATELLITE_VERSION_62) options.save() self.source.options = options self.source.save() task = ConnectTaskRunner(self.scan_job, self.scan_task) with patch('scanner.satellite.connect.utils.status', side_effect=mock_exception) as mock_sat_status: status = task.run() mock_sat_status.assert_called_once_with(ANY, ANY) self.assertEqual(status[1], ScanTask.FAILED)
def test_run_sat6_v2(self): """Test the running connect task for Sat6 with api version 2.""" task = ConnectTaskRunner(self.scan_job, self.scan_task) with patch('scanner.satellite.connect.utils.status', return_value=(200, 2, SATELLITE_VERSION_6)) as mock_sat_status: with patch.object(SatelliteSixV2, 'host_count', return_value=1) as mock_host_count: with patch.object(SatelliteSixV2, 'hosts', return_value=['sys1']) as mock_hosts: status = task.run() mock_sat_status.assert_called_once_with(ANY) mock_host_count.assert_called_once_with() mock_hosts.assert_called_once_with() self.assertEqual(status[1], ScanTask.COMPLETED)
def test_run_no_source_options(self): """Test the running connect task with no source options.""" task = ConnectTaskRunner(self.scan_job, self.scan_task) status = task.run() self.assertEqual(status[1], ScanTask.FAILED)
def test_run_sat6_v2_pause(self): """Test the running connect task (pause).""" task = ConnectTaskRunner(self.scan_job, self.scan_task) status = task.run(Value('i', ScanJob.JOB_TERMINATE_PAUSE)) self.assertEqual(status[1], ScanTask.PAUSED)
def test_run_sat6_v2_cancel(self): """Test the running connect task (cancel).""" task = ConnectTaskRunner(self.scan_job, self.scan_task) status = task.run(Value('i', ScanJob.JOB_TERMINATE_CANCEL)) self.assertEqual(status[1], ScanTask.CANCELED)