diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 47228b5fe..46f203226 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -1,7 +1,7 @@ jobs: - job: Windows - timeoutInMinutes: 80 + timeoutInMinutes: 90 pool: vmImage: windows-latest diff --git a/beacon_chain.nimble b/beacon_chain.nimble index 359917f80..b8a976bf9 100644 --- a/beacon_chain.nimble +++ b/beacon_chain.nimble @@ -58,6 +58,10 @@ task test, "Run all tests": # pieces of code get tested regularly. Increased test output verbosity is the # price we pay for that. + # Just the part of minimal config which explicitly differs from mainnet + buildAndRunBinary "test_fixture_const_sanity_check", "tests/official/", "-d:const_preset=minimal -d:ETH2_SPEC=\"v0.11.3\"" + buildAndRunBinary "test_fixture_const_sanity_check", "tests/official/", "-d:const_preset=minimal -d:ETH2_SPEC=\"v0.12.1\" -d:BLS_ETH2_SPEC=\"v0.12.x\"" + # Mainnet config buildAndRunBinary "proto_array", "beacon_chain/fork_choice/", "-d:const_preset=mainnet -d:ETH2_SPEC=\"v0.12.1\" -d:BLS_ETH2_SPEC=\"v0.12.x\"" buildAndRunBinary "fork_choice", "beacon_chain/fork_choice/", "-d:const_preset=mainnet -d:ETH2_SPEC=\"v0.12.1\" -d:BLS_ETH2_SPEC=\"v0.12.x\"" diff --git a/beacon_chain/spec/datatypes.nim b/beacon_chain/spec/datatypes.nim index bfef91348..8ed56919f 100644 --- a/beacon_chain/spec/datatypes.nim +++ b/beacon_chain/spec/datatypes.nim @@ -55,18 +55,16 @@ const const_preset* {.strdefine.} = "mainnet" when const_preset == "mainnet": when ETH2_SPEC == "v0.12.1": - import ./presets/mainnet - export mainnet + import ./presets/v0_12_1/mainnet else: - import ./presets/mainnet_v0_11_3 - export mainnet_v0_11_3 + import ./presets/v0_11_3/mainnet + export mainnet elif const_preset == "minimal": when ETH2_SPEC == "v0.12.1": - import ./presets/minimal - export minimal + import ./presets/v0_12_1/minimal else: - import ./presets/minimal_v0_11_3 - export minimal_v0_11_3 + import ./presets/v0_11_3/minimal + export minimal else: type Slot* = distinct uint64 diff --git a/beacon_chain/spec/helpers.nim b/beacon_chain/spec/helpers.nim index 6d9416df6..2526cb3fa 100644 --- a/beacon_chain/spec/helpers.nim +++ b/beacon_chain/spec/helpers.nim @@ -166,7 +166,7 @@ func compute_domain*( result[0..3] = int_to_bytes4(domain_type.uint64) result[4..31] = fork_data_root.data[0..27] -# https://github.com/ethereum/eth2.0-specs/blob/v0.11.3/specs/phase0/beacon-chain.md#get_domain +# https://github.com/ethereum/eth2.0-specs/blob/v0.12.1/specs/phase0/beacon-chain.md#get_domain func get_domain*( fork: Fork, domain_type: DomainType, epoch: Epoch, genesis_validators_root: Eth2Digest): Domain = ## Return the signature domain (fork version concatenated with domain type) diff --git a/beacon_chain/spec/presets/mainnet_v0_11_3.nim b/beacon_chain/spec/presets/v0_11_3/mainnet.nim similarity index 100% rename from beacon_chain/spec/presets/mainnet_v0_11_3.nim rename to beacon_chain/spec/presets/v0_11_3/mainnet.nim diff --git a/beacon_chain/spec/presets/minimal_v0_11_3.nim b/beacon_chain/spec/presets/v0_11_3/minimal.nim similarity index 100% rename from beacon_chain/spec/presets/minimal_v0_11_3.nim rename to beacon_chain/spec/presets/v0_11_3/minimal.nim diff --git a/beacon_chain/spec/presets/mainnet.nim b/beacon_chain/spec/presets/v0_12_1/mainnet.nim similarity index 100% rename from beacon_chain/spec/presets/mainnet.nim rename to beacon_chain/spec/presets/v0_12_1/mainnet.nim diff --git a/beacon_chain/spec/presets/minimal.nim b/beacon_chain/spec/presets/v0_12_1/minimal.nim similarity index 100% rename from beacon_chain/spec/presets/minimal.nim rename to beacon_chain/spec/presets/v0_12_1/minimal.nim diff --git a/tests/official/test_fixture_const_sanity_check.nim b/tests/official/test_fixture_const_sanity_check.nim index d4b02dba9..aa67ce14e 100644 --- a/tests/official/test_fixture_const_sanity_check.nim +++ b/tests/official/test_fixture_const_sanity_check.nim @@ -80,12 +80,14 @@ macro parseNumConsts(file: static string): untyped = result = quote do: `constsToCheck` -const datatypesConsts = @(parseNumConsts(SpecDir/"datatypes.nim")) +const + datatypesConsts = @(parseNumConsts(SpecDir/"datatypes.nim")) + specVersionPresetDir = SpecDir/"presets"/("v"&replace(SPEC_VERSION, ".", "_")) when const_preset == "minimal": - const minimalConsts = @(parseNumConsts(SpecDir/"presets"/"minimal.nim")) + const minimalConsts = @(parseNumConsts(specVersionPresetDir/"minimal.nim")) else: - const mainnetConsts = @(parseNumConsts(SpecDir/"presets"/"mainnet.nim")) + const mainnetConsts = @(parseNumConsts(specVersionPresetDir/"mainnet.nim")) const IgnoreKeys = [ # Ignore all non-numeric types