diff options
author | obscuren <geffobscura@gmail.com> | 2014-07-24 20:16:04 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2014-07-24 20:16:04 +0800 |
commit | 702cf5a3e19e33616e7e98ec8ab7a00d56dd7e85 (patch) | |
tree | cf025478adbc2243a5b11d4c5e1dda7acf0d3086 /ethvm/vm_test.go | |
parent | 92b16618edf6bbb6d98659050d8bf0d538285491 (diff) | |
parent | dcf4fad97156f431612ed3915e167ce5a5314588 (diff) | |
download | go-tangerine-702cf5a3e19e33616e7e98ec8ab7a00d56dd7e85.tar go-tangerine-702cf5a3e19e33616e7e98ec8ab7a00d56dd7e85.tar.gz go-tangerine-702cf5a3e19e33616e7e98ec8ab7a00d56dd7e85.tar.bz2 go-tangerine-702cf5a3e19e33616e7e98ec8ab7a00d56dd7e85.tar.lz go-tangerine-702cf5a3e19e33616e7e98ec8ab7a00d56dd7e85.tar.xz go-tangerine-702cf5a3e19e33616e7e98ec8ab7a00d56dd7e85.tar.zst go-tangerine-702cf5a3e19e33616e7e98ec8ab7a00d56dd7e85.zip |
Merge branch 'feature/refactor_vm' into develop
Diffstat (limited to 'ethvm/vm_test.go')
-rw-r--r-- | ethvm/vm_test.go | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/ethvm/vm_test.go b/ethvm/vm_test.go new file mode 100644 index 000000000..501d0c284 --- /dev/null +++ b/ethvm/vm_test.go @@ -0,0 +1,45 @@ +package ethvm + +import ( + "fmt" + "github.com/ethereum/eth-go/ethdb" + "github.com/ethereum/eth-go/ethlog" + "github.com/ethereum/eth-go/ethstate" + "github.com/ethereum/eth-go/ethutil" + "log" + "math/big" + "os" + "testing" +) + +type TestEnv struct { +} + +func (self TestEnv) Origin() []byte { return nil } +func (self TestEnv) BlockNumber() *big.Int { return nil } +func (self TestEnv) PrevHash() []byte { return nil } +func (self TestEnv) Coinbase() []byte { return nil } +func (self TestEnv) Time() int64 { return 0 } +func (self TestEnv) Difficulty() *big.Int { return nil } +func (self TestEnv) Value() *big.Int { return nil } +func (self TestEnv) State() *ethstate.State { return nil } + +func TestVm(t *testing.T) { + ethlog.AddLogSystem(ethlog.NewStdLogSystem(os.Stdout, log.LstdFlags, ethlog.LogLevel(4))) + + db, _ := ethdb.NewMemDatabase() + ethutil.ReadConfig(".ethtest", "/tmp/ethtest", "") + ethutil.Config.Db = db + + stateObject := ethstate.NewStateObject([]byte{'j', 'e', 'f', 'f'}) + callerClosure := NewClosure(stateObject, stateObject, []byte{0x60, 0x01}, big.NewInt(1000000), big.NewInt(0)) + + vm := New(TestEnv{}) + vm.Verbose = true + + ret, _, e := callerClosure.Call(vm, nil) + if e != nil { + fmt.Println("error", e) + } + fmt.Println(ret) +} |