Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to Truffle3, refactor CLI, add CLI unit tests, fix misc bugs #1

Merged
merged 54 commits into from
May 1, 2017

Conversation

cgewecke
Copy link
Member

@cgewecke cgewecke commented May 1, 2017

PR resolves a number of issues raised in Solcover since February 2017:

PR makes structural changes to runCoveredTests.js (renamed exec.js for brevity).

  • Target project (contracts, migrations, tests) - gets copied into a folder, instrumented and the tests run there.
  • Patching is replaced with forks of testrpc, ethereumjs-vm, and provider-engine. This is done to make npm install --save-dev solcover possible. There are no guarantees that the target doesn't already include these dependencies and forking them seems to be the simplest way of scoping the assets correctly and making sure Solcover's modifications don't affect the other packages. Have added you with full admin privileges to a github org created to house them. You could fork them to Colony too though. The ethereumjs-vm there contains the patch you wrote and testrpc has been altered to have a higher default transaction gas because it looked like some transactions were running out of gas.
  • Istanbul is loaded using require - again this lets npm figure out where it is / resolves problems raised if it's already one of the target's dependencies.
  • Adds support for --network coverage (see README.md)
  • Adds support for a small set of options loaded from a .solcover.js config file - basically testrpc options and an arbitrary test command (see README.md)
  • Adds unit tests / unit test fixtures for exec.js.

PR edits README with new instructions and adds links to some example repos/reports (haven't asked any of those people for permission to be exemplified - probably bad because their tests have coverage gaps, they might be saddened by this discovery, etc.)

One test file with an intentional syntax error isn't passing the Lint CI. I've added that to an eslintignore file to no avail. Additionally, two of the tests in the cli suite are explicitly disabled in the CI context because they launch their own testrpc instances and max out CI's container memory limit. They run locally though.

cgewecke and others added 30 commits March 28, 2017 16:13
cgewecke added 24 commits April 19, 2017 09:50
@cgewecke cgewecke merged commit 4c2c9e5 into master May 1, 2017
@cgewecke cgewecke deleted the truffle3 branch June 15, 2017 19:18
area pushed a commit that referenced this pull request Feb 27, 2019
truffle v5, leapdao/solidity-parser
cgewecke added a commit that referenced this pull request Mar 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant