Skip to main content

Integration of Falcon API unit tests with Bravado.

Project description

https://snap-ci.com/butla/bravado-falcon/branch/master/build_image https://coveralls.io/repos/butla/bravado-falcon/badge.svg?branch=master&service=github https://requires.io/github/butla/bravado-falcon/requirements.svg?branch=master

Integration of Falcon API unit tests with Bravado. For testing your application’s contract.

You can easily implement Bravado integrations for other frameworks’ unit tests (e.g. Flask’s) based on this code.

This library doesn’t do much, but it’s actually feature-complete (there weren’t that many features to implement…).

One thing that can be changed in the future is the way Falcon requests are simulated. Right now it’s done with pytest-falcon, but you don’t have to use Pytest in your tests (but it’s great and you probably should at least check it out).

Usage

from bravado.client import SwaggerClient
from bravado_falcon import FalconHttpClient

api = get_falcon_api() # get a falcon.API
swagger_spec = get_swagger_spec() # dict created by loading a YAML or JSON from a file

client = SwaggerClient.from_spec(swagger_spec,
                                 http_client=FalconHttpClient(api))

# "v1" is the first part of a path (e.g. "/v1/shopping/lists")
# "getList" is the "operationId" element for an endpoint from Swagger
# "id" is a path parameter (let's say from "/v1/shopping/lists/{id}")
# See Bravado docs for more information.
list_object = client.v1.getList(id='list-id').result()

# now make assertions about the returned object

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bravado-falcon-0.0.1.tar.gz (3.9 kB view hashes)

Uploaded Source

Built Distributions

bravado_falcon-0.0.1-py3-none-any.whl (4.4 kB view hashes)

Uploaded Python 3

bravado_falcon-0.0.1-py2.py3-none-any.whl (4.6 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page