-
Notifications
You must be signed in to change notification settings - Fork 791
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
[WIP] Run with the latest tests #305
Conversation
Very modest result, one new failing test: Run with: node tests/tester.js -s --test='ecmul_0-3_5616_28000_96' Output: $ node tests/tester.js -s --test='ecmul_0-3_5616_28000_96'
TAP version 13
# GeneralStateTests
# file: ecmul_0-3_5616_28000_96 test: ecmul_0-3_5616_28000_96
not ok 1 the state roots should match
---
operator: equal
expected: |-
'631a600601a67ef3357813281d417e141e5eddf306abd4d8824bdc141536e3c6'
actual: |-
'261abab5092a666776b6e956e2d572769b5cfef2fcff383ae956fcc75e36e133'
at: replenish (/Users/hdrewes/Documents/DEV/EthereumJS/ethereumjs-vm/node_modules/async/dist/async.js:1011:17)
...
ok 2 the state roots should match
ok 3 the state roots should match
ok 4 the state roots should match
1..4
# tests 4
# pass 3
# fail 1 This is the one with the highest gas limit (taking This is probably failing relatively early, since This is going into this conditional statement with the following message (hidden): sender doesn't have enough funds to send tx. The upfront cost is: 200000 and the sender's account only has: 150000 Run the single test case: node tests/tester.js -s --test='ecmul_0-3_5616_28000_96' --data=0 --gas=3 --value=0 --jsontrace This is probably failing due to some generic VM behavior and not due to problems with the corresponding precompile. |
bd01124
to
ee7ae31
Compare
Just rebased this. |
ee7ae31
to
fb35918
Compare
Rebased this, as a negative test for #313. |
Fails on:
|
This may be fixed with my update to rustbn.js to use ethereum-bn128.rs? |
@axic No, not fixed. Same test |
5f90023
to
c3261a5
Compare
Rebased this, mainly for the reason to have this also run with the Constantinople tests for a first impression (see #317). |
Will remove the rustbn.js commit, this is breaking the build. |
c3261a5
to
732e551
Compare
The reason it was breaking is because it pointed to a branch (PR), but that was merged and deleted. Lets try again with master. |
While the precompile cleanup doesn't fix the problem, I think they should be merged. Created #318. |
Debugging the ecmul issue locally. |
In the test case the input data is
And rustbn.js returns empty output, which means it considers it a failure. To me that seems it has a curve point Update: this is the actual data properly decoded:
To this paritytech/bn says it is an invalid curve point. Is any other client passing this test? Unfortunately only having hashes for state tests doesn't give any idea what it is expecting. Here is the test source: https://github.com/ethereum/tests/blob/0eef2f31ab59016a7ccad2a99d4644f753eebcb9/src/GeneralStateTestsFiller/stZeroKnowledge2/ecmul_0-3_5616_28000_96Filler.json Since it has an EVM blob I am not sure what it is intended to do. @winsvega any ideas? Are there any sources to those EVM blobs? |
@holgerd77 we would need to update our test repo after ethereum/tests#477. I would like to verify if the bitwise stuff still works. |
Updated ethereumjs-testing to v1.2.0 (submodule 428842e)