f79c65815a
The alfajor HTTP test wrapper is not working properly. All the tests are failing with: AttributeError: '_APIClientResponse' object has no attribute '_status_code' It doesn't look like alfajor is being maintained any more [1, 2], so remove the dependency on it and run the tests directly through the werkzeug client instead. The test_json_get_styles test still failed because the content and ordering of the styles returned from the API is dependent on the platform on which the tests run. Instead of testing against a fixed expected result, which could be different on another platform, generate the expected results dynamically. Update the tox configuration and test-requirements.txt to be able to run the tests via tox. [1] https://github.com/idealist/Alfajor [2] https://github.com/idealistdev/alfajor Change-Id: I4db6783b9d725ce096575035ea27d28be8e6fed5
22 lines
626 B
Python
22 lines
626 B
Python
from werkzeug.test import Client
|
|
from werkzeug.wrappers import BaseResponse
|
|
from lodgeit.application import make_app
|
|
from json import loads
|
|
|
|
client = Client(make_app('sqlite://', 'NONE', False, True), BaseResponse)
|
|
|
|
|
|
def is_json(response):
|
|
"""True if the response is JSON and the HTTP status was 200."""
|
|
return (response.status_code == 200 and
|
|
response.headers.get('Content-Type', '') == 'application/json')
|
|
|
|
|
|
def json(response):
|
|
"""The response parsed as JSON.
|
|
|
|
No attempt is made to ensure the response is valid or even looks
|
|
like JSON before parsing.
|
|
"""
|
|
return loads(response.data)
|