Skip to main content

Nile plugin adding coverage reports for Cairo Smart Contracts.

Project description

nile-coverage

PyPI PyPI - Downloads

Nile plugin adding coverage reports for Cairo Smart Contracts.

Getting started

Install the plugin inside the virtual environment of your Nile project:

(env): pip install nile-coverage

Nile automatically detects installed plugins using python entry points feature. You should see the coverage command listed running nile, and you can run the report with:

(env): nile coverage

For a full list of options run:

(env): nile coverage --help

Recipes

1. Run coverage in a subset of the tests suite.

Mark tests with pytest marks and use the --mark argument to run a subset of tests:

(env): nile coverage -m unit

2. Integrate with codecov.io.

Generate a cobertura format coverage xml file named "coverage.xml" using the --xml flag:

(env): nile coverage --xml

3. Change the default folder containing Smart Contracts.

If your Smart Contracts are in a different folder than "contracts" (Nile default), use the --contracts-folder flag to set the correct one:

(env): nile coverage -c src

Acknowledgements

This package uses the starknet-edu/cairo-coverage Virtual Machine override to get covered lines for the final report. Special thanks to @LucasLvy from StarkWare!

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

nile-coverage-0.2.5.1.tar.gz (17.2 kB view hashes)

Uploaded Source

Built Distribution

nile_coverage-0.2.5.1-py3-none-any.whl (14.6 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