Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
Geth-Modification
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张蕾
Geth-Modification
Commits
e8210036
Commit
e8210036
authored
Jun 10, 2015
by
Taylor Gerring
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix paths
parent
a67a1552
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
61 additions
and
45 deletions
+61
-45
block_test.go
tests/block_test.go
+14
-10
state_test.go
tests/state_test.go
+24
-18
transaction_test.go
tests/transaction_test.go
+6
-3
vm_test.go
tests/vm_test.go
+17
-14
No files found.
tests/block_test.go
View file @
e8210036
package
tests
package
tests
import
(
import
(
"path/filepath"
"testing"
"testing"
)
)
var
baseDir
=
filepath
.
Join
(
"."
,
"files"
)
var
blockTestDir
=
filepath
.
Join
(
baseDir
,
"BlockTests"
)
// TODO: refactor test setup & execution to better align with vm and tx tests
// TODO: refactor test setup & execution to better align with vm and tx tests
func
TestBcValidBlockTests
(
t
*
testing
.
T
)
{
func
TestBcValidBlockTests
(
t
*
testing
.
T
)
{
// SimpleTx3 genesis block does not validate against calculated state root
// SimpleTx3 genesis block does not validate against calculated state root
// as of 2015-06-09. unskip once working /Gustav
// as of 2015-06-09. unskip once working /Gustav
runBlockTestsInFile
(
"files/BlockTests/bcValidBlockTest.json"
,
[]
string
{
"SimpleTx3"
},
t
)
runBlockTestsInFile
(
filepath
.
Join
(
blockTestDir
,
"bcValidBlockTest.json"
)
,
[]
string
{
"SimpleTx3"
},
t
)
}
}
func
TestBcUncleTests
(
t
*
testing
.
T
)
{
func
TestBcUncleTests
(
t
*
testing
.
T
)
{
runBlockTestsInFile
(
"files/BlockTests/bcUncleTest.json"
,
[]
string
{},
t
)
runBlockTestsInFile
(
filepath
.
Join
(
blockTestDir
,
"bcUncleTest.json"
)
,
[]
string
{},
t
)
runBlockTestsInFile
(
"files/BlockTests/bcBruncleTest.json"
,
[]
string
{},
t
)
runBlockTestsInFile
(
filepath
.
Join
(
blockTestDir
,
"bcBruncleTest.json"
)
,
[]
string
{},
t
)
}
}
func
TestBcUncleHeaderValidityTests
(
t
*
testing
.
T
)
{
func
TestBcUncleHeaderValidityTests
(
t
*
testing
.
T
)
{
runBlockTestsInFile
(
"files/BlockTests/bcUncleHeaderValiditiy.json"
,
[]
string
{},
t
)
runBlockTestsInFile
(
filepath
.
Join
(
blockTestDir
,
"bcUncleHeaderValiditiy.json"
)
,
[]
string
{},
t
)
}
}
func
TestBcInvalidHeaderTests
(
t
*
testing
.
T
)
{
func
TestBcInvalidHeaderTests
(
t
*
testing
.
T
)
{
runBlockTestsInFile
(
"files/BlockTests/bcInvalidHeaderTest.json"
,
[]
string
{},
t
)
runBlockTestsInFile
(
filepath
.
Join
(
blockTestDir
,
"bcInvalidHeaderTest.json"
)
,
[]
string
{},
t
)
}
}
func
TestBcInvalidRLPTests
(
t
*
testing
.
T
)
{
func
TestBcInvalidRLPTests
(
t
*
testing
.
T
)
{
runBlockTestsInFile
(
"files/BlockTests/bcInvalidRLPTest.json"
,
[]
string
{},
t
)
runBlockTestsInFile
(
filepath
.
Join
(
blockTestDir
,
"bcInvalidRLPTest.json"
)
,
[]
string
{},
t
)
}
}
func
TestBcRPCAPITests
(
t
*
testing
.
T
)
{
func
TestBcRPCAPITests
(
t
*
testing
.
T
)
{
runBlockTestsInFile
(
"files/BlockTests/bcRPC_API_Test.json"
,
[]
string
{},
t
)
runBlockTestsInFile
(
filepath
.
Join
(
blockTestDir
,
"bcRPC_API_Test.json"
)
,
[]
string
{},
t
)
}
}
func
TestBcForkBlockTests
(
t
*
testing
.
T
)
{
func
TestBcForkBlockTests
(
t
*
testing
.
T
)
{
runBlockTestsInFile
(
"files/BlockTests/bcForkBlockTest.json"
,
[]
string
{},
t
)
runBlockTestsInFile
(
filepath
.
Join
(
blockTestDir
,
"bcForkBlockTest.json"
)
,
[]
string
{},
t
)
}
}
func
TestBcTotalDifficulty
(
t
*
testing
.
T
)
{
func
TestBcTotalDifficulty
(
t
*
testing
.
T
)
{
runBlockTestsInFile
(
"files/BlockTests/bcTotalDifficultyTest.json"
,
[]
string
{},
t
)
runBlockTestsInFile
(
filepath
.
Join
(
blockTestDir
,
"bcTotalDifficultyTest.json"
)
,
[]
string
{},
t
)
}
}
func
TestBcWallet
(
t
*
testing
.
T
)
{
func
TestBcWallet
(
t
*
testing
.
T
)
{
runBlockTestsInFile
(
"files/BlockTests/bcWalletTest.json"
,
[]
string
{},
t
)
runBlockTestsInFile
(
filepath
.
Join
(
blockTestDir
,
"bcWalletTest.json"
)
,
[]
string
{},
t
)
}
}
tests/state_test.go
View file @
e8210036
package
tests
package
tests
import
"testing"
import
(
"os"
"path/filepath"
"testing"
)
var
stateTestDir
=
filepath
.
Join
(
baseDir
,
"StateTests"
)
func
TestStateSystemOperations
(
t
*
testing
.
T
)
{
func
TestStateSystemOperations
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stSystemOperationsTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stSystemOperationsTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestStateExample
(
t
*
testing
.
T
)
{
func
TestStateExample
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stExample.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stExample.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestStatePreCompiledContracts
(
t
*
testing
.
T
)
{
func
TestStatePreCompiledContracts
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stPreCompiledContracts.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stPreCompiledContracts.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestStateRecursiveCreate
(
t
*
testing
.
T
)
{
func
TestStateRecursiveCreate
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stRecursiveCreate.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stRecursiveCreate.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestStateSpecial
(
t
*
testing
.
T
)
{
func
TestStateSpecial
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stSpecialTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stSpecialTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestStateRefund
(
t
*
testing
.
T
)
{
func
TestStateRefund
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stRefundTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stRefundTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestStateBlockHash
(
t
*
testing
.
T
)
{
func
TestStateBlockHash
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stBlockHashTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stBlockHashTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestStateInitCode
(
t
*
testing
.
T
)
{
func
TestStateInitCode
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stInitCodeTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stInitCodeTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestStateLog
(
t
*
testing
.
T
)
{
func
TestStateLog
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stLogTests.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stLogTests.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestStateTransaction
(
t
*
testing
.
T
)
{
func
TestStateTransaction
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stTransactionTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stTransactionTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestCallCreateCallCode
(
t
*
testing
.
T
)
{
func
TestCallCreateCallCode
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stCallCreateCallCodeTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stCallCreateCallCodeTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestMemory
(
t
*
testing
.
T
)
{
func
TestMemory
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stMemoryTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stMemoryTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
...
@@ -66,7 +72,7 @@ func TestMemoryStress(t *testing.T) {
...
@@ -66,7 +72,7 @@ func TestMemoryStress(t *testing.T) {
if
os
.
Getenv
(
"TEST_VM_COMPLEX"
)
==
""
{
if
os
.
Getenv
(
"TEST_VM_COMPLEX"
)
==
""
{
t
.
Skip
()
t
.
Skip
()
}
}
const
fn
=
"../files/StateTests/stMemoryStressTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stMemoryStressTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
...
@@ -74,22 +80,22 @@ func TestQuadraticComplexity(t *testing.T) {
...
@@ -74,22 +80,22 @@ func TestQuadraticComplexity(t *testing.T) {
if
os
.
Getenv
(
"TEST_VM_COMPLEX"
)
==
""
{
if
os
.
Getenv
(
"TEST_VM_COMPLEX"
)
==
""
{
t
.
Skip
()
t
.
Skip
()
}
}
const
fn
=
"../files/StateTests/stQuadraticComplexityTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stQuadraticComplexityTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestSolidity
(
t
*
testing
.
T
)
{
func
TestSolidity
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stSolidityTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stSolidityTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestWallet
(
t
*
testing
.
T
)
{
func
TestWallet
(
t
*
testing
.
T
)
{
const
fn
=
"../files/StateTests/stWalletTest.json"
fn
:=
filepath
.
Join
(
stateTestDir
,
"stWalletTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestStateTestsRandom
(
t
*
testing
.
T
)
{
func
TestStateTestsRandom
(
t
*
testing
.
T
)
{
fns
,
_
:=
filepath
.
Glob
(
".
.
/files/StateTests/RandomTests/*"
)
fns
,
_
:=
filepath
.
Glob
(
"./files/StateTests/RandomTests/*"
)
for
_
,
fn
:=
range
fns
{
for
_
,
fn
:=
range
fns
{
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
...
...
tests/transaction_test.go
View file @
e8210036
package
tests
package
tests
import
(
import
(
"path/filepath"
"testing"
"testing"
)
)
var
transactionTestDir
=
filepath
.
Join
(
baseDir
,
"TransactionTests"
)
func
TestTransactions
(
t
*
testing
.
T
)
{
func
TestTransactions
(
t
*
testing
.
T
)
{
notWorking
:=
make
(
map
[
string
]
bool
,
100
)
notWorking
:=
make
(
map
[
string
]
bool
,
100
)
...
@@ -17,7 +20,7 @@ func TestTransactions(t *testing.T) {
...
@@ -17,7 +20,7 @@ func TestTransactions(t *testing.T) {
}
}
var
err
error
var
err
error
err
=
RunTransactionTests
(
"./files/TransactionTests/ttTransactionTest.json"
,
err
=
RunTransactionTests
(
filepath
.
Join
(
transactionTestDir
,
"ttTransactionTest.json"
)
,
notWorking
)
notWorking
)
if
err
!=
nil
{
if
err
!=
nil
{
t
.
Fatal
(
err
)
t
.
Fatal
(
err
)
...
@@ -27,7 +30,7 @@ func TestTransactions(t *testing.T) {
...
@@ -27,7 +30,7 @@ func TestTransactions(t *testing.T) {
func
TestWrongRLPTransactions
(
t
*
testing
.
T
)
{
func
TestWrongRLPTransactions
(
t
*
testing
.
T
)
{
notWorking
:=
make
(
map
[
string
]
bool
,
100
)
notWorking
:=
make
(
map
[
string
]
bool
,
100
)
var
err
error
var
err
error
err
=
RunTransactionTests
(
"./files/TransactionTests/ttWrongRLPTransaction.json"
,
err
=
RunTransactionTests
(
filepath
.
Join
(
transactionTestDir
,
"ttWrongRLPTransaction.json"
)
,
notWorking
)
notWorking
)
if
err
!=
nil
{
if
err
!=
nil
{
t
.
Fatal
(
err
)
t
.
Fatal
(
err
)
...
@@ -37,7 +40,7 @@ func TestWrongRLPTransactions(t *testing.T) {
...
@@ -37,7 +40,7 @@ func TestWrongRLPTransactions(t *testing.T) {
func
Test10MBtx
(
t
*
testing
.
T
)
{
func
Test10MBtx
(
t
*
testing
.
T
)
{
notWorking
:=
make
(
map
[
string
]
bool
,
100
)
notWorking
:=
make
(
map
[
string
]
bool
,
100
)
var
err
error
var
err
error
err
=
RunTransactionTests
(
"./files/TransactionTests/tt10mbDataField.json"
,
err
=
RunTransactionTests
(
filepath
.
Join
(
transactionTestDir
,
"tt10mbDataField.json"
)
,
notWorking
)
notWorking
)
if
err
!=
nil
{
if
err
!=
nil
{
t
.
Fatal
(
err
)
t
.
Fatal
(
err
)
...
...
tests/vm_test.go
View file @
e8210036
package
tests
package
tests
import
(
import
(
"path/filepath"
"testing"
"testing"
)
)
var
vmTestDir
=
filepath
.
Join
(
baseDir
,
"VMTests"
)
// I've created a new function for each tests so it's easier to identify where the problem lies if any of them fail.
// I've created a new function for each tests so it's easier to identify where the problem lies if any of them fail.
func
TestVMArithmetic
(
t
*
testing
.
T
)
{
func
TestVMArithmetic
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmArithmeticTest.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmArithmeticTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestBitwiseLogicOperation
(
t
*
testing
.
T
)
{
func
TestBitwiseLogicOperation
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmBitwiseLogicOperationTest.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmBitwiseLogicOperationTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestBlockInfo
(
t
*
testing
.
T
)
{
func
TestBlockInfo
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmBlockInfoTest.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmBlockInfoTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestEnvironmentalInfo
(
t
*
testing
.
T
)
{
func
TestEnvironmentalInfo
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmEnvironmentalInfoTest.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmEnvironmentalInfoTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestFlowOperation
(
t
*
testing
.
T
)
{
func
TestFlowOperation
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmIOandFlowOperationsTest.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmIOandFlowOperationsTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestLogTest
(
t
*
testing
.
T
)
{
func
TestLogTest
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmLogTest.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmLogTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestPerformance
(
t
*
testing
.
T
)
{
func
TestPerformance
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmPerformanceTest.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmPerformanceTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestPushDupSwap
(
t
*
testing
.
T
)
{
func
TestPushDupSwap
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmPushDupSwapTest.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmPushDupSwapTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestVMSha3
(
t
*
testing
.
T
)
{
func
TestVMSha3
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmSha3Test.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmSha3Test.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestVm
(
t
*
testing
.
T
)
{
func
TestVm
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmtests.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmtests.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestVmLog
(
t
*
testing
.
T
)
{
func
TestVmLog
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmLogTest.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmLogTest.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestInputLimits
(
t
*
testing
.
T
)
{
func
TestInputLimits
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmInputLimits.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmInputLimits.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestInputLimitsLight
(
t
*
testing
.
T
)
{
func
TestInputLimitsLight
(
t
*
testing
.
T
)
{
const
fn
=
"../files/VMTests/vmInputLimitsLight.json"
fn
:=
filepath
.
Join
(
vmTestDir
,
"vmInputLimitsLight.json"
)
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
func
TestVMRandom
(
t
*
testing
.
T
)
{
func
TestVMRandom
(
t
*
testing
.
T
)
{
fns
,
_
:=
filepath
.
Glob
(
"../files/VMTests/RandomTests/*"
)
fns
,
_
:=
filepath
.
Glob
(
filepath
.
Join
(
baseDir
,
"RandomTests"
,
"*"
)
)
for
_
,
fn
:=
range
fns
{
for
_
,
fn
:=
range
fns
{
RunVmTest
(
fn
,
t
)
RunVmTest
(
fn
,
t
)
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment