def test_retrieve(self, mock_get_method):
     """ tests that the retrieve method works expected. """
     _setup_mock_response_for_retriever(mock_get_method,
                                        self._public_key_pem)
     retriever = HTTPSMultiRepositoryPublicKeyRetriever(self.keystore_urls)
     self.assertEqual(retriever.retrieve('example/eg'),
                      self._public_key_pem)
 def test_retrieve_with_500_error(self, mock_get_method):
     """ tests that the retrieve method works as expected
         when the first key repository returns a server error response.
     """
     retriever = HTTPSMultiRepositoryPublicKeyRetriever(self.keystore_urls)
     _setup_mock_response_for_retriever(mock_get_method,
                                        self._public_key_pem)
     valid_response = mock_get_method.return_value
     del mock_get_method.return_value
     server_exception = requests.exceptions.HTTPError(response=mock.Mock(
         status_code=500))
     mock_get_method.side_effect = [server_exception, valid_response]
     self.assertEqual(retriever.retrieve('example/eg'),
                      self._public_key_pem)