Commit Graph

610 Commits

Author SHA1 Message Date
protolambda 7cdec746b4 fix field iteration crash in ssz typing 2019-06-20 20:20:45 +02:00
protolambda a33c67894e update ssz testing/debug utils 2019-06-20 20:20:45 +02:00
protolambda 6b82e3faa5
Modifications from Vitalik, to enable SSZ Partials 2019-06-20 20:20:07 +02:00
protolambda 5be0c57aad fix linting + mypy 2019-06-20 20:17:29 +02:00
protolambda 4aefc078e9
list-rework type fixes 2019-06-20 20:11:39 +02:00
protolambda 8c6ddd5233 container field coercion 2019-06-20 20:05:57 +02:00
protolambda 73ba419d64 check virtual lengths, fix imports 2019-06-20 20:05:57 +02:00
protolambda 0a43003b42 minor test improvements 2019-06-20 20:03:21 +02:00
protolambda 8bd2e878ef bugfixes and typing improvements 2019-06-20 20:03:21 +02:00
protolambda 08e6f32f38 typing improvements, type testing 2019-06-20 20:03:21 +02:00
protolambda 4ebdceaf12
highly experimental typing 2019-06-20 19:57:50 +02:00
protolambda 108410d862 Change byte to explict class instead of newtype 2019-06-20 19:56:09 +02:00
protolambda 82e7392b17 default method for container is recognized now 2019-06-20 19:56:09 +02:00
Diederik Loerakker 3a9b1fb72c Update test_libs/pyspec/eth2spec/utils/ssz/ssz_impl.py
Co-Authored-By: vbuterin <v@buterin.com>
2019-06-20 19:56:09 +02:00
Diederik Loerakker 54a1fa9abe Update test_libs/pyspec/eth2spec/utils/ssz/ssz_impl.py
Co-Authored-By: vbuterin <v@buterin.com>
2019-06-20 19:56:09 +02:00
protolambda cd5f59eb74
fix bytes value check, fix default-type checking 2019-06-20 19:55:53 +02:00
protolambda b6cf809d9b
more improvements, and implement new space-efficient merkleization with padding support 2019-06-20 19:54:59 +02:00
protolambda d1ecfd510e
typing improvements 2019-06-20 19:53:32 +02:00
vbuterin 8919f628cb Update test_libs/pyspec/eth2spec/utils/ssz/ssz_impl.py
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2019-06-20 19:52:02 +02:00
Vitalik Buterin 7c4232455c Added get_container_type to get_zero_value 2019-06-20 19:52:02 +02:00
protolambda 5ddfe34f0c
Simplified SSZ impl 2019-06-20 19:51:38 +02:00
Carl Beekhuizen e0d814df32
Merge branch 'dev' into executable_fork_choice
* dev:
  Increase historical length and cleanups (#1196)
2019-06-19 22:43:14 +02:00
Carl Beekhuizen 241fe34da7
Workaround for python3.6 2019-06-19 22:37:51 +02:00
Danny Ryan 29dbe1b880 Increase historical length and cleanups (#1196)
* increase historical length and a few cleanups
2019-06-19 20:59:44 +01:00
Carl Beekhuizen 3418c3506f
Merge dev and resolve conflicts (please let the CI tests pass with the new dev) 2019-06-19 20:27:54 +02:00
Hsiao-Wei Wang dc01218182
Add `dataclasses==0.6` to setup.py 2019-06-18 14:23:31 -06:00
Carl Beekhuizen 31a4700223
Merge conflicts on `dev` 2019-06-17 22:09:43 -04:00
Hsiao-Wei Wang 01e9f18713
Merge branch 'dev' into mypy 2019-06-17 17:51:46 -04:00
Hsiao-Wei Wang 9af9bbf42b
Merge branch 'dev' into mypy 2019-06-17 17:51:00 -04:00
Danny Ryan d7ac601b9e
Merge branch 'dev' into v071backport 2019-06-17 13:42:27 -06:00
Carl Beekhuizen 2ea6cede3e
Moves fork-choice objects away from SSZ 2019-06-17 10:48:33 -04:00
Danny Ryan ac76c6d279
Merge pull request #1182 from ethereum/cov-reports
generate coverage reports in make test, open as html site
2019-06-16 17:42:57 -06:00
Danny Ryan 2f9c554bf7
minor fix to makefile, add codecov instructiosn to readme 2019-06-16 17:38:48 -06:00
Danny Ryan 25a16bd26a
Merge pull request #1178 from ethereum/decode-with-pyssz
Fuzzing utilities package / SSZ decoding for spec
2019-06-16 17:25:50 -06:00
Carl Beekhuizen 9f2d06b2e7
Somehow I had indented with 5 spaces everywhere. 2019-06-16 16:02:56 -04:00
Carl Beekhuizen f421850dc9
Fixes tests! Thanks @hwwhww! 2019-06-16 15:53:42 -04:00
Carl Beekhuizen 4deb311b71
Debugging 1st test 2019-06-16 12:17:31 -04:00
Carl Beekhuizen 5d10cd63c7
SSZ (partially) handles Dicts 2019-06-16 09:52:52 -04:00
Carl Beekhuizen 061ecf7d0a
Adds fork-choice tests 2019-06-15 19:13:56 -04:00
Hsiao-Wei Wang 00a68e28b5
Define Custom Types via function_puller 2019-06-15 16:57:50 -04:00
Justin Drake ed748a7d76 Address Danny's comments 2019-06-15 15:09:50 +01:00
protolambda 1c51982c6b
generate coverage reports in make test, open as html site 2019-06-14 23:12:04 +02:00
protolambda 367586d888
remove need for presets loading, just test mainnet, not too many/large objects anyway 2019-06-14 21:31:33 +02:00
protolambda d4bf55e5a1
update pyssz to include deserialization bugfix 2019-06-14 21:24:24 +02:00
protolambda 895ab67815
fix decoder, also fix bug in pyssz, see PR 74 2019-06-14 20:41:08 +02:00
protolambda 01be8b7e65
minor fix 2019-06-14 19:16:15 +02:00
protolambda 7b0ffc1ace
move decoder for fuzzing, minor fixes, update dependency to support SOS style offsets 2019-06-14 19:09:49 +02:00
Danny Ryan a6230425b8
Merge branch 'dev' into container-cleanup 2019-06-14 10:36:41 -06:00
Danny Ryan f834f727fa
lint 2019-06-13 18:03:20 -06:00
Danny Ryan c391017a05
address #1146 by inserting state root and re-signing blocks in tests 2019-06-13 17:57:29 -06:00
protolambda e7bb9bf19b
SSZ decoding through pyssz, with translation of types/values 2019-06-14 01:56:36 +02:00
Diederik Loerakker e4704e08cc
Merge pull request #1175 from ethereum/bytes-type-error
fix #1169 bytes type error
2019-06-13 22:49:19 +02:00
Danny Ryan 4a08abfa1d
ensure sanity tests run with bls 2019-06-13 14:47:53 -06:00
Danny Ryan 7c0cc7f801
fix #1169 bytes type error 2019-06-13 14:32:45 -06:00
Hsiao-Wei Wang 7a366828ba
Make phase0 pass 2019-06-12 14:54:00 -04:00
Danny Ryan 577f76aff5
Merge pull request #1165 from ethereum/phase-generators
phase restricted generators
2019-06-11 16:48:18 -06:00
protolambda 9ec395c04f
fig linting + improve docs + structure of hash optimization 2019-06-11 21:53:38 +02:00
protolambda f4814862fe
fix typing check, add zero-hash cache to hash function 2019-06-11 19:23:45 +02:00
protolambda 22f624e12e
re-order type check for more speed 2019-06-11 18:08:27 +02:00
protolambda 7fafebd6cf
missed one case, fix withdrawal byte <> int problem 2019-06-11 17:32:42 +02:00
protolambda 2d636ddf5a
BLS withdrawal byte is formatted as int now, but still one byte. Justin changed spec, now fix tests + configs 2019-06-11 17:27:34 +02:00
Danny Ryan cc625c7d6d
lint 2019-06-11 09:26:23 -06:00
Danny Ryan ef1ef753a3
comment out transfer test from sanity tests 2019-06-11 09:16:37 -06:00
protolambda e86771250b
Fix tests to use new constant name 2019-06-11 17:16:02 +02:00
protolambda 46d8422510
fix ssz container recognition for generators 2019-06-11 16:49:36 +02:00
Hsiao-Wei Wang f2c33529df
Add mypy check in CI 2019-06-11 00:45:00 -04:00
Hsiao-Wei Wang 9f454185f8
WIP!
1. Use custom types in SSZ declaration
2. Casting
2019-06-11 00:44:54 -04:00
Hsiao-Wei Wang 8b64f37d22
Make uint64 be `class` for type hinting 2019-06-10 23:16:59 -04:00
Danny Ryan 94d4e3a944
operations suite generator for phase0 2019-06-10 20:05:43 -06:00
Danny Ryan c4bf772d30
demo phase restricted generators for epoch processing 2019-06-10 17:26:39 -06:00
Justin Drake 05f1a44a38 Fix tests 2019-06-10 21:20:45 +01:00
Justin Drake dc56d87eef Revert a couple of renamings 2019-06-10 21:16:51 +01:00
Danny Ryan e68b495ada
Merge branch 'dev' into master-port 2019-06-10 10:53:13 -06:00
Hsiao-Wei Wang 9fc197af67
class Bytes32 2019-06-10 11:10:13 -04:00
Justin Drake 565f61dfaa Cleanup containers 2019-06-09 20:41:21 +01:00
Carl Beekhuizen 67471a8d6e
Rework of phases decorator 2019-06-06 23:30:40 +02:00
Carl Beekhuizen 956c476d81
Move over to parameterised decorators for phases 2019-06-06 16:23:30 +02:00
Carl Beekhuizen 35c03c5f3e
Adds review suggestions I missed 2019-06-06 11:45:22 +02:00
Carl Beekhuizen 4c1b9ef6d6
Fixes custody key reveal test bug 2019-06-06 11:04:55 +02:00
Carl Beekhuizen 60d9dc68c4
Apply suggestions from @djrtwo's code review 2019-06-05 21:49:30 +02:00
Carl Beekhuizen e498ff7e94
Separates tests into phases 2019-06-05 21:28:30 +02:00
protolambda b9abc5f2cf
List[uint64] is not like a type but just for annotation, same for other Generics with __args__, Vector/BytesN work, because their metaclasses produce non-parametrized types, so don't check vector values when type contains args 2019-06-05 18:53:34 +02:00
protolambda 1cc7c7309d
change to issubclass, hope parametrized external type is ok 2019-06-05 18:28:09 +02:00
protolambda a7554d503c
fix for typing check of vector elements with non-type element type (annotation) 2019-06-05 18:02:39 +02:00
Carl Beekhuizen e5fb91c4a2
Make test generators work with phase 1 execution 2019-06-05 16:23:44 +02:00
Carl Beekhuizen d761b6f041
Implements new SSZ types 2019-06-05 15:29:26 +02:00
protolambda 4bf3a26afc
fix formatting 2019-06-04 18:18:18 +02:00
protolambda 6168a90a20
speed and simplicity improvement for next_power_of_two function 2019-06-04 18:12:23 +02:00
protolambda 578328bb54
call comments: remove partials from ssz rework PR, review that seperately 2019-06-04 18:11:50 +02:00
Carl Beekhuizen f6bb47c402
Apply @dankrad's suggestions from code review 2019-06-04 17:08:18 +02:00
Carl Beekhuizen 9d00a76493
Skips tests properly 2019-06-04 16:14:14 +02:00
protolambda 59137fd5a6
fix get_zero_value exception raise + fix up type checks 2019-06-04 15:40:15 +02:00
Carl Beekhuizen c06a60c95a
Fix descriptions
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-06-04 15:37:08 +02:00
Diederik Loerakker 8631cad251
Apply suggestions from code review
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-06-04 15:22:34 +02:00
Hsiao-Wei Wang 6d55ba9c8c
minor refactor 2019-06-04 18:59:52 +08:00
Hsiao-Wei Wang e2eab66a9e
Refactor 2019-06-04 17:55:05 +08:00
Hsiao-Wei Wang a7ee6f108e
Refactor 2019-06-04 17:42:21 +08:00
protolambda fb584bc067
fix linting dependency + caching issue 2019-06-03 17:23:30 +02:00
Hsiao-Wei Wang a5576059f8
Fix `ssz_partials.py` linter errors 2019-06-03 17:19:22 +08:00
protolambda 8e8ef2d0a4
Fix forgotten setup.py change, make generators using ssz work again 2019-06-01 03:19:29 +02:00
protolambda fae1e9285d
resolve some new lint issues detected by newer version, and a few looked over ones 2019-06-01 02:40:29 +02:00
protolambda f3a517b6f6
fix minor lint problems 2019-06-01 02:32:11 +02:00
protolambda 7df788c7d5
resolve linting problems, except ssz-partials 2019-06-01 02:22:14 +02:00
protolambda df25f22f01
get rid of scope-problem inducing init trick 2019-06-01 01:55:20 +02:00
protolambda 77d4f0b407
update generator type hinting to use new type syntax 2019-06-01 01:53:50 +02:00
protolambda 33233c98ff
fix ssz imports 2019-06-01 01:51:09 +02:00
protolambda 1c734d30a0
fix utils init 2019-06-01 01:50:28 +02:00
protolambda 3cb43fcc27
fix ssz infer type decorator, one None argument too many 2019-06-01 01:49:52 +02:00
protolambda e044305457
Merge branch 'dev' into ssz-impl-rework 2019-06-01 01:34:49 +02:00
Danny Ryan 8b65b95bd4
port deposit test from #1133 2019-05-31 13:54:58 -06:00
Carl Beekhuizen 28d98b5cf4
PEP8 cleanups 2019-05-31 13:20:10 +02:00
Carl Beekhuizen 92916e5383
Tests run with both spec versions 2019-05-31 13:08:42 +02:00
Carl Beekhuizen 9e8a969f22
Removes old tests & fixes phase1 tests 2019-05-31 12:44:34 +02:00
Carl Beekhuizen 0c57cfcaa7
state builds from spec version 2019-05-31 11:33:47 +02:00
Carl Beekhuizen ec9f8f15ed
Adds Custody Tests 2019-05-31 11:32:53 +02:00
Carl Beekhuizen ed71efc061
state is kwarg 2019-05-31 10:41:39 +02:00
Carl Beekhuizen 5155bc6c4f
Makes everything pass around 2019-05-30 22:57:18 +02:00
Vitalik Buterin 3630b2ea9f Merge branch 'ssz-impl-rework' of github.com:ethereum/eth2.0-specs into ssz-impl-rework 2019-05-30 09:42:47 -04:00
Vitalik Buterin 8fae0f8c78 Added support for SSZ partials 2019-05-30 09:42:42 -04:00
Hsiao-Wei Wang ebdf74c6b8
kick the CI 2019-05-30 15:57:39 +08:00
Michael Sproul cc5b172da3 Test deposit top-up with inconsistent withdrawal credentials (#1133)
* Simplify deposits

* Avoid divisions by zero

Possible fix to avoid four cases of divisions by zero:

* `return state.validator_registry[index].effective_balance // adjusted_quotient // BASE_REWARDS_PER_EPOCH`
* `rewards[index] += get_base_reward(state, index) * attesting_balance // total_balance`
* `validator.effective_balance * min(total_penalties * 3, total_balance) // total_balance`
* `rewards[index] += base_reward * attesting_balance // committee_balance`

See also #1107.

* fix deposit test for new index handling

* tests: deposit with inconsistent withdrawal credentials

* Update README.md

* Update 0_beacon-chain.md

* Fix linter errors

* Update test_process_deposit.py

* fix deposit test

* fix lint
2019-05-29 20:38:55 -06:00
Danny Ryan f0314bec52
Merge branch 'dev' into JustinDrake-patch-13 2019-05-29 20:15:17 -06:00
Hsiao-Wei Wang 6ec59867ef
Fix linter errors 2019-05-30 09:53:46 +08:00
Danny Ryan 6286fb3fb5
Merge branch 'dev' into JustinDrake-patch-13 2019-05-28 18:15:33 -06:00
Vitalik Buterin 053d6e7805 Simplified hash tree root 2019-05-28 14:33:12 -04:00
Vitalik Buterin 4955c40a7b merge 2019-05-28 09:44:53 -04:00
protolambda 401dba3230
Merge branch 'bls-setting' into v06x-to-dev 2019-05-28 15:38:08 +02:00
protolambda 6ffd41650b
suggestion from hww, reduce into one bls_setting key 2019-05-28 15:35:00 +02:00
Vitalik Buterin 19601df572 Starting work on partials 2019-05-28 09:30:35 -04:00
Hsiao-Wei Wang f0ceefc36d
Make `test_libs/pyspec/tests` pass
1. Use `typing_inspect` library to check if it's `typing.List[Any]`. Use it in `is_list_type`.
2. Add `__hash__`, `__eq__`, `__repr__` methods to some classes.
2019-05-28 13:57:42 +08:00
Hsiao-Wei Wang 00ffaf4d71
Fix ssz path 2019-05-28 12:37:41 +08:00
protolambda 5e28adf556
bugfix: don't forget about var-length bytes getting a length mixin 2019-05-28 00:51:27 +02:00
protolambda 9e61cc2ed3
bugfix: typing edge-case: python bool is subclass of int. 2019-05-28 00:45:13 +02:00
protolambda 0e9a047b1d
Merge branch 'dev' into ssz-impl-rework 2019-05-28 00:42:35 +02:00
Danny Ryan 47f3df6d0a
fix deposit test for new index handling 2019-05-27 16:40:00 -06:00
protolambda d023d2d20f
lots of bugfixes 2019-05-27 23:40:05 +02:00
protolambda 0f79ed709b
update yaml encoder/decoder and obj randomizer for typed ssz usage 2019-05-27 22:19:18 +02:00
protolambda c68944bd53
separate type (direct) from kinds (alias incl) 2019-05-27 22:18:34 +02:00
protolambda 87b3466eae
update encoder and decoder for reading from parsed data 2019-05-27 21:46:14 +02:00
protolambda d63b553a2d
efficiency bugfix in bytes encoding, improve typing doc + bugfix 2019-05-27 21:45:47 +02:00
protolambda f3088884b3
Minor adjustments + getting the beacon spec doc ready 2019-05-27 20:29:53 +02:00
Danny Ryan d3d8b36365
Merge branch 'dev' into v06x-to-dev 2019-05-27 11:09:52 -06:00
protolambda d5eab257d0
improve impl, box less used integer types, use uint64 as default 2019-05-27 18:01:46 +02:00
Danny Ryan 8d420c0780
fix prestate for process registry updates 2019-05-27 08:38:37 -06:00
Vitalik Buterin e14f789779 Presentation edits 2019-05-27 08:07:00 -04:00
Vitalik Buterin 5b6a98b107 Some updates 2019-05-25 14:06:42 -04:00
Carl Beekhuizen c4b9c6372c
Merge in state_transition.py 2019-05-25 15:54:14 +02:00
protolambda ed4416ba34
update SSZ implementation 2019-05-25 00:05:03 +02:00
protolambda b12031b48d
not signed by default 2019-05-24 18:38:51 +02:00
protolambda 321baf79f4
fix missing imports from earlier code suggestion 2019-05-24 15:03:03 +02:00
protolambda 73f0f74fb0
run process yield-from test pattern 2019-05-24 14:58:06 +02:00
Carl Beekhuizen d41bc67ec8
merge dev -> dankrad-patch-7 2019-05-24 14:56:10 +02:00
Diederik Loerakker f2e3cd01aa
Update test_libs/pyspec/eth2spec/test/epoch_processing/test_process_crosslinks.py
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-05-24 08:34:14 -04:00
protolambda 57dd9fc4ff
fix syntax 2019-05-24 01:15:49 +02:00
protolambda f98a8d534e
update epoch processing tests to conform to processing pattern, add docs for epoch sub-transition testing 2019-05-23 23:50:58 +02:00
protolambda 21c48b574f
move sanity tests, separate slot tests 2019-05-23 23:32:21 +02:00
protolambda 1bbab9aa00
more direct in what is happening in test utils 2019-05-23 22:28:11 +02:00
protolambda f0c9e7a395
ignore just the one crosslinks case that is incompatible with mainnet 2019-05-23 22:26:36 +02:00
Danny Ryan 3500bde594
only sign in test_double_late_crosslink when necessary 2019-05-23 11:01:07 -06:00
protolambda 754d972108
implement epoch processing test-gen, bugfix tests 2019-05-23 15:13:37 +02:00
protolambda 958f71bb68
minor underflow fix for proposer slashing test 2019-05-22 21:03:46 +02:00
protolambda 58fd712607
fix style issue with deposit processing helper 2019-05-22 20:50:18 +02:00
Carl Beekhuizen 271f615873
Dramatically speed up tests 2019-05-22 12:40:57 +02:00
Carl Beekhuizen 9058647b67
flake8v3.7->flake8v3.5 2019-05-22 10:28:03 +02:00
Danny Ryan dad89ae926
minor lint 2019-05-21 23:20:12 -06:00
Danny Ryan 2c79e584c2
minor lint 2019-05-21 22:42:47 -06:00
protolambda 7d3147d418
add inconsistent bitfields test 2019-05-22 04:19:54 +02:00
protolambda 6b5f4b44ea
avoid zero constant for deposits fork-version, just default to it 2019-05-22 01:39:20 +02:00
protolambda a4363ba096
tests for invalid signatures 2019-05-22 00:52:57 +02:00
protolambda 12af078a6c
make decorators return wrapped fn results properly 2019-05-21 23:03:59 +02:00
protolambda 0e136b1104
update yaml and eth-utils dependencies 2019-05-21 22:55:22 +02:00
protolambda 8303c58aa4
bugfix, make BLS wrapper propagate test output properly 2019-05-21 22:53:46 +02:00
protolambda cfc037fe75
tags applied after generation of vector (and only if), make BLS decorator 2019-05-21 22:28:47 +02:00
protolambda ee9c1d911f
test tagging pattern 2019-05-21 21:51:28 +02:00
protolambda 4d08e9d7d6
signed block header 2019-05-21 21:22:32 +02:00
Danny Ryan 847fcf52cc
utilize bls_domain directly for deposits 2019-05-21 11:30:38 -06:00
Carl Beekhuizen 24c4d21d5e
Minor edits + PEP8 2019-05-21 12:41:24 +02:00
Carl Beekhuizen 6b062405c9
merge dev -> carl-exec-phase1 2019-05-20 20:59:08 +02:00
protolambda ab251d4797
make tests work fast + bls signed optionally 2019-05-20 20:44:54 +02:00
protolambda b0aea2a111
bugfix block proc transfer test 2019-05-20 19:38:18 +02:00
Carl Beekhuizen 65b0701f8c
Helpers depend on spec version and p1 tests work 2019-05-20 18:14:37 +02:00
Carl Beekhuizen b68c471a54
Moves spec to global variable 2019-05-20 17:08:03 +02:00
Carl Beekhuizen cfed4bb41c
Adds missing functions 2019-05-20 10:50:07 +02:00
Danny Ryan 4c5e054883
fix previous crosslink root test 2019-05-19 16:11:39 -06:00
Danny Ryan 62f8d19ffc
add some attestation crosslink tests 2019-05-19 16:06:10 -06:00
Danny Ryan a2108741e8
fix tests with new starT_epoch and end_epoch in Crosslink 2019-05-19 15:47:59 -06:00
protolambda 90bcbd6ff4
fix attester slashing test 2019-05-17 21:56:41 +02:00
protolambda a10aba4bb9
make valid attest creation fill aggregate bitfield 2019-05-17 21:36:17 +02:00
protolambda 0f00b43698
reduce validator key count again, fix valid attestation creation - snippet from Danny 2019-05-17 21:26:18 +02:00
protolambda 08d0ff9336
fix attestation aggregate bitfields 2019-05-17 21:20:09 +02:00
protolambda 183e3a5153
minor refactor import fix 2019-05-17 21:02:00 +02:00
protolambda f937dec2a1
more keys, more validators, fix import 2019-05-17 20:54:34 +02:00
protolambda 62999d8ded
import fixes + fix import loop + fix minor signing things 2019-05-17 20:31:21 +02:00
Carl Beekhuizen 306a613c8a
Simplify minimal SSZ again 2019-05-16 21:01:32 +02:00
Carl Beekhuizen 3e085947b7
Linted :) 2019-05-16 12:38:50 +02:00
Carl Beekhuizen b1711b4ff1
Implements parameterised phase1 tests 2019-05-16 12:10:08 +02:00
Carl Beekhuizen 1b2e7c1b6e
Passes spec & helpers module to tests phase0 2019-05-16 11:07:21 +02:00
protolambda eea6c8f645
voluntary exit testing sigs 2019-05-15 23:26:05 +02:00
protolambda 9f00e4f0e4
sign transfers 2019-05-15 21:07:44 +02:00
protolambda 32efe49b33
proposer slashing signing 2019-05-15 21:07:24 +02:00
protolambda 242bb8c912
sign deposits 2019-05-15 20:50:20 +02:00
protolambda b92a9d8857
sign block headers 2019-05-15 20:50:11 +02:00
protolambda a9069cbf9e
attester slashing signing 2019-05-15 19:53:35 +02:00
protolambda 4dad74eec3
attestation signing 2019-05-15 19:47:50 +02:00
protolambda 8a43ec0132
add signing methods 2019-05-15 19:31:02 +02:00
protolambda 5c3e760c28
update remaining imports 2019-05-15 18:58:12 +02:00
protolambda e07f1bc98f
update imports to new helpers + fix up imports 2019-05-15 18:45:25 +02:00
protolambda a4e22639f3
fix/update bls funcs for testing 2019-05-15 18:37:11 +02:00
protolambda 51c82c5b81
clean up helpers, make helpers pkg 2019-05-15 18:36:32 +02:00
protolambda ce4daea201
Merge branch 'bls-test-deco' into tests-with-sigs 2019-05-15 17:41:04 +02:00
Carl Beekhuizen becda4f463
Several changes before I break everything 2019-05-15 16:26:49 +02:00
Carl Beekhuizen 77b29f4960
Early derived secret testing 2019-05-15 15:17:01 +02:00
Carl Beekhuizen f3742566f7
The new test structure starts to take shape 2019-05-15 15:02:27 +02:00
Carl Beekhuizen c10fb92776
Merge dev -> dankrad-p-7 2019-05-15 10:36:01 +02:00
protolambda 904e2e9c0c
BLS on/off deco 2019-05-13 23:15:02 +02:00
Danny Ryan 27c8e41b32
Merge branch 'dev' into JustinDrake-patch-14 2019-05-13 16:29:29 -04:00
protolambda 08faa86d70
POC ssz types spec build + update spec defs, typing still needs work 2019-05-12 23:56:53 +02:00
protolambda 761c9e55fe
SSZ impl. rework started, see issue 1064 2019-05-12 23:16:17 +02:00
protolambda 4f3f68bc12
signatures in tests, most block-ops updated, still many to go 2019-05-11 21:31:37 +02:00
protolambda 680017f69c
voluntary exit test case: invalid, exit in future 2019-05-11 18:33:41 +02:00
protolambda 636a45a415
voluntary exit test case: invalid index 2019-05-11 18:31:05 +02:00
protolambda 17d057e503
improve transfer testing 2019-05-11 18:24:30 +02:00
protolambda b4be220a48
new attestation tests
Co-Authored-By: Dmitry S <zilm13@users.noreply.github.com>
2019-05-11 17:52:44 +02:00
protolambda a39623a95a
fix test tooling bug 2019-05-11 17:51:02 +02:00
protolambda 3189cf0079
new proposer slashing tests
Co-Authored-By: jannikluhn <jannik@brainbot.com>
2019-05-11 17:01:12 +02:00
Hsiao-Wei Wang e1343f99bb
Fix pyspec/eth2spec/debug lint 2019-05-09 14:34:23 +08:00
Dankrad Feist ec230f443a
Merge branch 'dev' into dankrad-patch-7
# Conflicts:
#	specs/core/1_custody-game.md
#	specs/core/1_shard-data-chains.md
2019-05-09 01:00:25 +01:00
Dankrad Feist 3217938b6f
Re-add early derived secret reveal tests 2019-05-08 23:48:12 +01:00
Dankrad Feist 6ab55efd3d
Phase 0 tests work on phase 1, yay :) 2019-05-08 23:30:08 +01:00
protolambda d9baee2481
move tests to standard pkg/test folder, enable conftest options with soft-import, update readme and makefile 2019-05-08 18:14:47 +02:00
protolambda f9539ed1ab
move tests, update operations test vector generation 2019-05-08 17:33:09 +02:00
Danny Ryan 33e5b98f17
Merge branch 'dev' into JustinDrake-patch-10 2019-05-08 08:42:47 -06:00
Danny Ryan 513c44bd3d
add back in empty attestation test 2019-05-08 08:38:14 -06:00
protolambda 683fe0062f
fix blocks 2019-05-07 18:38:58 +02:00
Dankrad Feist 1db49f4c98
Merge branch 'dev' into dankrad-patch-7
# Conflicts:
#	specs/core/1_custody-game.md
2019-05-07 12:27:24 +01:00
Dankrad Feist a604d03dff
Basic phase 1 pulling + correcting syntax errors in phase 1 2019-05-07 12:13:22 +01:00
Justin 9eeca0cdbd
Merge branch 'dev' into JustinDrake-patch-14 2019-05-07 10:16:38 +01:00
Danny Ryan 8e619f8ab9
port finality tests to new format. still has excessive deepcopies 2019-05-06 16:23:31 -06:00
Danny Ryan e5a50bc8a0
finish port of test_sanity to new format 2019-05-06 16:12:13 -06:00
Justin Drake ea60fb632c More renaming 2019-05-06 20:49:46 +01:00
Justin Drake f4db9ebae0 Renamings triggered by HW comment 2019-05-06 18:26:14 +01:00
Justin 7ba13aa4c5
Merge branch 'dev' into JustinDrake-patch-21 2019-05-06 17:48:09 +01:00
protolambda d2afed847a
fix deposit testing generalization 2019-05-06 18:05:40 +02:00
protolambda 89a2bd2bea
work on sanity tests 2019-05-06 17:43:02 +02:00
JSON d1c96c1e0d Doc standardization (#1039) 2019-05-06 16:30:32 +01:00
protolambda 1722d58067
updat epoch processing tests 2019-05-06 17:10:43 +02:00
protolambda 922a30a619
update voluntary exit tests 2019-05-06 16:51:46 +02:00
protolambda 4820ac9d1a
update transfer tests 2019-05-06 16:35:01 +02:00
protolambda 802f2710c3
clean import, update proposer slashing test 2019-05-06 16:30:13 +02:00
protolambda 90a56e2f5b
update deposit testing 2019-05-06 16:24:11 +02:00
protolambda 9ff52193b1
update block header testing 2019-05-06 16:23:53 +02:00
protolambda 61c0ddbcbb
update attester slashing testing 2019-05-06 16:23:33 +02:00
protolambda 7bbf9ed3fc
update attestation testing 2019-05-06 16:23:15 +02:00
protolambda dcedfc350a
move out spec state test deco 2019-05-06 16:22:51 +02:00
protolambda a8d8da25fd
fix wording and improve encoding logic 2019-05-06 15:40:18 +02:00
protolambda 8b24abde31
implement spectest decorator, update attestation tests 2019-05-06 00:31:57 +02:00
Justin Drake 5fb32fd19b Fix tests 2019-05-05 12:10:39 +01:00
Danny Ryan f57d6fa28e
Merge pull request #1038 from ethereum/master
backport v0.6.1 into dev
2019-05-03 16:28:24 -06:00
Danny Ryan c011feb3c7
Merge pull request #1024 from ethereum/sos_ssz_py
implement SOS serialization in minimal_ssz.py
2019-05-03 15:43:07 -06:00
Justin Drake 197a7200ef Add HW and Danny comments 2019-05-03 21:21:42 +01:00
dankrad c0f3453093 RANDAO reveal slashing, custody period staggering and integration of custody and RANDAO reveals (#880)
* Add RandaoRevealSlashing for early Randao reveals

* add some randao reveal slashing tests

* Unifying RANDAO reveal slashing and Custody reveal slashing; implemented more lenient penalty for not-to-early reveals

* Fix custody reveal domain

* Also test exposed_randao_reveals

* Re-add exposed_randao_reveals to validator initialization

* Fix tests

* Unified Randao Reveal slashing mechanism and Custody Reveal,
CUSTODY_PERIOD_TO_RANDAO_PADDING = EPOCHS_PER_CUSTODY_PERIOD

* Move exposed_randao_reveals into separate data structure to keep validator record clean

* new shiny staggered custody periods

* Fixes style and type hinting

* removes whitespace

* Cleans up multi-line conditionals

* Make RANDAO key reveal penalties proportional to block rewards

* Minor typos

* Minor typos

* Fixes off-by one error

* Removes unnecicary whitepsace

* Clean up comments; add test for key reveal too far in the future

* Reduce the CUSTODY_PERIOD_TO_RANDAO_PADDING again

* Fix max_proposer_slot_reward

* Fix types

* Move test

* Fix RandaoKeyReveal tests

* Move all RANDAO key reveal to phase 1

* Factor out signature checking

* Some fixes

* Update specs/core/1_custody-game.md

Co-Authored-By: dankrad <dankrad@ethereum.org>

* Addressing Vitalik's suggestions: Separate RANDAO and Custody key reveals; append the cleanup of RANDAO reveals instead of adding a new function

* Remove remnants of verify_custody_key

* RandaoKeyReveal -> EarlyDerivedSecretReveal

* Make penalty proportional to number of secrets already exposed

* Update specs/core/1_custody-game.md

Co-Authored-By: dankrad <dankrad@ethereum.org>

* Update specs/core/1_custody-game.md

Co-Authored-By: dankrad <dankrad@ethereum.org>

* Update specs/core/1_custody-game.md

Co-Authored-By: dankrad <dankrad@ethereum.org>
2019-05-03 17:30:55 +08:00
Justin Drake 973f072235 Remove unnecessary test 2019-05-02 09:25:29 +01:00
protolambda bbaa1417a8
remove incorrect unnecessary offset 2019-05-02 09:16:01 +02:00
Danny Ryan 6242e54c0a
Merge branch 'JustinDrake-patch-11' of github.com:ethereum/eth2.0-specs into JustinDrake-patch-11 2019-05-01 17:06:23 -06:00
protolambda 524d7b09ba
implement SOS serialization in minimal_ssz.py 2019-05-02 00:34:17 +02:00
Danny Ryan ef72b7ec20
Merge branch 'master' into vbuterin-patch-2 2019-05-01 16:19:21 -06:00
Diederik Loerakker 9d1ec584d3
Merge pull request #1022 from ethereum/revert-981-only_setup_py
Revert 981 only setup py to master
2019-05-02 01:25:14 +08:00
Justin Drake 5df79d7565 Get rid of state_transition.py 2019-05-01 13:14:10 +01:00
Justin Drake 591a2b47c8 Simplify state_transition.py 2019-05-01 12:08:15 +01:00
Hsiao-Wei Wang 5f341ae493
Move `get_state_root` to `pyspec/tests/helpers.py` 2019-05-01 17:06:02 +08:00
Justin Drake b6b4d3cbaf Add get_state_root in tests 2019-05-01 09:30:08 +01:00
Danny Ryan b3373a2d71
fix up some PR feedback and testing for #1009 2019-04-30 12:55:14 -06:00
Danny Ryan 48bdfd8642
Merge branch 'master' into hwwhww/clean_up 2019-04-26 08:40:50 -06:00
Danny Ryan f76ade93d8
update registry tests to return the blocks that transiiton the pre_state to post_state 2019-04-26 08:27:07 -06:00
Hsiao-Wei Wang 70cd3d2253
Add `test_ejection` 2019-04-26 14:53:58 +08:00
Hsiao-Wei Wang 0de772fc1c
Add tests/epoch_processing/test_process_registry_updates.py 2019-04-26 14:43:21 +08:00
Hsiao-Wei Wang fc7d57eec6
PEP8-ish clean up 2019-04-25 16:03:02 +08:00
Danny Ryan bd50960740
tiny fix to test ouptut 2019-04-24 13:20:55 -06:00
Danny Ryan 2b999a6c7e
fix off by one error for eth1 data voting 2019-04-24 13:15:06 -06:00
Danny Ryan 8e08a6fb60
Merge branch 'dev' into pytest-use-config 2019-04-24 12:33:45 -06:00
Danny Ryan 7e6a69dfaa
scale number of validators in tests based on number of slots 2019-04-24 12:31:27 -06:00
Danny Ryan 451c28342a
Revert "Only use `setup.py`" 2019-04-24 11:59:13 -06:00
Danny Ryan 11985b7b22
Merge branch 'dev' into finality-testing 2019-04-24 11:54:10 -06:00
Danny Ryan 53b0674533
remove unnecessary var 2019-04-24 11:45:41 -06:00
Danny Ryan 9e8a9a26fd
PR feedback 2019-04-24 11:44:03 -06:00
Hsiao-Wei Wang 7f720133fa
Apply suggestions from code review
Co-Authored-By: djrtwo <dannyjryan@gmail.com>
2019-04-24 11:38:26 -06:00
Danny Ryan 20d65e040b
pr feedback 2019-04-24 11:31:24 -06:00
Hsiao-Wei Wang 9c2fa02658
Update test_libs/pyspec/tests/test_sanity.py
Co-Authored-By: JustinDrake <drakefjustin@gmail.com>
2019-04-24 20:54:39 +10:00
Hsiao-Wei Wang b1874dc18b
Update Makefile and CI setting
1. Move .venv to TEST_LIBS_DIR/
2. Install `config_helpers` separately
2019-04-24 17:19:29 +08:00
Hsiao-Wei Wang 5437273e23
Update `packages` 2019-04-24 17:18:52 +08:00
Hsiao-Wei Wang ba99f8a284
Update `install_requires` 2019-04-24 17:18:52 +08:00
Hsiao-Wei Wang 97906a6339
Only use `setup.py` 2019-04-24 17:18:49 +08:00
protolambda 7f5cffb286
pytests use configuration system now, add command option to conftest to switch, also fix minor testing bug 2019-04-24 18:56:44 +10:00
Justin Drake c37789dc5d Tests fixed 2019-04-24 15:27:47 +10:00
Justin Drake 55f042aa71 More fixes 2019-04-24 15:17:25 +10:00
Justin Drake df64eeefa0 Start fixing tests 2019-04-24 14:46:28 +10:00
Justin de01ffd38d
Merge branch 'dev' into JustinDrake-patch-14 2019-04-24 14:35:02 +10:00
Danny Ryan 5587c44abe
Update test_libs/pyspec/tests/test_sanity.py
Co-Authored-By: JustinDrake <drakefjustin@gmail.com>
2019-04-24 14:29:35 +10:00
Danny Ryan bd0552c796
fix finality tests for each rule 2019-04-23 13:32:41 -06:00
Danny Ryan 23c9b8b2d1
Merge branch 'dev-master-conflicts' into finality-testing 2019-04-23 12:46:52 -06:00