From 009b2216921b15962f2612687c1460a8342d49d6 Mon Sep 17 00:00:00 2001 From: zelig Date: Wed, 22 Apr 2015 23:11:11 +0100 Subject: solidity compiler and contract metadocs integration * common/compiler: solidity compiler + tests * rpc: eth_compilers, eth_compileSolidity + tests * fix natspec test using keystore API, notice exp dynamically changes addr, cleanup * resolver implements registrars and needs to create reg contract (temp) * xeth: solidity compiler. expose getter Solc() and paths setter SetSolc(solcPath) * ethereumApi: implement compiler related RPC calls using XEth - json struct tests * admin: make use of XEth.SetSolc to allow runtime setting of compiler paths * cli: command line flags solc to set custom solc bin path * js admin api with new features debug and contractInfo modules * wiki is the doc https://github.com/ethereum/go-ethereum/wiki/Contracts-and-Transactions --- common/resolver/resolver_test.go | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) (limited to 'common/resolver/resolver_test.go') diff --git a/common/resolver/resolver_test.go b/common/resolver/resolver_test.go index f5eb51437..02d12592e 100644 --- a/common/resolver/resolver_test.go +++ b/common/resolver/resolver_test.go @@ -20,6 +20,8 @@ var ( ) func NewTestBackend() *testBackend { + HashRegContractAddress = common.BigToAddress(common.Big0).Hex()[2:] + UrlHintContractAddress = common.BigToAddress(common.Big1).Hex()[2:] self := &testBackend{} self.contracts = make(map[string](map[string]string)) @@ -27,14 +29,13 @@ func NewTestBackend() *testBackend { key := storageAddress(storageMapping(storageIdx2Addr(1), codehash[:])) self.contracts[HashRegContractAddress][key] = hash.Hex() - self.contracts[URLHintContractAddress] = make(map[string]string) + self.contracts[UrlHintContractAddress] = make(map[string]string) mapaddr := storageMapping(storageIdx2Addr(1), hash[:]) key = storageAddress(storageFixedArray(mapaddr, storageIdx2Addr(0))) - self.contracts[URLHintContractAddress][key] = common.ToHex([]byte(url)) + self.contracts[UrlHintContractAddress][key] = common.ToHex([]byte(url)) key = storageAddress(storageFixedArray(mapaddr, storageIdx2Addr(1))) - self.contracts[URLHintContractAddress][key] = "0x00" - + self.contracts[UrlHintContractAddress][key] = "0x00" return self } @@ -47,42 +48,46 @@ func (self *testBackend) StorageAt(ca, sa string) (res string) { return } +func (self *testBackend) Transact(fromStr, toStr, nonceStr, valueStr, gasStr, gasPriceStr, codeStr string) (string, error) { + return "", nil +} + func TestKeyToContentHash(t *testing.T) { b := NewTestBackend() - res := New(b, URLHintContractAddress, HashRegContractAddress) + res := New(b) got, err := res.KeyToContentHash(codehash) if err != nil { t.Errorf("expected no error, got %v", err) } else { if got != hash { - t.Errorf("incorrect result, expected %x, got %x: ", hash.Hex(), got.Hex()) + t.Errorf("incorrect result, expected '%v', got '%v'", hash.Hex(), got.Hex()) } } } func TestContentHashToUrl(t *testing.T) { b := NewTestBackend() - res := New(b, URLHintContractAddress, HashRegContractAddress) + res := New(b) got, err := res.ContentHashToUrl(hash) if err != nil { t.Errorf("expected no error, got %v", err) } else { - if string(got) != url { - t.Errorf("incorrect result, expected %v, got %s: ", url, string(got)) + if got != url { + t.Errorf("incorrect result, expected '%v', got '%s'", url, got) } } } func TestKeyToUrl(t *testing.T) { b := NewTestBackend() - res := New(b, URLHintContractAddress, HashRegContractAddress) + res := New(b) got, _, err := res.KeyToUrl(codehash) if err != nil { t.Errorf("expected no error, got %v", err) } else { - if string(got) != url { - t.Errorf("incorrect result, expected %v, got %s: ", url, string(got)) + if got != url { + t.Errorf("incorrect result, expected \n'%s', got \n'%s'", url, got) } } } -- cgit v1.2.3