class TestApi(object): def setup(self): httpretty.enable() self.api = QPApi(secret="foo:bar") self.url = "{0}{1}".format(self.api.base_url, '/test') def setup_request(self): httpretty.register_uri(httpretty.GET, self.url, body=json.dumps({'id': 123}), content_type='application/json') def test_perform_success(self): self.setup_request() res = self.api.perform('get', "/test") assert_equal(res['id'], 123) def test_perform_failure(self): httpretty.register_uri(httpretty.GET, self.url, status=500, body=json.dumps({'message': 'dummy'})) assert_raises(ApiError, self.api.perform, 'get', '/test') def test_headers(self): self.setup_request() res = self.api.perform('get', '/test') req_headers = httpretty.last_request().headers assert_equal(req_headers['Authorization'], 'Basic Zm9vOmJhcg==') assert_equal(req_headers['Accept-Version'], 'v10') assert req_headers['User-Agent'] def test_perform_when_raw(self): self.setup_request() res = self.api.perform('get', '/test', raw=True) assert_equal(res[0], 200) assert_equal(res[1], '{"id": 123}') assert_equal(res[2]['server'], 'Python/HTTPretty') assert_equal(res[2]['content-type'], 'application/json')
def setup(self): httpretty.enable() self.api = QPApi(secret="foo:bar") self.url = "{0}{1}".format(self.api.base_url, '/test')