Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/arnaucube/provoj
Simple python library to check the endpoints of an RESTful API
https://github.com/arnaucube/provoj
Last synced: 2 months ago
JSON representation
Simple python library to check the endpoints of an RESTful API
- Host: GitHub
- URL: https://github.com/arnaucube/provoj
- Owner: arnaucube
- License: mit
- Created: 2018-03-12T14:40:19.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2018-03-22T10:25:32.000Z (almost 7 years ago)
- Last Synced: 2024-08-10T04:17:26.591Z (5 months ago)
- Language: Python
- Size: 831 KB
- Stars: 35
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# provoj
Simple library to test the endpoints of an RESTful API.
Check values, integrated with requests python library.
For python version>3
## Installation
Requires to have installed 'requests' library.
Install provoj by:
```
pip install provoj
```### Usage
Import the provoj library, and the requests library
```python
import provoj
import requests
```Define a new test
```python
test = provoj.NewTest("Testing some websites")
```Check if two variables are equal
```python
a = "hello"
b = "world"
test.equal("comparing a and b", a, b)# test.equal(check description, variable1, variable2)
```Check if two variables are not equal
```python
a = "hello"
b = "world"
test.notequal("comparing a and b", a, b)# test.notequal(check description, variable1, variable2)
```Check if first variable is bigger than the second
```python
a = 2
b = 3
test.bigger("comparing a and b", a, b)# test.bigger(check description, variable1, variable2)
```Check if first variable is smaller than the second
```python
a = 2
b = 3
test.smaller("comparing a and b", a, b)# test.smaller(check description, variable1, variable2)
```Check if the length of a variable
```python
animals = ["cat", "dog", "racoon"]
test.length("checking the length of the array animals", animals, 3)# test.length(check description, variable1, length)
```Check for request status
```python
r = requests.get("https://api.github.com/users/arnaucode/repos")
test.rStatus("get api.github.com/users/arnaucode/repos", r)# test.rStatus(check description, request_response)
```### Full example
```python
import provoj
import requeststest1 = provoj.NewTest("testing some function")
a = "hello"
b = "world"
c = "hello"
test1.equal("comparing a and b", a, b)
test1.notequal("comparing a and b", a, b)
test1.equal("comparing a and c", a, c)x = 2
y = 3
test1.bigger("comparing x and y", x, y)
test1.smaller("comparing x and y", x, y)test1.length("checking length", a, 2)
test1.length("checking length", a, 5)animals = ["cat", "dog", "racoon"]
test1.length("checking the length of the array animals", animals, 3)test1.printScores()
t2 = provoj.NewTest("Testing some websites")
r = requests.get("https://www.github.com")
t2.rStatus("get github", r)r = requests.get("https://arnaucode.com")
t2.rStatus("get arnaucode.com", r)r = requests.get("https://arnaucode.com/fake")
t2.rStatus("get arnaucode.com/fake_path", r)r = requests.get("https://arnaucode.com/blog")
t2.rStatus("get arnaucode.com/blog", r)t2.printScores()
tGithub = provoj.NewTest("Github API tests")
r = requests.get("https://api.github.com")
tGithub.rStatus("get api.github", r)
r = requests.get("https://api.github.com/users/arnaucode")
tGithub.rStatus("get https://api.github.com/users/arnaucode", r)
jsonResp = r.json()
tGithub.equal("checking quantity of followers", jsonResp["followers"], 100)
tGithub.equal("checking quantity of public_repos", jsonResp["public_repos"], 77)r = requests.get("https://api.github.com/users/arnaucode/repos")
tGithub.rStatus("get https://api.github.com/users/arnaucode/repos", r)
jsonResp = r.json()
tGithub.length("checking length of repos", jsonResp, 30)
tGithub.equal("checking first repo", jsonResp[0]["name"], "argos")
tGithub.equal("checking second repo", jsonResp[1]["name"], "coffeeminer")
tGithub.equal("checking third repo", jsonResp[2]["name"], "bc")tGithub.printScores()
```Output example:
![provoj](https://raw.githubusercontent.com/arnaucode/provoj/master/provoj-example.gif "provoj")