Added RPC test for BCash mainnet
This commit is contained in:
parent
257a9f0f4d
commit
e0a5c44314
@ -11,66 +11,115 @@ import (
|
||||
"testing"
|
||||
)
|
||||
|
||||
func getRPCClient(cfg json.RawMessage) (bchain.BlockChain, error) {
|
||||
c, err := NewBCashRPC(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 := NewBCashRPC(cfg, nil)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
cli := c.(*BCashRPC)
|
||||
cli.Parser, err = NewBCashParser(GetChainParams(chain), cli.ChainConfig)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
cli.Mempool = bchain.NewUTXOMempool(cli, cli.ChainConfig.MempoolWorkers, cli.ChainConfig.MempoolSubWorkers)
|
||||
return cli, nil
|
||||
}
|
||||
cli := c.(*BCashRPC)
|
||||
cli.Parser, err = NewBCashParser(GetChainParams("test"), cli.ChainConfig)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
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("Bcash Testnet", getRPCClient)
|
||||
|
||||
t, err := rpc.NewTest("Bcash", getRPCClient("main"))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
rpcTest = t
|
||||
tests.mainnet = t
|
||||
|
||||
t, err = rpc.NewTest("Bcash Testnet", getRPCClient("test"))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
tests.testnet = t
|
||||
|
||||
os.Exit(m.Run())
|
||||
}
|
||||
|
||||
func TestBCashRPC_GetBlockHash(t *testing.T) {
|
||||
rpcTest.TestGetBlockHash(t)
|
||||
tests.mainnet.TestGetBlockHash(t)
|
||||
}
|
||||
|
||||
func TestBCashRPC_GetBlock(t *testing.T) {
|
||||
rpcTest.TestGetBlock(t)
|
||||
tests.mainnet.TestGetBlock(t)
|
||||
}
|
||||
|
||||
func TestBCashRPC_GetTransaction(t *testing.T) {
|
||||
rpcTest.TestGetTransaction(t)
|
||||
tests.mainnet.TestGetTransaction(t)
|
||||
}
|
||||
|
||||
func TestBCashRPC_GetTransactionForMempool(t *testing.T) {
|
||||
rpcTest.TestGetTransactionForMempool(t)
|
||||
tests.mainnet.TestGetTransactionForMempool(t)
|
||||
}
|
||||
|
||||
func TestBCashRPC_MempoolSync(t *testing.T) {
|
||||
rpcTest.TestMempoolSync(t)
|
||||
tests.mainnet.TestMempoolSync(t)
|
||||
}
|
||||
|
||||
func TestBCashRPC_GetMempoolEntry(t *testing.T) {
|
||||
rpcTest.TestGetMempoolEntry(t)
|
||||
tests.mainnet.TestGetMempoolEntry(t)
|
||||
}
|
||||
|
||||
func TestBCashRPC_SendRawTransaction(t *testing.T) {
|
||||
rpcTest.TestSendRawTransaction(t)
|
||||
tests.mainnet.TestSendRawTransaction(t)
|
||||
}
|
||||
|
||||
func TestBCashRPC_EstimateSmartFee(t *testing.T) {
|
||||
rpcTest.TestEstimateSmartFee(t)
|
||||
tests.mainnet.TestEstimateSmartFee(t)
|
||||
}
|
||||
|
||||
func TestBCashRPC_EstimateFee(t *testing.T) {
|
||||
rpcTest.TestEstimateFee(t)
|
||||
tests.mainnet.TestEstimateFee(t)
|
||||
}
|
||||
|
||||
func TestBCashTestnetRPC_GetBlockHash(t *testing.T) {
|
||||
tests.testnet.TestGetBlockHash(t)
|
||||
}
|
||||
|
||||
func TestBCashTestnetRPC_GetBlock(t *testing.T) {
|
||||
tests.testnet.TestGetBlock(t)
|
||||
}
|
||||
|
||||
func TestBCashTestnetRPC_GetTransaction(t *testing.T) {
|
||||
tests.testnet.TestGetTransaction(t)
|
||||
}
|
||||
|
||||
func TestBCashTestnetRPC_GetTransactionForMempool(t *testing.T) {
|
||||
tests.testnet.TestGetTransactionForMempool(t)
|
||||
}
|
||||
|
||||
func TestBCashTestnetRPC_MempoolSync(t *testing.T) {
|
||||
tests.testnet.TestMempoolSync(t)
|
||||
}
|
||||
|
||||
func TestBCashTestnetRPC_GetMempoolEntry(t *testing.T) {
|
||||
tests.testnet.TestGetMempoolEntry(t)
|
||||
}
|
||||
|
||||
func TestBCashTestnetRPC_SendRawTransaction(t *testing.T) {
|
||||
tests.testnet.TestSendRawTransaction(t)
|
||||
}
|
||||
|
||||
func TestBCashTestnetRPC_EstimateSmartFee(t *testing.T) {
|
||||
tests.testnet.TestEstimateSmartFee(t)
|
||||
}
|
||||
|
||||
func TestBCashTestnetRPC_EstimateFee(t *testing.T) {
|
||||
tests.testnet.TestEstimateFee(t)
|
||||
}
|
||||
|
||||
75
bchain/tests/rpc/testdata/Bcash.json
vendored
Normal file
75
bchain/tests/rpc/testdata/Bcash.json
vendored
Normal file
@ -0,0 +1,75 @@
|
||||
{
|
||||
"blockHeight": 179921,
|
||||
"blockHash": "00000000000004e221e0d2adf41b5018cf75395cc83ff9ff70aab0569d21f9dc",
|
||||
"blockTxs": [
|
||||
"46655a2258c204e5948245c248e1524222c1f22a9ca7c02de686c6b83f55f55e",
|
||||
"d59084c6ab21033b29df358e1b23ecd1617d48ffbbb63ba567c769f9d48a2842",
|
||||
"16296fd663e1bd0a9566534678cc64d6250222a3f03b8a6dbdc0b011003b1f2a",
|
||||
"e6bcc688c5ba13f2ab9d6fdc39fe6dcdc94dc876d51dfbb1108f5252c515b26c",
|
||||
"aaff4792985d8825f7365dea1f026aa4ec57d93af47da67b5c6839efe6c098d2",
|
||||
"61f52169796a2490cf76cc2d68f6ca8d48971ead87b8815307ef53c608cca318",
|
||||
"995c1ed442f0777adb652b36d1c5038c85663f3e3b6d0e26c819b21d710fadda",
|
||||
"2eceaa18d1d1529cbbd385df69dbfd684977de4c545e905974afc35afe1fd358",
|
||||
"c6f3a4a4bed847de0fee0118b43d3854e2b65f20d2319e084fbf448d4bd85c75",
|
||||
"933cba6c287bdfaa0c7f4ec5f8f35ea51b59df1d539d0a32a28dcc99dce5b721",
|
||||
"2373109ea6025b0b237aea1193c097cd1197e59e465382105f4d88a8d6ac0152",
|
||||
"55117cf6c5f384f87cef2b789f36ff6d7b4f7ccbacf84834e1e09227fdce5ac9",
|
||||
"c2348e1df31f12a61c8fc94542a43dc8feba3e215d01b5dd12251b68f918ceb2",
|
||||
"01ab8e4d2324c3e466ee4c29863b34967791217aea13c0a12499a4362cd1af18",
|
||||
"480603369259ea683b53369e9b8faf71f3f0b7de52e3bc6b67702f88a3a8bbf1",
|
||||
"31c673e559d4b41c617fc197f0d60b6183a30e21d356a5a18ebc78086a32d69c",
|
||||
"3ef0af7cc977e936eb43caeb1fb029660f3798fffc416695f9af4d7d9cbf9d1a",
|
||||
"38ed7b5659ead06eeed927f8519e758b55caf3bedcd830f15f6d07166d624f0f",
|
||||
"5f3d9ea5da6ee49d948d565e64a4d3c49f435b77f8ff10fe74e3536dff0079ea",
|
||||
"15659d35fafb656804c1e92ff6593339b3103b02c55d8f9b2e6df08cbf150877",
|
||||
"055254b83fb49387de92905b44da7c680758dd0da8ed5bcd8ee2297175089984",
|
||||
"5530c68b861f6c202b3a3627b0639f199d92fcc0f6bc8b203ccc14a3e1a1aacd",
|
||||
"971d2d9537dbc4a76c4026e5591b02b4f297208cbb38de4444da0dffc68273d4",
|
||||
"5980150c623b9b231507ae0988d53a43d3bae00edbad2590cc27ebec05c6d54e",
|
||||
"dc2a33f6697f72d7f88b20e381a131be25b244d144bdf578c09b902fc892e6b4",
|
||||
"2858d0461ba9790c0e4d67e1b235cb9dcf0a06ac470db967f00d8783a141756b",
|
||||
"2e5d7c5e86b0785d36bed7cae59debdd106372b10cc69243d8deb1cf1b902295",
|
||||
"43cc4cc98fa121b4d0d9d82233322dd4d3b848c59c891438370b42b170ccea1e",
|
||||
"3a71dea98514852654b4b6577178afeb836f995f07f2e0a82b6d775b31ff5549",
|
||||
"198cedc3489dc531fced23477aec5eb5ca230213269a53fea4450e7a4574e773",
|
||||
"4bd239288219fec9f8fdb0904e757eb4e338c8f04a4cf5302526a4f2a40aab40",
|
||||
"4bfd6a3da24adf1f0569a89879110feefff35d8a01c8d3f6fddb58d44c740163",
|
||||
"8e507a4edbeae5fe845b22d42b740186ff40d9152dc1483a8e9d13a7206830f9",
|
||||
"75c0a8f6bdaf92ae0618e99e934f174a1b9984346ebd10b690767f1911df58fb"
|
||||
],
|
||||
"txDetails": {
|
||||
"61f52169796a2490cf76cc2d68f6ca8d48971ead87b8815307ef53c608cca318": {
|
||||
"hex": "01000000013a5447f0e0aa71944dac8c5c9f104491a6a1454635821530cfdf11e41cf68156090000008a47304402206d997d39b79d31acfbb9add1af599cc93cb65264bb0324d56a50ffb443b98fca02203577a3fac4563d163c6a3ebb510ef16e873067b93fe3339eaa55dff60e20bffc014104b55697fa74b02962316e19eeb460eeca08be61e64bbe36c43a2c3429fd9dbd277dff78c8ea85b937d76c5f897f8ac0082fbd2d2b469f2dad8bfe480bae050fc9ffffffff02d69ce702000000001976a914b8605be5c0157121a7e5d787e2b2a1addd7a0ead88ac80841e00000000001976a91414d07495bc247fff4db76d3ed6b27b769e0006af88ac00000000",
|
||||
"txid": "61f52169796a2490cf76cc2d68f6ca8d48971ead87b8815307ef53c608cca318",
|
||||
"blocktime":1336884140,
|
||||
"time":1336884140,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
{
|
||||
"txid": "5681f61ce411dfcf301582354645a1a69144109f5c8cac4d9471aae0f047543a",
|
||||
"vout": 9,
|
||||
"sequence": 4294967295,
|
||||
"scriptSig": {
|
||||
"hex": "47304402206d997d39b79d31acfbb9add1af599cc93cb65264bb0324d56a50ffb443b98fca02203577a3fac4563d163c6a3ebb510ef16e873067b93fe3339eaa55dff60e20bffc014104b55697fa74b02962316e19eeb460eeca08be61e64bbe36c43a2c3429fd9dbd277dff78c8ea85b937d76c5f897f8ac0082fbd2d2b469f2dad8bfe480bae050fc9"
|
||||
}
|
||||
}
|
||||
],
|
||||
"vout": [
|
||||
{
|
||||
"value": 0.48733398,
|
||||
"n": 0,
|
||||
"scriptPubKey": {
|
||||
"hex": "76a914b8605be5c0157121a7e5d787e2b2a1addd7a0ead88ac"
|
||||
}
|
||||
},
|
||||
{
|
||||
"value": 0.02000000,
|
||||
"n": 1,
|
||||
"scriptPubKey": {
|
||||
"hex": "76a91414d07495bc247fff4db76d3ed6b27b769e0006af88ac"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user