Skip to main content

REst Json mOCK servER

Project description

rejocker is a simple configurable mock server. It is mainly dedicated to the testing of REST clients.

  • Support configuration of headers and bodies in requests and responses

  • Accept and respond with JSON and plain text

  • Support GET,POST,PUT,PATCH and DELETE methods for HTTP requests

  • Return HTTP status codes

Requirements

rejocker is written in Python 3 using the Flask 1.1.x framework, and is provided as a Python package

To install the package dependencies, you can run the following command from the root directory of the source code

pip3 install -r requirements.txt

Usage

Configuration

rejocker is configured through a json formatted file defining endpoints. Each endpoint is defined with

  • a path (and an optional path prefix)

  • accepted HTTP methods

  • expected and returned headers and bodies for each method

Th location of the configuration file is given to rejocker through the REJOCKER_DATA_SOURCE environment variable. (E.g. REJOCKER_DATA_SOURCE=/path/to/config.json)

An example of a configuration file is provided with the rejocker package in the data directory. If the REJOCKER_DATA_SOURCE environment variable is not set, the example file is used by default.

Running the server locally

The server can be run locally for development or testing purposes.

First, the rejocker package have to be installed locally with editable option (this should be done only once):

pip3 install -e .

To run the server:

FLASK_APP=rejocker flask run

To run the server in development mode and automatic reload of source code:

FLASK_ENV=development FLASK_APP=rejocker flask run --reload

You can visit the Flask Quickstart for details.

Running the server in production

In production, the server must be run according to the Flask recommendations for deployment.

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

rejocker-0.5.tar.gz (4.2 kB view hashes)

Uploaded Source

Built Distribution

rejocker-0.5-py3-none-any.whl (9.5 kB view hashes)

Uploaded 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