Skip to content

lemoncheesecake/lemoncheesecake-requests

Repository files navigation

lemoncheesecake-requests

lemoncheesecake-requests provides logging facilities to requests for tests written with the lemoncheesecake test framework.

In this example, we implement a very basic test on a Github API endpoint:

# suites/github.py

import lemoncheesecake.api as lcc
from lemoncheesecake.matching import *
from lemoncheesecake_requests import Session, is_2xx

@lcc.test()
def get_org():
    session = Session(base_url="https://api.github.com")

    resp = session.get("/orgs/lemoncheesecake"). \
        require_status_code(is_2xx()). \
        check_json({
             "id": is_integer(),
             "name": equal_to("lemoncheesecake")
        })

We run the test:

$ lcc run
=================================== github ====================================
 OK  1 # github.get_org

Statistics :
 * Duration: 0.214s
 * Tests: 1
 * Successes: 1 (100%)
 * Failures: 0

And here is the report details :

test result

Installation

Install through pip:

$ pip install lemoncheesecake-requests

lemoncheesecake-requests is compatible with Python 3.7-3.10.

Features

  • request/response data logging into lemoncheesecake
  • response status code checking using lemoncheesecake matching mechanism

Documentation

The documentation is available on https://lemoncheesecake-requests.readthedocs.io.

Contact

Bug reports and improvement ideas are welcomed in tickets. A Google Groups forum is also available for discussions about lemoncheesecake: https://groups.google.com/forum/#!forum/lemoncheesecake.