66 lines
1.6 KiB
Go
66 lines
1.6 KiB
Go
|
package integration_test
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
"os"
|
||
|
"strconv"
|
||
|
"time"
|
||
|
|
||
|
"github.com/ethereum/go-ethereum/common"
|
||
|
"github.com/ethereum/go-ethereum/statediff/indexer/node"
|
||
|
"github.com/ethereum/go-ethereum/statediff/indexer/postgres"
|
||
|
. "github.com/onsi/ginkgo"
|
||
|
. "github.com/onsi/gomega"
|
||
|
|
||
|
"github.com/Vulcanize/ipld-eth-db-validator/pkg/validator"
|
||
|
|
||
|
integration "github.com/vulcanize/ipld-eth-server/test"
|
||
|
)
|
||
|
|
||
|
const trail = 0
|
||
|
|
||
|
var randomAddr = common.HexToAddress("0x1C3ab14BBaD3D99F4203bd7a11aCB94882050E6f")
|
||
|
|
||
|
var _ = Describe("Integration test", func() {
|
||
|
directProxyEthCalls, err := strconv.ParseBool(os.Getenv("ETH_FORWARD_ETH_CALLS"))
|
||
|
Expect(err).To(BeNil())
|
||
|
|
||
|
Expect(err).ToNot(HaveOccurred())
|
||
|
ctx := context.Background()
|
||
|
|
||
|
var contract *integration.ContractDeployed
|
||
|
var contractErr error
|
||
|
sleepInterval := 5 * time.Second
|
||
|
|
||
|
Describe("Validate state", func() {
|
||
|
BeforeEach(func() {
|
||
|
if directProxyEthCalls {
|
||
|
Skip("skipping no-direct-proxy-forwarding integration tests")
|
||
|
}
|
||
|
contract, contractErr = integration.DeployContract()
|
||
|
time.Sleep(sleepInterval)
|
||
|
})
|
||
|
|
||
|
It("Validate state root", func() {
|
||
|
Expect(contractErr).ToNot(HaveOccurred())
|
||
|
|
||
|
db, _ := setupDB()
|
||
|
srvc := validator.NewService(db, uint64(contract.BlockNumber), trail, validator.IntegrationTestChainConfig)
|
||
|
_, err = srvc.Start(ctx)
|
||
|
Expect(err).ToNot(HaveOccurred())
|
||
|
|
||
|
})
|
||
|
})
|
||
|
})
|
||
|
|
||
|
func setupDB() (*postgres.DB, error) {
|
||
|
uri := postgres.DbConnectionString(postgres.ConnectionParams{
|
||
|
User: "vdbm",
|
||
|
Password: "password",
|
||
|
Hostname: "localhost",
|
||
|
Name: "vulcanize_testing",
|
||
|
Port: 8077,
|
||
|
})
|
||
|
return validator.NewDB(uri, postgres.ConnectionConfig{}, node.Info{})
|
||
|
}
|