aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdrian Sutton <adrian.sutton@consensys.net>2018-11-09 13:30:13 +0800
committerAdrian Sutton <adrian.sutton@consensys.net>2018-11-09 13:30:13 +0800
commitc01bb9f90151a6ae0c9c33ad2b86b294cc82622e (patch)
tree5e86f3b3d268df716e4172b8be85fca231e269ec
parent13ec231d38ccba457defd7e8352bc9cf5ffe1057 (diff)
downloaddexon-tests-c01bb9f90151a6ae0c9c33ad2b86b294cc82622e.tar.gz
dexon-tests-c01bb9f90151a6ae0c9c33ad2b86b294cc82622e.tar.zst
dexon-tests-c01bb9f90151a6ae0c9c33ad2b86b294cc82622e.zip
Add comment to new tests explaining what they're covering.
-rw-r--r--GeneralStateTests/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTests.json6
-rw-r--r--GeneralStateTests/stPreCompiledContracts2/CallEcrecoverInvalidSignature.json20
-rw-r--r--GeneralStateTests/stPreCompiledContracts2/CallEcrecoverUnrecoverableKey.json20
-rw-r--r--GeneralStateTests/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutput.json6
-rw-r--r--src/GeneralStateTestsFiller/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTestsFiller.json3
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverInvalidSignatureFiller.json7
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverUnrecoverableKeyFiller.json7
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutputFiller.json3
8 files changed, 42 insertions, 30 deletions
diff --git a/GeneralStateTests/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTests.json b/GeneralStateTests/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTests.json
index c412659c4..87e4a7a97 100644
--- a/GeneralStateTests/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTests.json
+++ b/GeneralStateTests/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTests.json
@@ -1,11 +1,11 @@
{
"ExtCodeCopyTargetRangeLongerThanCodeTests" : {
"_info" : {
- "comment" : "",
- "filledwith" : "testeth 1.5.0.dev2-74+commit.8daa6e1c",
+ "comment" : "Uses EXTCODECOPY to copy 32 bytes of code into a 64 byte range of memory and ensures that the last 32 bytes of the memory range are zeroed out",
+ "filledwith" : "testeth 1.5.0-alpha.5-3+commit.9c4db26c",
"lllcversion" : "Version: 0.5.0-develop.2018.9.29+commit.c4b5101b.Darwin.appleclang",
"source" : "src/GeneralStateTestsFiller/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTestsFiller.json",
- "sourceHash" : "0eabbc0a5319e11ac49fc995fca77431272e659f06f3ae154290743365f47f26"
+ "sourceHash" : "f18e3887da90c5b18497a754982425e913c8cf0df1cfac2ec0256809d6339041"
},
"env" : {
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
diff --git a/GeneralStateTests/stPreCompiledContracts2/CallEcrecoverInvalidSignature.json b/GeneralStateTests/stPreCompiledContracts2/CallEcrecoverInvalidSignature.json
index eb7194ae4..1548d0fd5 100644
--- a/GeneralStateTests/stPreCompiledContracts2/CallEcrecoverInvalidSignature.json
+++ b/GeneralStateTests/stPreCompiledContracts2/CallEcrecoverInvalidSignature.json
@@ -1,11 +1,11 @@
{
"CallEcrecoverInvalidSignature" : {
"_info" : {
- "comment" : "",
- "filledwith" : "testeth 1.5.0.dev2-74+commit.8daa6e1c",
+ "comment" : "CALL to ECREC precompile with input which is a completely invalid signature and a 32 byte output range in memory. ECREC should return an empty response and the 32 byte output range should be left unchanged.",
+ "filledwith" : "testeth 1.5.0-alpha.5-3+commit.9c4db26c",
"lllcversion" : "Version: 0.5.0-develop.2018.9.29+commit.c4b5101b.Darwin.appleclang",
"source" : "src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverInvalidSignatureFiller.json",
- "sourceHash" : "8407010e4534db5019fc91b148f6fd186ab3157f29876f8db006bcb12d8a0d21"
+ "sourceHash" : "0c4766b334540da6fb7c3074b2f58916a5b372f569bd5ae39cea7a563f3415d4"
},
"env" : {
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
@@ -18,7 +18,7 @@
"post" : {
"Byzantium" : [
{
- "hash" : "0xc26529cbbc310a2a6973edaf8cccf3aaf6a2035352148ad391518f7d74a1fe1b",
+ "hash" : "0x9ee49fbe5b14e1e6cb43aa76ba9fc2d47990d17e99bb6b1d3c5492f49f1f2bb3",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -29,7 +29,7 @@
],
"Constantinople" : [
{
- "hash" : "0xc26529cbbc310a2a6973edaf8cccf3aaf6a2035352148ad391518f7d74a1fe1b",
+ "hash" : "0x9ee49fbe5b14e1e6cb43aa76ba9fc2d47990d17e99bb6b1d3c5492f49f1f2bb3",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -40,7 +40,7 @@
],
"EIP150" : [
{
- "hash" : "0x189605e905b627b0b1bb9aa89718a5263d99d4c566ce89b99f70098d1e660e7c",
+ "hash" : "0x9493e6f93663fac8862d4d41657b7b464bd6505ab0cc37560ea19fc835048cca",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -51,7 +51,7 @@
],
"EIP158" : [
{
- "hash" : "0xc26529cbbc310a2a6973edaf8cccf3aaf6a2035352148ad391518f7d74a1fe1b",
+ "hash" : "0x9ee49fbe5b14e1e6cb43aa76ba9fc2d47990d17e99bb6b1d3c5492f49f1f2bb3",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -62,7 +62,7 @@
],
"Frontier" : [
{
- "hash" : "0x5564662d3f20239cc124b5b4542d824891949126c994678f5ef3e7070811e347",
+ "hash" : "0xbf17d0546e6fc734455768b418c74d30885da7ac8c4d52097a23f3e9dbfc53de",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -73,7 +73,7 @@
],
"Homestead" : [
{
- "hash" : "0x5564662d3f20239cc124b5b4542d824891949126c994678f5ef3e7070811e347",
+ "hash" : "0xbf17d0546e6fc734455768b418c74d30885da7ac8c4d52097a23f3e9dbfc53de",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -86,7 +86,7 @@
"pre" : {
"0x095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"balance" : "0x01312d00",
- "code" : "0x611234608052602060806080600060006001620493e0f150608051600055",
+ "code" : "0x7f1122334455667788991011121314151617181920212223242526272829303132608052602060806080600060006001620493e0f150608051600055",
"nonce" : "0x00",
"storage" : {
}
diff --git a/GeneralStateTests/stPreCompiledContracts2/CallEcrecoverUnrecoverableKey.json b/GeneralStateTests/stPreCompiledContracts2/CallEcrecoverUnrecoverableKey.json
index 66f7911e5..a9797892a 100644
--- a/GeneralStateTests/stPreCompiledContracts2/CallEcrecoverUnrecoverableKey.json
+++ b/GeneralStateTests/stPreCompiledContracts2/CallEcrecoverUnrecoverableKey.json
@@ -1,11 +1,11 @@
{
"CallEcrecoverUnrecoverableKey" : {
"_info" : {
- "comment" : "",
- "filledwith" : "testeth 1.5.0.dev2-74+commit.8daa6e1c",
+ "comment" : "CALL to ECREC precompile with input that has a valid signature structure but that does not recover a valid key. Specifies a 32 byte output range in memory. ECREC should return an empty response and the 32 byte output range should be left unchanged.",
+ "filledwith" : "testeth 1.5.0-alpha.5-3+commit.9c4db26c",
"lllcversion" : "Version: 0.5.0-develop.2018.9.29+commit.c4b5101b.Darwin.appleclang",
"source" : "src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverUnrecoverableKeyFiller.json",
- "sourceHash" : "0946eaa79142508de550925952892c133cff6a98d1aebe3c51a44f34b84a4db2"
+ "sourceHash" : "8f7d5de0d10cd62354a083430d132f8dfe9b497013294f3b5b1442bc7b8cfb54"
},
"env" : {
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
@@ -18,7 +18,7 @@
"post" : {
"Byzantium" : [
{
- "hash" : "0x286f7b97ac0be876b06b06a74a1278090522919504967c76d6d260f34def305a",
+ "hash" : "0xb332e922800f4c7a600185a7c0f822f908eed115edd53fe95486c96afb0e30fd",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -29,7 +29,7 @@
],
"Constantinople" : [
{
- "hash" : "0x286f7b97ac0be876b06b06a74a1278090522919504967c76d6d260f34def305a",
+ "hash" : "0xb332e922800f4c7a600185a7c0f822f908eed115edd53fe95486c96afb0e30fd",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -40,7 +40,7 @@
],
"EIP150" : [
{
- "hash" : "0x2f8649c95320e936cfe855d8c239afa30c33a52f360bbbc7fa4e5f32c46764a3",
+ "hash" : "0xafc696f31fc3b84b00711c870ae62269eb8e704eb73b33ddd62589d746783d29",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -51,7 +51,7 @@
],
"EIP158" : [
{
- "hash" : "0x286f7b97ac0be876b06b06a74a1278090522919504967c76d6d260f34def305a",
+ "hash" : "0xb332e922800f4c7a600185a7c0f822f908eed115edd53fe95486c96afb0e30fd",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -62,7 +62,7 @@
],
"Frontier" : [
{
- "hash" : "0x66b1ba05f81a653937dd2e9c2c3ae5d4b8513662a12c8cd35213e9e08c8041f5",
+ "hash" : "0x2434c2b8d780aa3c78868fac0f0561b638961f6f70da057af72c4150d2edb761",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -73,7 +73,7 @@
],
"Homestead" : [
{
- "hash" : "0x66b1ba05f81a653937dd2e9c2c3ae5d4b8513662a12c8cd35213e9e08c8041f5",
+ "hash" : "0x2434c2b8d780aa3c78868fac0f0561b638961f6f70da057af72c4150d2edb761",
"indexes" : {
"data" : 0,
"gas" : 0,
@@ -86,7 +86,7 @@
"pre" : {
"0x095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"balance" : "0x01312d00",
- "code" : "0x7fa8b53bdf3306a35a7103ab5504a0c9b492295564b6202b1942a84ef300107281600052601b6020527f30783565316530336635336365313862373732636362303039336666373166336040527f6635336635633735623734646362333161383561613862383839326234653862606052611234608052602060806080600060006001620493e0f150608051600055",
+ "code" : "0x7fa8b53bdf3306a35a7103ab5504a0c9b492295564b6202b1942a84ef300107281600052601b6020527f30783565316530336635336365313862373732636362303039336666373166336040527f66353366356337356237346463623331613835616138623838393262346538626060527f1122334455667788991011121314151617181920212223242526272829303132608052602060806080600060006001620493e0f150608051600055",
"nonce" : "0x00",
"storage" : {
}
diff --git a/GeneralStateTests/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutput.json b/GeneralStateTests/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutput.json
index 189cd5676..5567f4de0 100644
--- a/GeneralStateTests/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutput.json
+++ b/GeneralStateTests/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutput.json
@@ -1,11 +1,11 @@
{
"CallIdentity_6_inputShorterThanOutput" : {
"_info" : {
- "comment" : "",
- "filledwith" : "testeth 1.5.0.dev2-74+commit.8daa6e1c",
+ "comment" : "CALL to ID precompile with 32 bytes of input and a 64 byte output range. The lower 32 bytes of the output range should be set to the input and the higher 32 bytes left unchanged.",
+ "filledwith" : "testeth 1.5.0-alpha.5-3+commit.9c4db26c",
"lllcversion" : "Version: 0.5.0-develop.2018.9.29+commit.c4b5101b.Darwin.appleclang",
"source" : "src/GeneralStateTestsFiller/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutputFiller.json",
- "sourceHash" : "4e03e49570818ea27b45fb844244bce999ec50b9205408225be51ef9dab69aa5"
+ "sourceHash" : "43492012cffad6493023400648e819ed3bd6894a0542d188479d8c7545e1eb54"
},
"env" : {
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
diff --git a/src/GeneralStateTestsFiller/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTestsFiller.json b/src/GeneralStateTestsFiller/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTestsFiller.json
index fff8faf88..488aede8b 100644
--- a/src/GeneralStateTestsFiller/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTestsFiller.json
+++ b/src/GeneralStateTestsFiller/stCodeCopyTest/ExtCodeCopyTargetRangeLongerThanCodeTestsFiller.json
@@ -1,5 +1,8 @@
{
"ExtCodeCopyTargetRangeLongerThanCodeTests": {
+ "_info" : {
+ "comment": "Uses EXTCODECOPY to copy 32 bytes of code into a 64 byte range of memory and ensures that the last 32 bytes of the memory range are zeroed out"
+ },
"env": {
"currentCoinbase": "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
"currentDifficulty": "0x020000",
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverInvalidSignatureFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverInvalidSignatureFiller.json
index 6e6e65c65..facf092ff 100644
--- a/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverInvalidSignatureFiller.json
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverInvalidSignatureFiller.json
@@ -1,5 +1,8 @@
{
"CallEcrecoverInvalidSignature" : {
+ "_info" : {
+ "comment": "CALL to ECREC precompile with input which is a completely invalid signature and a 32 byte output range in memory. ECREC should return an empty response and the 32 byte output range should be left unchanged."
+ },
"env" : {
"currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
"currentDifficulty" : "0x20000",
@@ -19,7 +22,7 @@
"result" : {
"095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"storage" : {
- "0x00" : "0x1234"
+ "0x00" : "0x1122334455667788991011121314151617181920212223242526272829303132"
}
}
}
@@ -28,7 +31,7 @@
"pre" : {
"095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"balance" : "20000000",
- "code" : "{ (MSTORE 128 0x1234) (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MLOAD 128) }",
+ "code" : "{ (MSTORE 128 0x1122334455667788991011121314151617181920212223242526272829303132) (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MLOAD 128) }",
"nonce" : "0",
"storage" : {
}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverUnrecoverableKeyFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverUnrecoverableKeyFiller.json
index 7166a64f2..44f90d32e 100644
--- a/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverUnrecoverableKeyFiller.json
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallEcrecoverUnrecoverableKeyFiller.json
@@ -1,5 +1,8 @@
{
"CallEcrecoverUnrecoverableKey" : {
+ "_info" : {
+ "comment": "CALL to ECREC precompile with input that has a valid signature structure but that does not recover a valid key. Specifies a 32 byte output range in memory. ECREC should return an empty response and the 32 byte output range should be left unchanged."
+ },
"env" : {
"currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
"currentDifficulty" : "0x20000",
@@ -19,7 +22,7 @@
"result" : {
"095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"storage" : {
- "0x00" : "0x1234"
+ "0x00" : "0x1122334455667788991011121314151617181920212223242526272829303132"
}
}
}
@@ -28,7 +31,7 @@
"pre" : {
"095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"balance" : "20000000",
- "code" : "{ (MSTORE 0 0xa8b53bdf3306a35a7103ab5504a0c9b492295564b6202b1942a84ef300107281) (MSTORE 32 0x000000000000000000000000000000000000000000000000000000000000001b) (MSTORE 64 0x3078356531653033663533636531386237373263636230303933666637316633) (MSTORE 96 0x6635336635633735623734646362333161383561613862383839326234653862) (MSTORE 128 0x1234) (CALL 300000 1 0 0 128 128 32) (SSTORE 0 (MLOAD 128)) }",
+ "code" : "{ (MSTORE 0 0xa8b53bdf3306a35a7103ab5504a0c9b492295564b6202b1942a84ef300107281) (MSTORE 32 0x000000000000000000000000000000000000000000000000000000000000001b) (MSTORE 64 0x3078356531653033663533636531386237373263636230303933666637316633) (MSTORE 96 0x6635336635633735623734646362333161383561613862383839326234653862) (MSTORE 128 0x1122334455667788991011121314151617181920212223242526272829303132) (CALL 300000 1 0 0 128 128 32) (SSTORE 0 (MLOAD 128)) }",
"nonce" : "0",
"storage" : {
}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutputFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutputFiller.json
index 74882a522..f4538623f 100644
--- a/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutputFiller.json
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts2/CallIdentity_6_inputShorterThanOutputFiller.json
@@ -1,5 +1,8 @@
{
"CallIdentity_6_inputShorterThanOutput" : {
+ "_info" : {
+ "comment": "CALL to ID precompile with 32 bytes of input and a 64 byte output range. The lower 32 bytes of the output range should be set to the input and the higher 32 bytes left unchanged."
+ },
"env" : {
"currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
"currentDifficulty" : "0x20000",