diff options
Diffstat (limited to 'contracts/TESTING.md')
-rw-r--r-- | contracts/TESTING.md | 48 |
1 files changed, 0 insertions, 48 deletions
diff --git a/contracts/TESTING.md b/contracts/TESTING.md deleted file mode 100644 index 3e6888c04..000000000 --- a/contracts/TESTING.md +++ /dev/null @@ -1,48 +0,0 @@ -# Contracts testing options - -## Revert stack traces - -If you want to see helpful stack traces (incl. line number, code snippet) for smart contract reverts, run the tests with: - -``` -yarn test:trace -``` - -**Note:** This currently slows down the test runs and is therefore not enabled by default. - -## Backing Ethereum node - -By default, our tests run against an in-process [Ganache](https://github.com/trufflesuite/ganache-core) instance. In order to run the tests against [Geth](https://github.com/ethereum/go-ethereum), first follow the instructions in the README for the devnet package to start the devnet Geth node. Then run: - -```bash -TEST_PROVIDER=geth yarn test -``` - -## Code coverage - -In order to see the Solidity code coverage output generated by `@0x/sol-coverage`, run: - -``` -yarn test:coverage -``` - -## Gas profiler - -In order to profile the gas costs for a specific smart contract call/transaction, you can run the tests in `profiler` mode. - -**Note:** Traces emitted by ganache have incorrect gas costs so we recommend using Geth for profiling. - -``` -TEST_PROVIDER=geth yarn test:profiler -``` - -You'll see a warning that you need to explicitly enable and disable the profiler before and after the block of code you want to profile. - -```typescript -import { profiler } from './utils/profiler'; -profiler.start(); -// Some call to a smart contract -profiler.stop(); -``` - -Without explicitly starting and stopping the profiler, the profiler output will be too busy, and therefore unusable. |