forked from cerc-io/ipld-eth-server
66 lines
1.9 KiB
Go
66 lines
1.9 KiB
Go
package test_helpers
|
|
|
|
import (
|
|
"github.com/ethereum/go-ethereum/ethclient"
|
|
"github.com/ethereum/go-ethereum/rpc"
|
|
. "github.com/onsi/gomega"
|
|
|
|
"github.com/vulcanize/vulcanizedb/pkg/config"
|
|
"github.com/vulcanize/vulcanizedb/pkg/core"
|
|
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
|
|
"github.com/vulcanize/vulcanizedb/pkg/geth"
|
|
"github.com/vulcanize/vulcanizedb/pkg/geth/client"
|
|
rpc2 "github.com/vulcanize/vulcanizedb/pkg/geth/converters/rpc"
|
|
"github.com/vulcanize/vulcanizedb/pkg/geth/node"
|
|
)
|
|
|
|
func SetupDBandBC() (*postgres.DB, core.BlockChain) {
|
|
infuraIPC := "http://kovan0.vulcanize.io:8545"
|
|
rawRpcClient, err := rpc.Dial(infuraIPC)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
rpcClient := client.NewRpcClient(rawRpcClient, infuraIPC)
|
|
ethClient := ethclient.NewClient(rawRpcClient)
|
|
blockChainClient := client.NewEthClient(ethClient)
|
|
node := node.MakeNode(rpcClient)
|
|
transactionConverter := rpc2.NewRpcTransactionConverter(ethClient)
|
|
blockChain := geth.NewBlockChain(blockChainClient, rpcClient, node, transactionConverter)
|
|
|
|
db, err := postgres.NewDB(config.Database{
|
|
Hostname: "localhost",
|
|
Name: "vulcanize_private",
|
|
Port: 5432,
|
|
}, blockChain.Node())
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
return db, blockChain
|
|
}
|
|
|
|
func TearDown(db *postgres.DB) {
|
|
tx, err := db.Begin()
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
_, err = tx.Exec(`DELETE FROM headers`)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
_, err = tx.Exec(`DELETE FROM logs`)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
_, err = tx.Exec(`DELETE FROM log_filters`)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
_, err = tx.Exec(`DELETE FROM transactions`)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
_, err = tx.Exec(`DELETE FROM receipts`)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
_, err = tx.Exec(`DELETE FROM checked_headers`)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
_, err = tx.Exec(`DELETE FROM maker.bite`)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
err = tx.Commit()
|
|
Expect(err).NotTo(HaveOccurred())
|
|
}
|