Added RPC test for Dash mainnet
This commit is contained in:
parent
42d687112f
commit
7d90fce3dd
@ -11,59 +11,103 @@ import (
|
||||
"testing"
|
||||
)
|
||||
|
||||
func getRPCClient(cfg json.RawMessage) (bchain.BlockChain, error) {
|
||||
c, err := NewDashRPC(cfg, nil)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
func getRPCClient(chain string) func(json.RawMessage) (bchain.BlockChain, error) {
|
||||
return func(cfg json.RawMessage) (bchain.BlockChain, error) {
|
||||
c, err := NewDashRPC(cfg, nil)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
cli := c.(*DashRPC)
|
||||
cli.Parser = NewDashParser(GetChainParams(chain), cli.ChainConfig)
|
||||
cli.Mempool = bchain.NewUTXOMempool(cli, cli.ChainConfig.MempoolWorkers, cli.ChainConfig.MempoolSubWorkers)
|
||||
return cli, nil
|
||||
}
|
||||
cli := c.(*DashRPC)
|
||||
cli.Parser = NewDashParser(GetChainParams("test"), cli.ChainConfig)
|
||||
cli.Mempool = bchain.NewUTXOMempool(cli, cli.ChainConfig.MempoolWorkers, cli.ChainConfig.MempoolSubWorkers)
|
||||
return cli, nil
|
||||
}
|
||||
|
||||
var rpcTest *rpc.Test
|
||||
var tests struct {
|
||||
mainnet *rpc.Test
|
||||
testnet *rpc.Test
|
||||
}
|
||||
|
||||
func TestMain(m *testing.M) {
|
||||
flag.Parse()
|
||||
t, err := rpc.NewTest("Dash Testnet", getRPCClient)
|
||||
t, err := rpc.NewTest("Dash", getRPCClient("main"))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
rpcTest = t
|
||||
tests.mainnet = t
|
||||
|
||||
t, err = rpc.NewTest("Dash Testnet", getRPCClient("test"))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
tests.testnet = t
|
||||
|
||||
os.Exit(m.Run())
|
||||
}
|
||||
|
||||
func TestDashRPC_GetBlockHash(t *testing.T) {
|
||||
rpcTest.TestGetBlockHash(t)
|
||||
tests.mainnet.TestGetBlockHash(t)
|
||||
}
|
||||
|
||||
func TestDashRPC_GetBlock(t *testing.T) {
|
||||
rpcTest.TestGetBlock(t)
|
||||
tests.mainnet.TestGetBlock(t)
|
||||
}
|
||||
|
||||
func TestDashRPC_GetTransaction(t *testing.T) {
|
||||
rpcTest.TestGetTransaction(t)
|
||||
tests.mainnet.TestGetTransaction(t)
|
||||
}
|
||||
|
||||
func TestDashRPC_GetTransactionForMempool(t *testing.T) {
|
||||
rpcTest.TestGetTransactionForMempool(t)
|
||||
tests.mainnet.TestGetTransactionForMempool(t)
|
||||
}
|
||||
|
||||
func TestDashRPC_MempoolSync(t *testing.T) {
|
||||
rpcTest.TestMempoolSync(t)
|
||||
tests.mainnet.TestMempoolSync(t)
|
||||
}
|
||||
|
||||
func TestDashRPC_SendRawTransaction(t *testing.T) {
|
||||
rpcTest.TestSendRawTransaction(t)
|
||||
tests.mainnet.TestSendRawTransaction(t)
|
||||
}
|
||||
|
||||
func TestDashRPC_EstimateSmartFee(t *testing.T) {
|
||||
rpcTest.TestEstimateSmartFee(t)
|
||||
tests.mainnet.TestEstimateSmartFee(t)
|
||||
}
|
||||
|
||||
func TestDashRPC_EstimateFee(t *testing.T) {
|
||||
rpcTest.TestEstimateFee(t)
|
||||
tests.mainnet.TestEstimateFee(t)
|
||||
}
|
||||
|
||||
func TestDashTestnetRPC_GetBlockHash(t *testing.T) {
|
||||
tests.testnet.TestGetBlockHash(t)
|
||||
}
|
||||
|
||||
func TestDashTestnetRPC_GetBlock(t *testing.T) {
|
||||
tests.testnet.TestGetBlock(t)
|
||||
}
|
||||
|
||||
func TestDashTestnetRPC_GetTransaction(t *testing.T) {
|
||||
tests.testnet.TestGetTransaction(t)
|
||||
}
|
||||
|
||||
func TestDashTestnetRPC_GetTransactionForMempool(t *testing.T) {
|
||||
tests.testnet.TestGetTransactionForMempool(t)
|
||||
}
|
||||
|
||||
func TestDashTestnetRPC_MempoolSync(t *testing.T) {
|
||||
tests.testnet.TestMempoolSync(t)
|
||||
}
|
||||
|
||||
func TestDashTestnetRPC_SendRawTransaction(t *testing.T) {
|
||||
tests.testnet.TestSendRawTransaction(t)
|
||||
}
|
||||
|
||||
func TestDashTestnetRPC_EstimateSmartFee(t *testing.T) {
|
||||
tests.testnet.TestEstimateSmartFee(t)
|
||||
}
|
||||
|
||||
func TestDashTestnetRPC_EstimateFee(t *testing.T) {
|
||||
tests.testnet.TestEstimateFee(t)
|
||||
}
|
||||
|
||||
58
bchain/tests/rpc/testdata/Dash.json
vendored
Normal file
58
bchain/tests/rpc/testdata/Dash.json
vendored
Normal file
@ -0,0 +1,58 @@
|
||||
{
|
||||
"blockHeight": 894503,
|
||||
"blockHash": "0000000000000026e2b7c7bb478f0ee846dd976ac6b97c3f3f7c8c65beab88a4",
|
||||
"blockTxs": [
|
||||
"6ea3a7fee4c40170d8782719d6fbeafd4cabb830f880d91bcf34811ad79e57bb",
|
||||
"c269940d8e46d94ff61a4adec8aa6dfb13803723a95a5b61c7831d3aea308cbc",
|
||||
"311d88d267dc099aacaeefba86770918d1f64c2b3f0db740336c48443d76930a",
|
||||
"8fb04b7aa96faf585395160165b8aca332033b8eded505092aaca0e06805ba10",
|
||||
"e28b7241432cc9ed3ec57136b662b354a6b32a08b8c2b265aebc08e8cc3578a5",
|
||||
"677a619d342262fee2ade09a03318322c15b40878583975794d39c63a1e8584f",
|
||||
"5f2aeacf8a93a7f8410839270eb6a94f659e5eef66e757b4e9ffe58c49cad0b9",
|
||||
"b56c423e9a84abb50c145591788f1e2539aa6f7dde52ab700b45149546a78670",
|
||||
"37478c09354bcdd650505e325699732d4c6aaec87f6bd696a59f1336b153a3d7",
|
||||
"8be9dc7f41aa982f70ba90281564265e1f92f7bcfc9c75c1e2c9abbbd1a81e87",
|
||||
"b85d5809e16100937072c88fc888206079c7105e1acc752159b6fe795332eb83",
|
||||
"ad2488e0604eb39ffac7ae0eee32ab4e2e97d2f25547d25d25865f512236e683",
|
||||
"62d1a3634b10512d1df5282d785bbcc765af3bbdf21490927f2881293d01636f",
|
||||
"5608945bf9bb1ed422b3eb03719aa9a067238d60b2e832ee107e63a9baba5045",
|
||||
"173badd5c5eedf889868b27e627d301d7e47dcbf3ced3f9caafa958d0c29bc3e",
|
||||
"452237bb02aee6dbca4952e2d9f51ba475a7c1b09ab01bf649b72735610fbf2a",
|
||||
"e7186be218879aea9ea32dc8e2ae63f390c7fcb9b755de1218935919f9377626"
|
||||
],
|
||||
"txDetails": {
|
||||
"311d88d267dc099aacaeefba86770918d1f64c2b3f0db740336c48443d76930a": {
|
||||
"hex": "010000000123bd8250d890b3150559a2cc761e50e62440453ca3e24f34a19e088ca82488a7010000006b483045022100b1aa32099a83bfb0c2d0b081eac5ecc8b6e49fac08aebdce025ef43c74615ca002203105c02194805f00c8ac746f1b19e71b4fc4c8ddf214a61e0db543da7099e6d3012103c064d95430c38e9db6d9305075c32dbc22c24a108d8e5be47a74e0b67845debcfeffffff0264d5fb00000000001976a91456354204e7505cb7f4de7c37ffb32ff25b41cd6c88acd4205a03000000001976a914f32332d32e254176014b41872dadd0f1e6d8378688ac00000000",
|
||||
"txid": "311d88d267dc099aacaeefba86770918d1f64c2b3f0db740336c48443d76930a",
|
||||
"blocktime": 1530189699,
|
||||
"time": 1530189699,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
{
|
||||
"txid": "a78824a88c089ea1344fe2a33c454024e6501e76cca2590515b390d85082bd23",
|
||||
"vout": 1,
|
||||
"sequence": 4294967294,
|
||||
"scriptSig": {
|
||||
"hex": "483045022100b1aa32099a83bfb0c2d0b081eac5ecc8b6e49fac08aebdce025ef43c74615ca002203105c02194805f00c8ac746f1b19e71b4fc4c8ddf214a61e0db543da7099e6d3012103c064d95430c38e9db6d9305075c32dbc22c24a108d8e5be47a74e0b67845debc"
|
||||
}
|
||||
}
|
||||
],
|
||||
"vout": [
|
||||
{
|
||||
"value": 0.16504164,
|
||||
"n": 0,
|
||||
"scriptPubKey": {
|
||||
"hex": "76a91456354204e7505cb7f4de7c37ffb32ff25b41cd6c88ac"
|
||||
}
|
||||
},
|
||||
{
|
||||
"value": 0.56238292,
|
||||
"n": 1,
|
||||
"scriptPubKey": {
|
||||
"hex": "76a914f32332d32e254176014b41872dadd0f1e6d8378688ac"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user