def test_construction(self): batch = Mock() # test listener = NectarListener(batch) # validation self.assertEqual(listener.batch, batch)
def test_construction(self): canceled = FakeEvent() downloader = Mock() listener = Mock() # test nectar_listener = NectarListener(canceled, downloader, listener=listener) self.assertEqual(nectar_listener.cancel_event, canceled) self.assertEqual(nectar_listener.downloader, downloader) self.assertEqual(nectar_listener.listener, listener)
def test_download_started_canceled(self): batch = Mock() batch.is_canceled = True batch.listener = Mock() report = Mock() report.data = Mock() # test listener = NectarListener(batch) listener.download_started(report) # validation self.assertFalse(batch.listener.download_started.called)
def test_download_started(self, event): batch = Mock() batch.listener = Mock() report = Mock() report.data = Mock() # test listener = NectarListener(batch) listener.download_started(report) # validation event.assert_called_once_with(report.data) event.return_value.assert_called_once_with(batch.listener)
def test_download_started_no_listener(self): batch = Mock() batch.is_canceled = False batch.listener = Mock() batch.listener.__nonzero__ = Mock(return_value=False) report = Mock() report.data = Mock() # test listener = NectarListener(batch) listener.download_started(report) # validation self.assertFalse(batch.listener.download_started.called)
def test_download_started_no_listener(self): canceled = Mock() canceled.isSet.return_value = False downloader = Mock() listener = None report = Mock() report.data = {'A': 1} # test nectar_listener = NectarListener(canceled, downloader, listener) nectar_listener.download_started(report) # validation canceled.isSet.assert_called_with()
def test_download_succeeded_canceled(self): batch = Mock() batch.is_canceled = True batch.listener = Mock() report = Mock() report.data = Mock() # test listener = NectarListener(batch) listener.download_succeeded(report) # validation self.assertFalse(batch.finished.called) self.assertFalse(batch.listener.download_succeeded.called) self.assertEqual(listener.total_succeeded, 1)
def test_download_succeeded_and_canceled(self): canceled = Mock() canceled.isSet.return_value = True downloader = Mock() listener = Mock() report = Mock() report.data = Mock() # test nectar_listener = NectarListener(canceled, downloader, listener) nectar_listener.download_succeeded(report) # validation canceled.isSet.assert_called_with() self.assertFalse(listener.download_succeeded.called)
def test_download_succeeded(self, event): batch = Mock() batch.in_progress = Mock() batch.listener = Mock() report = Mock() report.data = Mock() # test listener = NectarListener(batch) listener.download_succeeded(report) # validation batch.in_progress.decrement.assert_called_with() event.assert_called_once_with(report.data) event.return_value.assert_called_once_with(batch.listener) self.assertEqual(listener.total_succeeded, 1)
def test_download_succeeded(self): batch = Mock() batch.is_canceled = False batch.in_progress = Mock() batch.listener = Mock() report = Mock() report.data = Mock() # test listener = NectarListener(batch) listener.download_succeeded(report) # validation batch.in_progress.decrement.assert_called_with() batch.listener.download_succeeded.assert_called_with(report.data) self.assertEqual(listener.total_succeeded, 1)
def test_download_succeeded_no_listener(self): batch = Mock() batch.is_canceled = False batch.listener = Mock() batch.listener.__nonzero__ = Mock(return_value=False) report = Mock() report.data = Mock() # test listener = NectarListener(batch) listener.download_succeeded(report) # validation batch.in_progress.decrement.assert_called_with() self.assertFalse(batch.listener.download_succeeded.called) self.assertEqual(listener.total_succeeded, 1)
def test_download_failed_no_listener(self): canceled = Mock() canceled.isSet.return_value = False downloader = Mock() listener = None report = Mock() request = Mock() request.errors = [] report.data = request # test nectar_listener = NectarListener(canceled, downloader, listener) nectar_listener.download_failed(report) self.assertEqual(request.errors, [report.error_msg]) # validation canceled.isSet.assert_called_with()
def test_download_succeeded_no_listener(self): canceled = Mock() canceled.isSet.return_value = False downloader = Mock() listener = None report = Mock() request = Mock() request.downloaded = False report.data = request # test nectar_listener = NectarListener(canceled, downloader, listener) nectar_listener.download_succeeded(report) # validation canceled.isSet.assert_called_with() self.assertTrue(request.downloaded)
def test_download_failed_canceled(self): batch = Mock() batch.is_canceled = True batch.listener = Mock() report = Mock() report.data = Mock() report.data.errors = [] report.error_msg = 'something bad happened' # test listener = NectarListener(batch) listener.download_failed(report) # validation self.assertFalse(batch.dispatch.called) self.assertFalse(batch.listener.download_failed.called) self.assertEqual(len(report.data.errors), 0) self.assertEqual(listener.total_failed, 1)
def test_download_failed_not_dispatched(self, event): batch = Mock() batch.listener = Mock() batch.dispatch.return_value = False report = Mock() report.data = Mock() report.data.errors = [] report.error_msg = 'something bad happened' # test listener = NectarListener(batch) listener.download_failed(report) # validation event.assert_called_once_with(report.data) event.return_value.assert_called_once_with(batch.listener) self.assertEqual(len(report.data.errors), 1) self.assertEqual(report.data.errors[0], report.error_msg) self.assertEqual(listener.total_failed, 1)
def test_download_failed(self, event): batch = Mock() batch.listener = Mock() batch.dispatch.return_value = True batch.in_progress = Mock() report = Mock() report.data = Mock() report.data.errors = [] report.error_msg = 'something bad happened' # test listener = NectarListener(batch) listener.download_failed(report) # validation) self.assertFalse(event.called) self.assertFalse(batch.in_progress.decrement.called) self.assertEqual(len(report.data.errors), 1) self.assertEqual(report.data.errors[0], report.error_msg) self.assertEqual(listener.total_failed, 1)
def test_download_failed_not_dispatched_no_listener(self): batch = Mock() batch.is_canceled = False batch.listener = Mock() batch.listener.__nonzero__ = Mock(return_value=False) batch.dispatch.return_value = False report = Mock() report.data = Mock() report.data.errors = [] report.error_msg = 'something bad happened' # test listener = NectarListener(batch) listener.download_failed(report) # validation batch.dispatch.assert_called_with(report.data) self.assertFalse(batch.listener.download_failed.called) self.assertEqual(len(report.data.errors), 1) self.assertEqual(report.data.errors[0], report.error_msg) self.assertEqual(listener.total_failed, 1)