Commit Graph

69 Commits

Author SHA1 Message Date
andri lim a86979eaa3 fix create2 gasCost 2019-05-13 10:26:28 +03:00
andri lim 956a51c2ed activates constantinople general state test 2019-05-13 10:26:28 +03:00
andri lim 86d5653a4c make test green 2019-05-13 10:26:28 +03:00
andri lim 213fb3b971 constantinople's skeletal implementation 2019-05-13 10:26:28 +03:00
Bruno Škvorc 023b90fde8
Merge pull request #286 from kdeme/feature/whisper-rpc
[WIP] Initial implementation of Whisper RPC
2019-05-01 23:00:54 +02:00
kdeme 7ab84641d6 Fix, improve and activate rpc test 2019-04-26 13:38:50 +02:00
andri lim fd8f774386
activates byzantium gst test, GST +153 2019-04-26 07:31:11 +07:00
andri lim 81953d8108
activates EIP158 tests, GST -152 2019-04-15 22:09:46 +07:00
andri lim d039b88f48
activates Tangerine GST, GST +12 2019-04-08 08:06:40 +07:00
andri lim 4383831772
separate Frontier and Homestead opcode dispatcher 2019-03-18 11:27:32 +07:00
andri lim 0b43b143b1
add config to gst 2019-03-18 10:05:24 +07:00
andri lim 31e8b3d7ed
activates Frontier fork in GST, +125 -57 2019-03-18 09:15:37 +07:00
andri lim 2bd5c99b27
add debugging caps to gst 2019-03-18 08:55:02 +07:00
andri lim 3844bc9a11
faster gst helpers 2019-03-15 22:34:05 +07:00
andri lim 38757c956d gst refactor: share the same tx.getSender with rest of Nimbus 2019-03-04 11:56:50 +02:00
andri lim dfeb0ab3b9 allow Callcode1024BalanceTooLow.json to fail on 32 bit 2019-02-18 13:16:04 +02:00
andri lim b8ada41ce0 allow 'call0.json' to fail on 32 bit 2019-02-07 11:01:43 +01:00
Yuriy Glukhov 481c6cf4ed Use nim-eth (#224) 2019-02-05 20:15:50 +01:00
andri lim 74d728f962 pass additional 15 general state tests 2019-01-06 13:16:45 +02:00
andri lim 83e01994df add total count to test helpers 2018-12-26 23:45:57 +02:00
Ștefan Talpalaru 115843487c
general-state testsuite changes and better fork selection
- skipped the tests in allowedFailInCurrentBuild()
- replaced doAssert() with check() in testFixtureIndexes() so we can see
  both hash values on failure
- checking filename extension for JSON tests to avoid editor swap files
- replaced the duplicated block values in the main net's ChainConfig
  with values from forkBlocks
- allowed overriding the current fork in computations, because the old
  strategy of only looking at the block number doesn't work with JSON tests
  where the block number is usually 1
- explicitly pass the fork to gasCosts() and use it for conditional cost
  calculation
- fixed a logic error in the CREATE opcode
- fixed VM selection based on current fork in updateOpcodeExec()
- single point of control for supported forks in tests (just one fork, at the
  moment)
- 44 new test failures (that were probably passing for the wrong reasons)
2018-12-07 18:18:29 +01:00
coffeepots f7d858d58b Add missing .json 2018-11-13 19:45:34 +00:00
coffeepots 6dcb639e64 Add 32 bit failures to GST CI exclusion 2018-11-13 19:45:34 +00:00
coffeepots f99138dca6 Merge branch 'call-fixes-precompiles' 2018-11-12 15:57:54 +00:00
coffeepots 7c778867a2 Allow simpler json files to be processed, add dir sep for echo 2018-10-10 17:26:32 +01:00
Dustin Brody 7459650663 only disable 32-bit-failing tests in 32-bit builds 2018-10-04 17:52:58 +00:00
Dustin Brody 7aa0c386dd some simplification and cleanup 2018-10-04 17:52:58 +00:00
tersec 4f04332205
Refactor contract creation into transaction code from P2P code; get 14 new GSTs working (#163)
* checkpoint where refactoring and calling from GST runner doesn't break anything

* 14 new GSTs pass by refactoring contract creation out of p2p/chain and using from GST test runner

* 2 of 14 new tests fail in 32-bit builds

* switch from CREATE_CONTRACT_ADDRESS to isContractCreation

* switch another CREATE_CONTRACT_ADDRESS to isContactCreation
2018-09-29 15:36:42 +00:00
tersec d4e95fae94
refactor aspects of transaction processing out of GeneralStateTests handler; get p2p/chain runnning through block 48680; combine/deduplicate two different but equivalent methods of caulculating transaction intrinsic gas cost; fix BaseTransaction references to just Transaction references in hitherto unreferenced stubbed out source so it builds; clean up some imports from refactoring (#161) 2018-09-27 19:09:26 +00:00
Zahary Karadjov 74f6f0b738 Deal with the refactoring in status-im/nim-rlp#20 2018-09-26 12:58:23 +03:00
tersec 690ce2cf97
Partly fix state_db getCode for 20 new working GeneralStateTests (#156)
* partly fix state_db getCode to get 20 new working GeneralStateTests; remove 2 functions which existed as workarounds; switch all remaining setBalance calls in GeneralStateTestRunner to subBalance (addBalance calls already changed)

* two of the 20 new tests don't work in 32-bit builds
2018-09-20 21:36:57 +00:00
Dustin Brody 8e231b566c
set to allow-fail another dozen or so tests which have 32-bit issues and integrate with CI (#154) 2018-09-19 17:57:45 +00:00
Dustin Brody 8f4e1a4445
integrate GeneralStateTest runner into CI with 775 running tests (#153)
* fix 32-bit issue in AppVeyor

* allow another dozen or so GeneralStateTest fixtures which work on 64-bit, but not on 32-bit platforms, to safely-fail, but demarcate them separately to facilitate debugging

* steal fa672600eb from @coffeepots fix-int32-high-zero branch
2018-09-19 16:46:14 +00:00
Yuriy Glukhov 75f973e654 Fixed test 2018-09-19 18:41:17 +03:00
Dustin Brody fe761cd4ff 14 additional GeneralStateTests and clean up some empty hex string parsing kludginess 2018-09-17 13:41:32 +00:00
Dustin Brody 22882edf4d
get 106 more generalstatetests working by detecting computation errors and allowing empty code accounts (#145) 2018-09-13 15:00:23 +00:00
Dustin Brody 3cc7e9d8fd
skip 1000+ tests which either are slow (quadratic tests) or don't support Homestead; add ~50 new working tests (#143) 2018-09-12 16:33:53 +00:00
Dustin Brody 00c4df6153
detect erronous transactions and roll back to previous state, without refunding any gas, per yellow paper (#141) 2018-09-11 13:15:59 +00:00
Dustin Brody e24f7fe144 unskip some other (failing) tests 2018-09-10 19:42:45 +03:00
Dustin Brody fd07d6fed1 A simple/basic GeneralStateTest runner which gets 400+ of them correct 2018-09-10 19:42:45 +03:00
Dustin Brody 9e1be6438e Extract transaction senders from GeneralStateTest fixtures 2018-09-06 11:20:43 +03:00
Dustin Brody 4262ea8670 fix (1) overflow/signed confusion when reading large-valued storage entries; (2) adjust test fixture validity for GeneralStateTests; (3) remove incorrect usage of state trie for code (not codehash) storage; add ability to display state; (4) avoid double-hashing keys for already-hashed SecureHexaryTrie for storage; (5) add intentionally local workaround for empty code in GeneralStateTest fixtures lacking 0x prefix; (6) fix nonce parsing, which is always hex string in test fixtures 2018-09-04 17:55:30 +03:00
coffeepots bda219f8fe Make tests green (AccountNonce) 2018-09-02 03:26:22 +01:00
coffeepots 5cd81ef3ac Update doAssert to display the correct contents of stint values 2018-08-17 17:16:40 +03:00
coffeepots 1bf432fd46 Fix for VMTest parseHex in 32 bit 2018-08-17 17:16:40 +03:00
Dustin Brody 21fcaeb8ef add inexpensive vmPerformanceTests, especially Ackermann and Fibonacci tests; whole suite still runs in a few seconds 2018-08-07 12:24:37 -07:00
Dustin Brody 8325b6461f Stop skipping all but time-intensive vmPerformance VMTests by default 2018-08-02 09:37:16 -07:00
Dustin Brody d94dfbdb43 following https://github.com/ethereum/tests/pull/444 synchronize with upstream test changes by removing many which rely on mocking BLOCKHASH/BALANCE just for VM tests (#92) 2018-08-02 14:21:42 +02:00
Dustin Brody 1921f9b389 arith.json, boolean.json, and mktx.json test fixtures don't provide useful information (#90) 2018-07-30 17:29:13 +02:00
Dustin Brody 90165f4f6b Ethereum test fixtures provide storage values as hex literals (e.g., 0x04), not decimal literals 2018-07-25 09:31:57 -07:00