def test_create_server_propagates_api_failure(self): """ create_server will propagate API failures. """ response = mock.Mock() response.code = 500 self.treq.post.return_value = succeed(response) self.treq.content.return_value = succeed(error_body) d = create_server('http://url/', 'my-auth-token', {}) failure = self.failureResultOf(d) self.assertTrue(failure.check(RequestError)) real_failure = failure.value.reason self.assertTrue(real_failure.check(APIError)) self.assertEqual(real_failure.value.code, 500)
def test_create_server(self): """ create_server will perform a properly formed POST request to the server endpoint and return the decoded json content. """ response = mock.Mock() response.code = 202 self.treq.post.return_value = succeed(response) server_config = { 'name': 'someServer', 'imageRef': '1', 'flavorRef': '3' } d = create_server('http://url/', 'my-auth-token', server_config) result = self.successResultOf(d) self.assertEqual(result, self.treq.json_content.return_value)