def test_call_should_not_retry_for_pandora_exceptions(self): with self.assertRaises(PandoraException): client = TestSettingsDictBuilder._build_minimal() time.sleep = Mock() client.transport._make_http_request = Mock( side_effect=PandoraException("error_mock")) client.transport._start_request = Mock() client("method") client.transport._start_request.assert_has_calls([call("method")]) assert client.transport._start_request.call_count == 1
def test_process_event_handles_pandora_exception(config, caplog): with mock.patch.object(PandoraLibraryProvider, 'lookup_pandora_track', mock.Mock()): with mock.patch.object(PandoraBackend, 'thumbs_up', mock.Mock()) as mock_call: backend = get_backend(config) uri_mock = 'pandora:track:id_token_mock:id_token_mock' backend._trigger_event_processed = mock.Mock() mock_call.side_effect = PandoraException('exception_mock') assert not backend.process_event(uri_mock, 'thumbs_up') mock_call.assert_called_with(uri_mock) assert not backend._trigger_event_processed.called assert 'Error calling Pandora event: thumbs_up.' in caplog.text
def test_it_returns_specific_error_class_if_possible(self): error = PandoraException.from_code(0, "Test Message") self.assertIsInstance(error, InternalServerError) self.assertEqual("Test Message", error.extended_message) self.assertEqual(0, error.code)
def test_it_returns_generic_error_if_unknown(self): error = PandoraException.from_code(-99, "Test Message") self.assertIsInstance(error, PandoraException) self.assertEqual("Test Message", error.extended_message)
def test_it_returns_specific_error_class_if_possible(self): error = PandoraException.from_code(0, "Test Message") self.assertIsInstance(error, InternalServerError) self.assertEqual("Test Message", error.extended_message) self.assertEqual(0, error.code)
def test_it_returns_generic_error_if_unknown(self): error = PandoraException.from_code(-99, "Test Message") self.assertIsInstance(error, PandoraException) self.assertEqual("Test Message", error.extended_message)