-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Move solidity test suite to truffle beta #846
Conversation
BTW,
This should probably be automated in the CI scripts, somewhere. |
48b2f45
to
47a2da9
Compare
@se3000 : Above force-push breaks up the |
f2918ff
to
5ecc4ae
Compare
4ef9add
to
1411478
Compare
b39f410
to
57d0646
Compare
Hi, @se3000 . This is largely complete, except for this issue in the echo_server test, which seems to relate to a strange behavior of solc-js. We may want to move away from solc-js for the deployer anyway, if possible. |
1f3d2cd
to
74fd3b4
Compare
Reverted the CI-initiation commit. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey there @coventry, made some requests inline below. Will reach out offline to discuss in detail.
Regarding my previous review, a worthy high level goal would be to place the coercion methods inside the helpers so it's centralized. |
@dimroc, github is not providing me a means to respond directly to your comments because they pertain to outdated commits, so I'll do so here. I marked all your comments as resolved as I responded to them to keep track, but there are still a loose few things in them:
|
c498568
to
7316e9c
Compare
@dimroc, regarding test invocation, (github has removed the option to comment directly, there.) No, you have to run the beta |
@dimroc, PTAL |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do have some concerns about the new development flow of having to run ganache-cli
separate to truffle test. I hope the pros outweigh the cons with truffle 5! But it's the future regardless.
- Set the compiler version, use docker-based compiler - Adjustments to work with new truffle/web3: async capture of accounts - More robust construction of solidity contract search path, for the examples as well as the tests - More systematic check for bytes representation in personalSign - Better error report for unexpected failure in assertActionThrows - More direct check that bad signature is generated as expected - web3.toUtf8 -> helpers.js/toUtf8 - web3.sha3 -> helpers.js/keccack; web3.toWei -> helpers.js/toWei - Correctly `await` on a number of async functions. - Wrapper contract link.transfer{,AndCall}, to handle BN amounts - Move to ganache-cli beta, provide scripts & docs for running it independently trufflesuite/ganache#610 (comment) - Ignore EIP55 capitalization when checking matching addresses - Update to new version of builder docker image - Change truffle CI tests to use development ethereum mock - Make assertBignum handle more "number" types - Centralize contract transfers to hide conversion of BN's to strings - Qualify imports of helper functions, in tests which use many of them
815a892
to
54ae6c8
Compare
This probably needs an update to CI, to use the compatible truffle/ganache-cli versions. AFAIK, we'll also need to kick off the right version of ganache-cli independently of truffle, until they're brought into line.
Handling of BigNums vs bigNum is a bit messy. Might make sense to revive assertBigNum to handle all relevant types.
Leaving the interim commits unsquashed in case they're useful for review.