NatSpec contracts in genesis block, end to end test (unfinished)

This commit is contained in:
zsfelfoldi
2015-04-03 17:37:59 +02:00
committed by zelig
parent ac0e5e8b6d
commit e2d333d209
9 changed files with 217 additions and 60 deletions

33
core/contracts.go Normal file
View File

@ -0,0 +1,33 @@
package core
const ( // built-in contracts address and code
ContractAddrURLhint = "0000000000000000000000000000000000000008"
ContractCodeURLhint = "0x60bd80600c6000396000f30060003560e060020a900480632f92673214601557005b60216004356024356027565b60006000f35b6000805490816001019055506001600083815260200190815260200160002054600160a060020a0316600014806081575033600160a060020a03166001600084815260200190815260200160002054600160a060020a0316145b60885760b9565b3360016000848152602001908152602001600020819055508060026000848152602001908152602001600020819055505b505056"
//"0x60b180600c6000396000f30060003560e060020a900480632f92673214601557005b60216004356024356027565b60006000f35b6000600083815260200190815260200160002054600160a060020a0316600014806075575033600160a060020a03166000600084815260200190815260200160002054600160a060020a0316145b607c5760ad565b3360006000848152602001908152602001600020819055508060016000848152602001908152602001600020819055505b505056"
/*
contract URLhint {
function register(bytes32 _hash, bytes32 _url) {
testcnt++;
if (owner[_hash] == 0 || owner[_hash] == msg.sender) {
owner[_hash] = msg.sender;
url[_hash] = _url;
}
}
uint32 testcnt;
mapping (bytes32 => address) owner;
mapping (bytes32 => bytes32) url;
}
*/
ContractAddrHashReg = "0000000000000000000000000000000000000009"
ContractCodeHashReg = "0x3360008190555060628060136000396000f30060003560e060020a900480632f92673214601557005b60216004356024356027565b60006000f35b600054600160a060020a031633600160a060020a031614604557605e565b8060016000848152602001908152602001600020819055505b505056"
/*
import "owned";
contract HashReg is owned {
function register(bytes32 _code, bytes32 _abi) onlyowner {
abis[_code] = _abi;
}
mapping (bytes32 => bytes32) abis;
}
*/
)

View File

@ -56,7 +56,15 @@ func GenesisBlock(db common.Database) *types.Block {
return genesis
}
const (
TestAccount = "e273f01c99144c438695e10f24926dc1f9fbf62d"
TestBalance = "1000000000000000000"
)
var genesisData = []byte(`{
"` + TestAccount + `": {"balance": "` + TestBalance + `"},
"` + ContractAddrURLhint + `": {"balance": "` + TestBalance + `", "code": "` + ContractCodeURLhint + `" },
"` + ContractAddrHashReg + `": {"balance": "` + TestBalance + `", "code": "` + ContractCodeHashReg + `" },
"0000000000000000000000000000000000000001": {"balance": "1"},
"0000000000000000000000000000000000000002": {"balance": "1"},
"0000000000000000000000000000000000000003": {"balance": "1"},