Graviton is a software toolkit for blackbox testing of smart contracts written in TEAL.
The following instructions assume that you have make available in your local environment. In Mac OS and Linux this is most likely already available and in Windows one way to install is with chocolatey and the command choco install make.
To install all dependencies:
make pip-notebooksIf you would like to use the Makefile without modification and with full functionality, you should create a symbolic link to the algorand sandbox repo as described here. There are many ways to accomplish this. Assuming you have cloned the sandbox into the path /path/to/algorand/sandbox/ and that you've cd'ed into the cloned graviton directory you should create a symbolic link as follows:
ln -s /path/to/algorand/sandbox/ sandboxmklink sandbox \path\to\algorand\sandboxWith your sandbox running to test that the sandbox is running properly, use the following:
make local-sandbox-testmake integration-testTo run the notebook notebooks/quadratic_factoring_game.ipynb for example:
make local-notebook NOTEBOOK=notebooks/quadratic_factoring_game.ipynbTo non-interactively run all the jupyter notebook tests:
make notebooks-testTo test in your local environment that everything is looking good before pushing to Github, it is recommended that you run make all-tests
If you would like to simulate the github actions locally, you'll need to install nektos act. On Mac OS with Docker previously installed you can use brew install act; on the other hand, on Linux and Windows follow the installation instructions in the nextos repo link above.
Once act is available you can simulate all the github actions integration tests with:
make local-gh-simulate