PyMock-API
![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
A Python tool to mock API easily and humanly without any coding.
Overview | Python versions support | Quickly Start | Documentation
Overview
Do you ever have experience about needing to set up a very simple application and write some APIs with hardcode response again and again
for developing Font-End site? PyMock-API provides a command line tool to let developers could quickly and easily set up application
to mock APIs with configuration only.
Python versions support
The code base of PyMock-API to set up an application still depends on third party Python package, i.e., Flask, FastAPI,
etc. So the Python versions it supports also be affected by them, e.g., Flask only supports Python version 3.8 up currently. So
PyMock-API also only supports version Python 3.8 up.
![Supported Versions](https://img.shields.io/pypi/pyversions/PyMock-API.svg?logo=python&logoColor=FBE072)
Quickly Start
Here section would lead you quickly start to set up your first one application by PyMock-API for mocking APIs easily.
In basically, it has 3 steps: install the package, configure settings about the APIs for mocking and run command.
Install command line tool
First of all, we need to install the command line tool and the way to install is same as installing Python package by pip
.
>>> pip install pymock-api
If the runtime environment has installed some Python web framework, e.g., Flask, you also could install Pymock-API
with one specific option as following:
>>> pip install "pymock-api[flask]"
Then it would only install the lowest Python dependencies you need.
After you done above step, please make sure the command line tool feature should work finely by below command:
>>> mock-api --help
Note
Please take a look at option --app-type (this option is in subcommand mock-api run) of the command line tool. Its option
value could be auto
, flask
or fastapi
. It means that PyMock-API only supports 2 Python web frameworks: Flask
and FastAPI.
Configure setting to mock target APIs
Now, we have the command line tool. Let's configure the settings it needs to set up application to mock API.
The configuration format of PyMock-API to use is YAML. So let's write below settings in YAML file:
mocked_apis:
google_home:
url: '/google'
http:
request:
method: 'GET'
response:
strategy: string
value: 'This is Google home API.'
Run command to set up application
Now, both of the command line tool and configuration have been already. So let's try to run the command to set up application!
>>> mock-api run -c <your configuration path>
You would see some log messages in terminal and that is the log of web server by one specific Python web framework.
And you could test the API by curl
:
>>> curl http://127.0.0.1:9672/google
"This is Google home API."%
![demonstration](./docs/images/demonstration_pymock-api_cli.gif)
Documentation
Currently, it won't have documentation. But it would have soon.
Coding style and following rules
PyMock-API follows coding styles black and PyLint to control code quality.
![linting: pylint](https://img.shields.io/badge/linting-pylint-yellowgreen)
Downloading state
PyMock-API still a young open source which keep growing. Here's its download state:
![Downloads](https://pepy.tech/badge/PyMock-API/month)
License
MIT License