def test_handle_get_all_failed(self, model, _download, _on_all_failed, responder): """ Three catalog entries. All (3) failed. """ request = Mock(uri='http://content-world.com/content/bear.rpm') responder.return_value.__enter__.return_value = responder.return_value report = DownloadReport('', '') _download.side_effect = SideEffect(PluginNotFound(), DoesNotExist(), DownloadFailed(report)) catalog = [ Mock(url='url-a'), Mock(url='url-b'), Mock(url='url-c'), ] model.objects.filter.return_value.order_by.return_value.all.return_value = catalog model.objects.filter.return_value.order_by.return_value.count.return_value = len( catalog) # test streamer = Streamer(Mock()) streamer._handle_get(request) # validation model.objects.filter.assert_called_once_with(path='/content/bear.rpm') model.objects.filter.return_value.order_by.\ assert_called_once_with('-_id', '-revision') responder.assert_called_once_with(request) _on_all_failed.assert_called_once_with(request) self.assertEqual(_download.call_args_list, [ call(request, catalog[0], responder.return_value), call(request, catalog[1], responder.return_value), call(request, catalog[2], responder.return_value) ])
def test_handle_get(self, model, _download, _on_succeeded, responder): """ Three catalog entries. The 1st download fails but succeeds on the 2nd. The 3rd is not tried. """ request = Mock(uri='http://content-world.com/content/bear.rpm') responder.return_value.__enter__.return_value = responder.return_value report = DownloadReport('', '') _download.side_effect = SideEffect(DownloadFailed(report), report, None) catalog = [ Mock(url='url-a'), Mock(url='url-b'), Mock(url='url-c'), # not tried. ] model.objects.filter.return_value.order_by.return_value.all.return_value = catalog model.objects.filter.return_value.order_by.return_value.count.return_value = len( catalog) # test streamer = Streamer(Mock()) streamer._handle_get(request) # validation model.objects.filter.assert_called_once_with(path='/content/bear.rpm') model.objects.filter.return_value.order_by.\ assert_called_once_with('-_id', '-revision') responder.assert_called_once_with(request) _on_succeeded.assert_called_once_with(catalog[1], request, report) self.assertEqual(_download.call_args_list, [ call(request, catalog[0], responder.return_value), call(request, catalog[1], responder.return_value) ])
def test_validate_failed(self, validate, update_settings, sleep): test_conf = { 'filesystem': { 'id_cert_dir': TEST_ID_CERT_DIR, 'id_cert_filename': TEST_ID_CERT_FILE } } validate.side_effect = SideEffect( self.plugin.ValidateRegistrationFailed, None) self.plugin.pulp_conf.update(test_conf) # test self.plugin.registered = True self.plugin.init_plugin() # validation sleep.assert_called_once_with(60) update_settings.assert_called_once_with() self.plugin.path_monitor.add.assert_called_with( os.path.join(TEST_ID_CERT_DIR, TEST_ID_CERT_FILE), self.plugin.certificate_changed) self.plugin.path_monitor.start.assert_called_with() self.assertEqual(validate.call_count, 2)
def test_run_validate_failed(self, validate, update_settings, sleep): validate.side_effect = SideEffect(ValueError, None) # test attach = self.plugin.Attach() attach.run() # validation validate.assert_called_with() sleep.assert_called_once_with(60) update_settings.assert_called_with() self.plugin.plugin.attach.assert_called_with()
def test_validate_failed(self, validate, update_settings, sleep): path = 'test-path' validate.side_effect = SideEffect(self.plugin.ValidateRegistrationFailed, None) # test self.plugin.registered = True self.plugin.certificate_changed(path) # validation update_settings.assert_called_once_with() sleep.assert_called_once_with(60) self.plugin.plugin.attach.assert_called_once_with() self.assertEqual(validate.call_count, 2)