From 1785769916d47cf5810ad48d2d03fcccb508f44c Mon Sep 17 00:00:00 2001 From: Leonid Logvinov Date: Mon, 3 Dec 2018 13:50:11 +0100 Subject: Refactour out the contracts testing options into a separate markdown file --- contracts/core/README.md | 47 +---------------------------------------------- 1 file changed, 1 insertion(+), 46 deletions(-) (limited to 'contracts/core') diff --git a/contracts/core/README.md b/contracts/core/README.md index 7fd2ab220..0004925c1 100644 --- a/contracts/core/README.md +++ b/contracts/core/README.md @@ -79,49 +79,4 @@ yarn test #### 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-cov`, 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. +Contracts testing options like coverage, profiling, revert traces or backing node choosing - are described [here](../TESTING.md). -- cgit v1.2.3