composeAndExecute command that loads and executes over arbitrary transformer set exported from a go plugin generated according to config file; test for plugin generation, loading, and execution; work on plugins README

This commit is contained in:
Ian Norden
2019-02-24 15:23:35 -06:00
parent fa4abe4e5c
commit 6c2d895023
116 changed files with 10554 additions and 454 deletions
+23
View File
@@ -0,0 +1,23 @@
// VulcanizeDB
// Copyright © 2018 Vulcanize
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
package autogen
type Config struct {
Imports map[string]string // Map of import alias to import path
FilePath string
FileName string
}
+138
View File
@@ -0,0 +1,138 @@
// VulcanizeDB
// Copyright © 2018 Vulcanize
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
package autogen
import (
"errors"
"os"
"os/exec"
"path/filepath"
"strings"
. "github.com/dave/jennifer/jen"
"github.com/mitchellh/go-homedir"
)
type Generator interface {
GenerateTransformerPlugin() error
}
type generator struct {
*Config
}
func NewGenerator(config Config) *generator {
return &generator{
Config: &config,
}
}
func (g *generator) GenerateTransformerPlugin() error {
if g.Config == nil {
return errors.New("generator needs a config file")
}
if g.Config.FilePath == "" {
return errors.New("generator is missing file path")
}
if len(g.Config.Imports) < 1 {
return errors.New("generator needs to be configured with imports")
}
// Create file path
goFile, soFile, err := GetPaths(*g.Config)
if err != nil {
return err
}
// Clear previous .go and .so files if they exist
err = ClearFiles(goFile, soFile)
if err != nil {
return err
}
// Begin code generation
f := NewFile("main")
f.HeaderComment("This exporter is generated to export the configured transformer initializers")
// Import TransformerInitializers
f.ImportAlias("github.com/vulcanize/vulcanizedb/libraries/shared/transformer", "interface")
for alias, imp := range g.Config.Imports {
f.ImportAlias(imp, alias)
}
// Collect TransformerInitializer names
importedInitializers := make([]Code, 0, len(g.Config.Imports))
for _, path := range g.Config.Imports {
importedInitializers = append(importedInitializers, Qual(path, "TransformerInitializer"))
}
// Create Exporter variable with method to export a set of the configured TransformerInitializers
f.Type().Id("exporter").String()
f.Var().Id("Exporter").Id("exporter")
f.Func().Params(
Id("e").Id("exporter"),
).Id("Export").Params().Index().Qual(
"github.com/vulcanize/vulcanizedb/libraries/shared/transformer",
"TransformerInitializer").Block(
Return(Index().Qual(
"github.com/vulcanize/vulcanizedb/libraries/shared/transformer",
"TransformerInitializer").Values(importedInitializers...)))
// Write code to destination file
err = f.Save(goFile)
if err != nil {
return err
}
// Build the .go file into a .so plugin
return exec.Command("go", "build", "-buildmode=plugin", "-o", soFile, goFile).Run()
}
func GetPaths(config Config) (string, string, error) {
path, err := homedir.Expand(filepath.Clean(config.FilePath))
if err != nil {
return "", "", err
}
if strings.Contains(path, "$GOPATH") {
env := os.Getenv("GOPATH")
spl := strings.Split(path, "$GOPATH")[1]
path = filepath.Join(env, spl)
}
name := strings.Split(config.FileName, ".")[0]
goFile := filepath.Join(path, name+".go")
soFile := filepath.Join(path, name+".so")
return goFile, soFile, nil
}
func ClearFiles(files ...string) error {
for _, file := range files {
if _, err := os.Stat(file); err == nil {
err = os.Remove(file)
if err != nil {
return err
}
} else if os.IsNotExist(err) {
// fall through
} else {
return err
}
}
return nil
}
+35
View File
@@ -0,0 +1,35 @@
// VulcanizeDB
// Copyright © 2018 Vulcanize
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
package autogen_test
import (
"io/ioutil"
"log"
"testing"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
func TestRepository(t *testing.T) {
RegisterFailHandler(Fail)
RunSpecs(t, "Autogen Suite Test")
}
var _ = BeforeSuite(func() {
log.SetOutput(ioutil.Discard)
})
+138
View File
@@ -0,0 +1,138 @@
// VulcanizeDB
// Copyright © 2018 Vulcanize
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
package autogen_test
import (
"plugin"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
"github.com/spf13/viper"
"github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/libraries/shared/watcher"
"github.com/vulcanize/vulcanizedb/pkg/autogen"
"github.com/vulcanize/vulcanizedb/pkg/autogen/test_helpers"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres/repositories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/bite"
)
var testConfig = autogen.Config{
Imports: map[string]string{
"bite": "github.com/vulcanize/vulcanizedb/pkg/autogen/test_helpers/bite",
"deal": "github.com/vulcanize/vulcanizedb/pkg/autogen/test_helpers/deal",
},
FileName: "testTransformerSet",
FilePath: "$GOPATH/src/github.com/vulcanize/vulcanizedb/pkg/autogen/test_helpers/test/",
}
var targetConfig = autogen.Config{
Imports: map[string]string{
"bite": "github.com/vulcanize/vulcanizedb/pkg/autogen/test_helpers/bite",
"deal": "github.com/vulcanize/vulcanizedb/pkg/autogen/test_helpers/deal",
},
FileName: "targetTransformerSet",
FilePath: "$GOPATH/src/github.com/vulcanize/vulcanizedb/pkg/autogen/test_helpers/target/",
}
type Exporter interface {
Export() []transformer.TransformerInitializer
}
var _ = Describe("Generator test", func() {
var g autogen.Generator
var goPath, soPath string
var err error
var bc core.BlockChain
var db *postgres.DB
var hr repositories.HeaderRepository
var headerID int64
viper.SetConfigName("compose")
viper.AddConfigPath("$GOPATH/src/github.com/vulcanize/vulcanizedb/environments/")
BeforeEach(func() {
goPath, soPath, err = autogen.GetPaths(testConfig)
Expect(err).ToNot(HaveOccurred())
g = autogen.NewGenerator(testConfig)
err = g.GenerateTransformerPlugin()
Expect(err).ToNot(HaveOccurred())
})
AfterEach(func() {
err := autogen.ClearFiles(goPath, soPath)
Expect(err).ToNot(HaveOccurred())
})
Describe("GenerateTransformerPlugin", func() {
It("It bundles the specified transformer initializers into a Exporter object and creates .so", func() {
plug, err := plugin.Open(soPath)
Expect(err).ToNot(HaveOccurred())
symExporter, err := plug.Lookup("Exporter")
Expect(err).ToNot(HaveOccurred())
exporter, ok := symExporter.(Exporter)
Expect(ok).To(Equal(true))
initializers := exporter.Export()
Expect(len(initializers)).To(Equal(2))
})
It("Loads our generated Exporter and uses it to import an arbitrary set of TransformerInitializers that we can execute over", func() {
db, bc = test_helpers.SetupDBandBC()
defer test_helpers.TearDown(db)
hr = repositories.NewHeaderRepository(db)
header1, err := bc.GetHeaderByNumber(9377319)
Expect(err).ToNot(HaveOccurred())
headerID, err = hr.CreateOrUpdateHeader(header1)
Expect(err).ToNot(HaveOccurred())
plug, err := plugin.Open(soPath)
Expect(err).ToNot(HaveOccurred())
symExporter, err := plug.Lookup("Exporter")
Expect(err).ToNot(HaveOccurred())
exporter, ok := symExporter.(Exporter)
Expect(ok).To(Equal(true))
initializers := exporter.Export()
w := watcher.NewWatcher(db, bc)
w.AddTransformers(initializers)
err = w.Execute()
Expect(err).ToNot(HaveOccurred())
type model struct {
bite.BiteModel
Id int64 `db:"id"`
HeaderId int64 `db:"header_id"`
}
returned := model{}
err = db.Get(&returned, `SELECT * FROM maker.bite WHERE header_id = $1`, headerID)
Expect(err).ToNot(HaveOccurred())
Expect(returned.Ilk).To(Equal("ETH"))
Expect(returned.Urn).To(Equal("0x0000d8b4147eDa80Fec7122AE16DA2479Cbd7ffB"))
Expect(returned.Ink).To(Equal("80000000000000000000"))
Expect(returned.Art).To(Equal("11000000000000000000000"))
Expect(returned.IArt).To(Equal("12496609999999999999992"))
Expect(returned.Tab).To(Equal("11000000000000000000000"))
Expect(returned.NFlip).To(Equal("7"))
Expect(returned.TransactionIndex).To(Equal(uint(1)))
Expect(returned.LogIndex).To(Equal(uint(4)))
})
})
})
@@ -0,0 +1,8 @@
package bite
import (
"github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers"
)
var TransformerInitializer transformer.TransformerInitializer = transformers.GetBiteTransformer().NewTransformer
+65
View File
@@ -0,0 +1,65 @@
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())
}
@@ -0,0 +1,8 @@
package deal
import (
"github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers"
)
var TransformerInitializer transformer.TransformerInitializer = transformers.GetDealTransformer().NewLogNoteTransformer
+3
View File
@@ -0,0 +1,3 @@
### Test
This empty directory is for holding the output code generated, and then deleted, during the generator_tests
@@ -324,7 +324,7 @@ var _ = Describe("Transformer", func() {
Expect(res.Address).To(Equal("0x0000000000000000000000000000000000000000"))
Expect(res.TokenName).To(Equal(""))
err = db.QueryRowx(fmt.Sprintf("SELECT * FROM full_%s.owner_method WHERE node_ = '0x95832c7a47ff8a7840e28b78ceMADEUPaaf4HASHc186badTHIS288IS625bFAKE' AND block = '6194636'", ensAddr)).StructScan(&res)
err = db.QueryRowx(fmt.Sprintf("SELECT * FROM full_%s.owner_method WHERE node_ = '0x95832c7a47ff8a7840e28b78ceMADEUPaaf4HASHc186badTHItransformers.8IS625bFAKE' AND block = '6194636'", ensAddr)).StructScan(&res)
Expect(err).To(HaveOccurred())
})
@@ -331,7 +331,7 @@ var _ = Describe("Transformer", func() {
Expect(res.Address).To(Equal("0x0000000000000000000000000000000000000000"))
Expect(res.TokenName).To(Equal(""))
err = db.QueryRowx(fmt.Sprintf("SELECT * FROM light_%s.owner_method WHERE node_ = '0x95832c7a47ff8a7840e28b78ceMADEUPaaf4HASHc186badTHIS288IS625bFAKE' AND block = '6885696'", ensAddr)).StructScan(&res)
err = db.QueryRowx(fmt.Sprintf("SELECT * FROM light_%s.owner_method WHERE node_ = '0x95832c7a47ff8a7840e28b78ceMADEUPaaf4HASHc186badTHItransformers.8IS625bFAKE' AND block = '6885696'", ensAddr)).StructScan(&res)
Expect(err).To(HaveOccurred())
})
@@ -491,7 +491,7 @@ var _ = Describe("Transformer", func() {
Expect(owner.Address).To(Equal("0x0000000000000000000000000000000000000000"))
Expect(owner.TokenName).To(Equal(""))
err = db.QueryRowx(fmt.Sprintf("SELECT * FROM light_%s.owner_method WHERE node_ = '0x95832c7a47ff8a7840e28b78ceMADEUPaaf4HASHc186badTHIS288IS625bFAKE' AND block = '6885696'", ensAddr)).StructScan(&owner)
err = db.QueryRowx(fmt.Sprintf("SELECT * FROM light_%s.owner_method WHERE node_ = '0x95832c7a47ff8a7840e28b78ceMADEUPaaf4HASHc186badTHItransformers.8IS625bFAKE' AND block = '6885696'", ensAddr)).StructScan(&owner)
Expect(err).To(HaveOccurred())
bal := test_helpers.BalanceOf{}
+3 -3
View File
@@ -17,12 +17,12 @@
package bite
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetBiteConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetBiteConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.BiteLabel,
ContractAddresses: []string{constants.CatContractAddress()},
ContractAbi: constants.CatABI(),
@@ -17,12 +17,12 @@
package chop_lump
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetCatFileChopLumpConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetCatFileChopLumpConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.CatFileChopLumpLabel,
ContractAddresses: []string{constants.CatContractAddress()},
ContractAbi: constants.CatABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package flip
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetCatFileFlipConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetCatFileFlipConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.CatFileFlipLabel,
ContractAddresses: []string{constants.CatContractAddress()},
ContractAbi: constants.CatABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package pit_vow
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetCatFilePitVowConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetCatFilePitVowConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.CatFilePitVowLabel,
ContractAddresses: []string{constants.CatContractAddress()},
ContractAbi: constants.CatABI(),
+3 -2
View File
@@ -17,12 +17,13 @@
package deal
import (
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetDealConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetDealConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.DealLabel,
ContractAddresses: []string{constants.FlapperContractAddress(), constants.FlipperContractAddress(), constants.FlopperContractAddress()},
ContractAbi: constants.FlipperABI(),
+3 -2
View File
@@ -17,12 +17,13 @@
package dent
import (
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetDentConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetDentConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.DentLabel,
ContractAddresses: []string{constants.FlipperContractAddress(), constants.FlopperContractAddress()},
ContractAbi: constants.FlipperABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package drip_drip
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetDripDripConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetDripDripConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
ContractAddresses: []string{constants.DripContractAddress()},
ContractAbi: constants.DripABI(),
Topic: constants.GetDripDripSignature(),
+3 -3
View File
@@ -17,12 +17,12 @@
package ilk
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetDripFileIlkConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetDripFileIlkConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.DripFileIlkLabel,
ContractAddresses: []string{constants.DripContractAddress()},
ContractAbi: constants.DripABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package repo
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetDripFileRepoConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetDripFileRepoConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.DripFileRepoLabel,
ContractAddresses: []string{constants.DripContractAddress()},
ContractAbi: constants.DripABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package vow
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetDripFileVowConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetDripFileVowConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.DripFileVowLabel,
ContractAddresses: []string{constants.DripContractAddress()},
ContractAbi: constants.DripABI(),
@@ -20,19 +20,19 @@ import (
"github.com/ethereum/go-ethereum/core/types"
log "github.com/sirupsen/logrus"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
type LogNoteTransformer struct {
Config shared.TransformerConfig
Config shared_t.TransformerConfig
Converter LogNoteConverter
Repository Repository
}
func (transformer LogNoteTransformer) NewLogNoteTransformer(db *postgres.DB) shared.Transformer {
func (transformer LogNoteTransformer) NewLogNoteTransformer(db *postgres.DB) shared_t.Transformer {
transformer.Repository.SetDB(db)
return transformer
}
@@ -68,6 +68,6 @@ func (transformer LogNoteTransformer) GetName() string {
return transformer.Config.TransformerName
}
func (transformer LogNoteTransformer) GetConfig() shared.TransformerConfig {
func (transformer LogNoteTransformer) GetConfig() shared_t.TransformerConfig {
return transformer.Config
}
@@ -17,17 +17,19 @@
package factories_test
import (
"math/rand"
"github.com/ethereum/go-ethereum/core/types"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/fakes"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data/mocks"
"math/rand"
)
var _ = Describe("LogNoteTransformer", func() {
@@ -35,7 +37,7 @@ var _ = Describe("LogNoteTransformer", func() {
repository mocks.MockRepository
converter mocks.MockLogNoteConverter
headerOne core.Header
transformer shared.Transformer
transformer shared_t.Transformer
model test_data.GenericModel
config = test_data.GenericTestConfig
logs = test_data.GenericTestLogs
+4 -4
View File
@@ -20,19 +20,19 @@ import (
"github.com/ethereum/go-ethereum/core/types"
log "github.com/sirupsen/logrus"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
type Transformer struct {
Config shared.TransformerConfig
Config shared_t.TransformerConfig
Converter Converter
Repository Repository
}
func (transformer Transformer) NewTransformer(db *postgres.DB) shared.Transformer {
func (transformer Transformer) NewTransformer(db *postgres.DB) shared_t.Transformer {
transformer.Repository.SetDB(db)
return transformer
}
@@ -75,6 +75,6 @@ func (transformer Transformer) GetName() string {
return transformer.Config.TransformerName
}
func (transformer Transformer) GetConfig() shared.TransformerConfig {
func (transformer Transformer) GetConfig() shared_t.TransformerConfig {
return transformer.Config
}
@@ -17,24 +17,26 @@
package factories_test
import (
"math/rand"
"github.com/ethereum/go-ethereum/core/types"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/fakes"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data/mocks"
"math/rand"
)
var _ = Describe("Transformer", func() {
var (
repository mocks.MockRepository
converter mocks.MockConverter
transformer shared.Transformer
transformer shared_t.Transformer
headerOne core.Header
config = test_data.GenericTestConfig
logs = test_data.GenericTestLogs
+3 -3
View File
@@ -17,12 +17,12 @@
package flap_kick
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetFlapKickConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetFlapKickConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.FlapKickLabel,
ContractAddresses: []string{constants.FlapperContractAddress()},
ContractAbi: constants.FlapperABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package flip_kick
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetFlipKickConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetFlipKickConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.FlipKickLabel,
ContractAddresses: []string{constants.FlipperContractAddress()},
ContractAbi: constants.FlipperABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package flop_kick
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetFlopKickConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetFlopKickConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.FlopKickLabel,
ContractAddresses: []string{constants.FlopperContractAddress()},
ContractAbi: constants.FlopperABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package frob
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetFrobConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetFrobConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.FrobLabel,
ContractAddresses: []string{constants.PitContractAddress()},
ContractAbi: constants.PitABI(),
+2 -1
View File
@@ -24,6 +24,7 @@ import (
"github.com/ethereum/go-ethereum/accounts/abi/bind"
"github.com/ethereum/go-ethereum/common"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/geth"
"github.com/vulcanize/vulcanizedb/pkg/transformers/bite"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
@@ -33,7 +34,7 @@ import (
"github.com/vulcanize/vulcanizedb/test_config"
)
var testBiteConfig = shared.TransformerConfig{
var testBiteConfig = shared_t.TransformerConfig{
TransformerName: constants.BiteLabel,
ContractAddresses: []string{test_data.KovanCatContractAddress},
ContractAbi: test_data.KovanCatABI,
@@ -29,6 +29,7 @@ import (
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/geth/client"
@@ -66,7 +67,7 @@ var _ = Describe("Cat File transformer", func() {
header, err := persistHeader(db, chopLumpBlockNumber, blockChain)
Expect(err).NotTo(HaveOccurred())
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.CatFileChopLumpLabel,
ContractAddresses: []string{test_data.KovanCatContractAddress},
ContractAbi: test_data.KovanCatABI,
@@ -162,7 +163,7 @@ var _ = Describe("Cat File transformer", func() {
header, err := persistHeader(db, flipBlockNumber, blockChain)
Expect(err).NotTo(HaveOccurred())
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.CatFileFlipLabel,
ContractAddresses: []string{test_data.KovanCatContractAddress},
ContractAbi: test_data.KovanCatABI,
@@ -250,7 +251,7 @@ var _ = Describe("Cat File transformer", func() {
header, err := persistHeader(db, pitVowBlockNumber, blockChain)
Expect(err).NotTo(HaveOccurred())
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.CatFilePitVowLabel,
ContractAddresses: []string{test_data.KovanCatContractAddress},
ContractAbi: test_data.KovanCatABI,
+4 -3
View File
@@ -23,6 +23,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/deal"
@@ -35,7 +36,7 @@ var _ = Describe("Deal transformer", func() {
var (
db *postgres.DB
blockChain core.BlockChain
config shared.TransformerConfig
config shared_t.TransformerConfig
initializer factories.LogNoteTransformer
fetcher *shared.Fetcher
addresses []common.Address
@@ -50,7 +51,7 @@ var _ = Describe("Deal transformer", func() {
db = test_config.NewTestDB(blockChain.Node())
test_config.CleanTestDB(db)
config = shared.TransformerConfig{
config = shared_t.TransformerConfig{
TransformerName: constants.DealLabel,
ContractAddresses: []string{test_data.KovanFlapperContractAddress, test_data.KovanFlipperContractAddress, test_data.KovanFlopperContractAddress},
ContractAbi: test_data.KovanFlipperABI,
@@ -66,7 +67,7 @@ var _ = Describe("Deal transformer", func() {
}
fetcher = shared.NewFetcher(blockChain)
addresses = shared.HexStringsToAddresses(config.ContractAddresses)
addresses = shared_t.HexStringsToAddresses(config.ContractAddresses)
topics = []common.Hash{common.HexToHash(config.Topic)}
})
+5 -4
View File
@@ -7,6 +7,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/dent"
@@ -20,8 +21,8 @@ var _ = Describe("Dent transformer", func() {
db *postgres.DB
blockChain core.BlockChain
fetcher *shared.Fetcher
transformer shared.Transformer
config shared.TransformerConfig
transformer shared_t.Transformer
config shared_t.TransformerConfig
addresses []common.Address
topics []common.Hash
initializer factories.LogNoteTransformer
@@ -35,7 +36,7 @@ var _ = Describe("Dent transformer", func() {
db = test_config.NewTestDB(blockChain.Node())
test_config.CleanTestDB(db)
config = shared.TransformerConfig{
config = shared_t.TransformerConfig{
TransformerName: constants.DentLabel,
ContractAddresses: []string{test_data.KovanFlipperContractAddress, test_data.KovanFlopperContractAddress},
ContractAbi: test_data.KovanFlipperABI,
@@ -44,7 +45,7 @@ var _ = Describe("Dent transformer", func() {
EndingBlockNumber: -1,
}
addresses = shared.HexStringsToAddresses(config.ContractAddresses)
addresses = shared_t.HexStringsToAddresses(config.ContractAddresses)
topics = []common.Hash{common.HexToHash(config.Topic)}
fetcher = shared.NewFetcher(blockChain)
@@ -20,14 +20,16 @@ import (
"github.com/ethereum/go-ethereum/common"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/drip_drip"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
"strconv"
"github.com/vulcanize/vulcanizedb/pkg/transformers/drip_drip"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/test_config"
)
@@ -36,7 +38,7 @@ var _ = Describe("DripDrip Transformer", func() {
var (
db *postgres.DB
blockChain core.BlockChain
config shared.TransformerConfig
config shared_t.TransformerConfig
)
BeforeEach(func() {
@@ -47,7 +49,7 @@ var _ = Describe("DripDrip Transformer", func() {
db = test_config.NewTestDB(blockChain.Node())
test_config.CleanTestDB(db)
config = shared.TransformerConfig{
config = shared_t.TransformerConfig{
ContractAddresses: []string{test_data.KovanDripContractAddress},
ContractAbi: test_data.KovanDripABI,
Topic: test_data.KovanDripDripSignature,
@@ -73,7 +75,7 @@ var _ = Describe("DripDrip Transformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -109,7 +111,7 @@ var _ = Describe("DripDrip Transformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -20,13 +20,15 @@ import (
"github.com/ethereum/go-ethereum/common"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/drip_file/vow"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
"github.com/vulcanize/vulcanizedb/pkg/transformers/drip_file/vow"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/test_config"
)
@@ -48,7 +50,7 @@ var _ = Describe("Drip File Vow LogNoteTransformer", func() {
It("transforms DripFileVow log events", func() {
blockNumber := int64(8762197)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.DripFileVowLabel,
ContractAddresses: []string{test_data.KovanDripContractAddress},
ContractAbi: test_data.KovanDripABI,
@@ -69,7 +71,7 @@ var _ = Describe("Drip File Vow LogNoteTransformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -88,7 +90,7 @@ var _ = Describe("Drip File Vow LogNoteTransformer", func() {
It("rechecks drip file vow event", func() {
blockNumber := int64(8762197)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.DripFileVowLabel,
ContractAddresses: []string{test_data.KovanDripContractAddress},
ContractAbi: test_data.KovanDripABI,
@@ -109,7 +111,7 @@ var _ = Describe("Drip File Vow LogNoteTransformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -27,6 +27,7 @@ import (
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/flap_kick"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
@@ -50,7 +51,7 @@ var _ = Describe("FlapKick Transformer", func() {
It("fetches and transforms a FlapKick event from Kovan chain", func() {
blockNumber := int64(9002933)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.FlapKickLabel,
ContractAddresses: []string{test_data.KovanFlapperContractAddress},
ContractAbi: test_data.KovanFlapperABI,
@@ -70,7 +71,7 @@ var _ = Describe("FlapKick Transformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -24,6 +24,7 @@ import (
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/geth"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/flip_kick"
@@ -59,7 +60,7 @@ var _ = Describe("FlipKick Transformer", func() {
It("fetches and transforms a FlipKick event from Kovan chain", func() {
blockNumber := int64(8956476)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.FlipKickLabel,
ContractAddresses: []string{test_data.KovanFlipperContractAddress},
ContractAbi: test_data.KovanFlipperABI,
@@ -86,7 +87,7 @@ var _ = Describe("FlipKick Transformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -24,6 +24,7 @@ import (
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/geth"
@@ -39,7 +40,7 @@ var _ = Describe("FlopKick Transformer", func() {
var (
db *postgres.DB
blockChain core.BlockChain
config shared.TransformerConfig
config shared_t.TransformerConfig
initializer factories.Transformer
fetcher shared.LogFetcher
addresses []common.Address
@@ -54,7 +55,7 @@ var _ = Describe("FlopKick Transformer", func() {
db = test_config.NewTestDB(blockChain.Node())
test_config.CleanTestDB(db)
config = shared.TransformerConfig{
config = shared_t.TransformerConfig{
TransformerName: constants.FlopKickLabel,
ContractAddresses: []string{test_data.KovanFlopperContractAddress},
ContractAbi: test_data.KovanFlopperABI,
@@ -70,7 +71,7 @@ var _ = Describe("FlopKick Transformer", func() {
}
fetcher = shared.NewFetcher(blockChain)
addresses = shared.HexStringsToAddresses(config.ContractAddresses)
addresses = shared_t.HexStringsToAddresses(config.ContractAddresses)
topics = []common.Hash{common.HexToHash(config.Topic)}
})
+4 -3
View File
@@ -23,6 +23,7 @@ import (
. "github.com/onsi/gomega"
"strconv"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/geth"
@@ -39,7 +40,7 @@ var _ = Describe("Frob Transformer", func() {
db *postgres.DB
blockChain core.BlockChain
fetcher *shared.Fetcher
config shared.TransformerConfig
config shared_t.TransformerConfig
initializer factories.Transformer
)
@@ -52,7 +53,7 @@ var _ = Describe("Frob Transformer", func() {
test_config.CleanTestDB(db)
fetcher = shared.NewFetcher(blockChain)
config = shared.TransformerConfig{
config = shared_t.TransformerConfig{
TransformerName: constants.FrobLabel,
ContractAddresses: []string{test_data.KovanPitContractAddress},
ContractAbi: test_data.KovanPitABI,
@@ -77,7 +78,7 @@ var _ = Describe("Frob Transformer", func() {
Expect(err).NotTo(HaveOccurred())
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -27,6 +27,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/pit_file/debt_ceiling"
"github.com/vulcanize/vulcanizedb/test_config"
)
@@ -48,7 +49,7 @@ var _ = Describe("PitFileDebtCeiling LogNoteTransformer", func() {
It("fetches and transforms a PitFileDebtCeiling event from Kovan chain", func() {
blockNumber := int64(8535578)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.PitFileDebtCeilingLabel,
ContractAddresses: []string{test_data.KovanPitContractAddress},
ContractAbi: test_data.KovanPitABI,
@@ -62,7 +63,7 @@ var _ = Describe("PitFileDebtCeiling LogNoteTransformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -26,6 +26,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
"strconv"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/pit_file/ilk"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
@@ -48,7 +49,7 @@ var _ = Describe("PitFileIlk LogNoteTransformer", func() {
Expect(err).NotTo(HaveOccurred())
db = test_config.NewTestDB(blockChain.Node())
test_config.CleanTestDB(db)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.PitFileIlkLabel,
ContractAddresses: []string{test_data.KovanPitContractAddress},
ContractAbi: test_data.KovanPitABI,
@@ -57,7 +58,7 @@ var _ = Describe("PitFileIlk LogNoteTransformer", func() {
EndingBlockNumber: -1,
}
addresses = shared.HexStringsToAddresses(config.ContractAddresses)
addresses = shared_t.HexStringsToAddresses(config.ContractAddresses)
topics = []common.Hash{common.HexToHash(config.Topic)}
initializer = factories.LogNoteTransformer{
@@ -9,6 +9,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
@@ -21,7 +22,7 @@ var _ = Describe("Price feeds transformer", func() {
var (
db *postgres.DB
blockChain core.BlockChain
config shared.TransformerConfig
config shared_t.TransformerConfig
fetcher *shared.Fetcher
initializer factories.LogNoteTransformer
topics []common.Hash
@@ -35,7 +36,7 @@ var _ = Describe("Price feeds transformer", func() {
db = test_config.NewTestDB(blockChain.Node())
test_config.CleanTestDB(db)
config = shared.TransformerConfig{
config = shared_t.TransformerConfig{
TransformerName: constants.PriceFeedLabel,
ContractAddresses: []string{
test_data.KovanPepContractAddress,
@@ -69,7 +70,7 @@ var _ = Describe("Price feeds transformer", func() {
initializer.Config.EndingBlockNumber = blockNumber
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(addresses),
shared_t.HexStringsToAddresses(addresses),
topics,
header)
Expect(err).NotTo(HaveOccurred())
@@ -134,7 +135,7 @@ var _ = Describe("Price feeds transformer", func() {
initializer.Config.EndingBlockNumber = blockNumber
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(addresses),
shared_t.HexStringsToAddresses(addresses),
topics,
header)
Expect(err).NotTo(HaveOccurred())
@@ -160,7 +161,7 @@ var _ = Describe("Price feeds transformer", func() {
initializer.Config.EndingBlockNumber = blockNumber
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(addresses),
shared_t.HexStringsToAddresses(addresses),
topics,
header)
Expect(err).NotTo(HaveOccurred())
+4 -3
View File
@@ -20,6 +20,7 @@ import (
"github.com/ethereum/go-ethereum/common"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
@@ -34,7 +35,7 @@ var _ = Describe("Tend LogNoteTransformer", func() {
var (
db *postgres.DB
blockChain core.BlockChain
config shared.TransformerConfig
config shared_t.TransformerConfig
fetcher *shared.Fetcher
initializer factories.LogNoteTransformer
addresses []common.Address
@@ -49,7 +50,7 @@ var _ = Describe("Tend LogNoteTransformer", func() {
db = test_config.NewTestDB(blockChain.Node())
test_config.CleanTestDB(db)
config = shared.TransformerConfig{
config = shared_t.TransformerConfig{
TransformerName: constants.TendLabel,
ContractAddresses: []string{test_data.KovanFlapperContractAddress, test_data.KovanFlipperContractAddress},
ContractAbi: test_data.KovanFlipperABI,
@@ -59,7 +60,7 @@ var _ = Describe("Tend LogNoteTransformer", func() {
}
fetcher = shared.NewFetcher(blockChain)
addresses = shared.HexStringsToAddresses(config.ContractAddresses)
addresses = shared_t.HexStringsToAddresses(config.ContractAddresses)
topics = []common.Hash{common.HexToHash(config.Topic)}
initializer = factories.LogNoteTransformer{
@@ -24,6 +24,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
"strconv"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vat_flux"
@@ -33,7 +34,7 @@ import (
var _ = Describe("VatFlux LogNoteTransformer", func() {
It("transforms VatFlux log events", func() {
blockNumber := int64(9004474)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.VatFluxLabel,
ContractAddresses: []string{test_data.KovanVatContractAddress},
ContractAbi: test_data.KovanVatABI,
@@ -55,7 +56,7 @@ var _ = Describe("VatFlux LogNoteTransformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -27,6 +27,7 @@ import (
"github.com/vulcanize/vulcanizedb/test_config"
"strconv"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vat_fold"
@@ -49,7 +50,7 @@ var _ = Describe("VatFold Transformer", func() {
It("transforms VatFold log events", func() {
blockNumber := int64(9367233)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.VatFoldLabel,
ContractAddresses: []string{test_data.KovanVatContractAddress},
ContractAbi: test_data.KovanVatABI,
@@ -63,7 +64,7 @@ var _ = Describe("VatFold Transformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -26,6 +26,7 @@ import (
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vat_grab"
@@ -35,7 +36,7 @@ import (
var _ = Describe("Vat Grab Transformer", func() {
It("transforms VatGrab log events", func() {
blockNumber := int64(8958230)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.VatGrabLabel,
ContractAddresses: []string{test_data.KovanVatContractAddress},
ContractAbi: test_data.KovanVatABI,
@@ -57,7 +58,7 @@ var _ = Describe("Vat Grab Transformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -23,6 +23,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vat_heal"
@@ -32,7 +33,7 @@ import (
var _ = Describe("VatHeal Transformer", func() {
It("transforms VatHeal log events", func() {
blockNumber := int64(8935578)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.VatHealLabel,
ContractAddresses: []string{test_data.KovanVatContractAddress},
ContractAbi: test_data.KovanVatABI,
@@ -54,7 +55,7 @@ var _ = Describe("VatHeal Transformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -26,6 +26,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
"strconv"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vat_init"
"github.com/vulcanize/vulcanizedb/test_config"
)
@@ -33,7 +34,7 @@ import (
var _ = Describe("VatInit LogNoteTransformer", func() {
It("transforms VatInit log events", func() {
blockNumber := int64(8535561)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.VatInitLabel,
ContractAddresses: []string{test_data.KovanVatContractAddress},
ContractAbi: test_data.KovanVatABI,
@@ -55,7 +56,7 @@ var _ = Describe("VatInit LogNoteTransformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -25,6 +25,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vat_move"
"github.com/vulcanize/vulcanizedb/test_config"
)
@@ -32,7 +33,7 @@ import (
var _ = Describe("VatMove LogNoteTransformer", func() {
It("transforms VatMove log events", func() {
blockNumber := int64(9004628)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.VatMoveLabel,
ContractAddresses: []string{test_data.KovanVatContractAddress},
ContractAbi: test_data.KovanVatABI,
@@ -54,7 +55,7 @@ var _ = Describe("VatMove LogNoteTransformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -8,6 +8,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
"strconv"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
@@ -33,7 +34,7 @@ var _ = Describe("Vat slip transformer", func() {
It("persists vat slip event", func() {
blockNumber := int64(8953655)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.VatSlipLabel,
ContractAddresses: []string{test_data.KovanVatContractAddress},
ContractAbi: test_data.KovanVatABI,
@@ -47,7 +48,7 @@ var _ = Describe("Vat slip transformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -26,6 +26,7 @@ import (
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vat_tune"
@@ -35,7 +36,7 @@ import (
var _ = Describe("VatTune LogNoteTransformer", func() {
It("transforms VatTune log events", func() {
blockNumber := int64(8761670)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.VatTuneLabel,
ContractAddresses: []string{test_data.KovanVatContractAddress},
ContractAbi: test_data.KovanVatABI,
@@ -57,7 +58,7 @@ var _ = Describe("VatTune LogNoteTransformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -25,6 +25,7 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/factories"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vow_flog"
@@ -48,7 +49,7 @@ var _ = Describe("VowFlog LogNoteTransformer", func() {
It("transforms VowFlog log events", func() {
blockNumber := int64(8946819)
config := shared.TransformerConfig{
config := shared_t.TransformerConfig{
TransformerName: constants.VowFlogLabel,
ContractAddresses: []string{test_data.KovanVowContractAddress},
ContractAbi: test_data.KovanVowABI,
@@ -62,7 +63,7 @@ var _ = Describe("VowFlog LogNoteTransformer", func() {
fetcher := shared.NewFetcher(blockChain)
logs, err := fetcher.FetchLogs(
shared.HexStringsToAddresses(config.ContractAddresses),
shared_t.HexStringsToAddresses(config.ContractAddresses),
[]common.Hash{common.HexToHash(config.Topic)},
header)
Expect(err).NotTo(HaveOccurred())
@@ -17,12 +17,12 @@
package debt_ceiling
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetDebtCeilingFileConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetDebtCeilingFileConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.PitFileDebtCeilingLabel,
ContractAddresses: []string{constants.PitContractAddress()},
ContractAbi: constants.PitABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package ilk
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetIlkFileConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetIlkFileConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.PitFileIlkLabel,
ContractAddresses: []string{constants.PitContractAddress()},
ContractAbi: constants.PitABI(),
+3 -2
View File
@@ -17,12 +17,13 @@
package price_feeds
import (
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetPriceFeedConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetPriceFeedConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.PriceFeedLabel,
ContractAddresses: []string{
constants.PepContractAddress(), constants.PipContractAddress(), constants.RepContractAddress(),
+4 -2
View File
@@ -20,10 +20,12 @@ import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core/types"
"strings"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
)
type Chunker interface {
AddConfigs(transformerConfigs []TransformerConfig)
AddConfigs(transformerConfigs []shared_t.TransformerConfig)
ChunkLogs(logs []types.Log) map[string][]types.Log
}
@@ -42,7 +44,7 @@ func NewLogChunker() *LogChunker {
}
// Configures the chunker by adding more addreses and topics to consider.
func (chunker *LogChunker) AddConfigs(transformerConfigs []TransformerConfig) {
func (chunker *LogChunker) AddConfigs(transformerConfigs []shared_t.TransformerConfig) {
for _, config := range transformerConfigs {
for _, address := range config.ContractAddresses {
var lowerCaseAddress = strings.ToLower(address)
+10 -9
View File
@@ -21,34 +21,35 @@ import (
"github.com/ethereum/go-ethereum/core/types"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
)
var _ = Describe("Log chunker", func() {
var (
configs []shared.TransformerConfig
configs []shared_t.TransformerConfig
chunker *shared.LogChunker
)
BeforeEach(func() {
configA := shared.TransformerConfig{
configA := shared_t.TransformerConfig{
TransformerName: "TransformerA",
ContractAddresses: []string{"0x00000000000000000000000000000000000000A1", "0x00000000000000000000000000000000000000A2"},
Topic: "0xA",
}
configB := shared.TransformerConfig{
configB := shared_t.TransformerConfig{
TransformerName: "TransformerB",
ContractAddresses: []string{"0x00000000000000000000000000000000000000B1"},
Topic: "0xB",
}
configC := shared.TransformerConfig{
configC := shared_t.TransformerConfig{
TransformerName: "TransformerC",
ContractAddresses: []string{"0x00000000000000000000000000000000000000A2"},
Topic: "0xC",
}
configs = []shared.TransformerConfig{configA, configB, configC}
configs = []shared_t.TransformerConfig{configA, configB, configC}
chunker = shared.NewLogChunker()
chunker.AddConfigs(configs)
})
@@ -71,24 +72,24 @@ var _ = Describe("Log chunker", func() {
Describe("AddConfigs", func() {
It("can add more configs later", func() {
configD := shared.TransformerConfig{
configD := shared_t.TransformerConfig{
TransformerName: "TransformerD",
ContractAddresses: []string{"0x000000000000000000000000000000000000000D"},
Topic: "0xD",
}
chunker.AddConfigs([]shared.TransformerConfig{configD})
chunker.AddConfigs([]shared_t.TransformerConfig{configD})
Expect(chunker.AddressToNames).To(ContainElement([]string{"TransformerD"}))
Expect(chunker.NameToTopic0).To(ContainElement(common.HexToHash("0xD")))
})
It("lower cases address", func() {
configD := shared.TransformerConfig{
configD := shared_t.TransformerConfig{
TransformerName: "TransformerD",
ContractAddresses: []string{"0x000000000000000000000000000000000000000D"},
Topic: "0xD",
}
chunker.AddConfigs([]shared.TransformerConfig{configD})
chunker.AddConfigs([]shared_t.TransformerConfig{configD})
Expect(chunker.AddressToNames["0x000000000000000000000000000000000000000d"]).To(Equal([]string{"TransformerD"}))
})
-59
View File
@@ -1,59 +0,0 @@
// VulcanizeDB
// Copyright © 2018 Vulcanize
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
package shared
import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core/types"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
type Transformer interface {
Execute(logs []types.Log, header core.Header, recheckHeaders constants.TransformerExecution) error
GetConfig() TransformerConfig
}
type TransformerInitializer func(db *postgres.DB) Transformer
type TransformerConfig struct {
TransformerName string
ContractAddresses []string
ContractAbi string
Topic string
StartingBlockNumber int64
EndingBlockNumber int64 // Set -1 for indefinite transformer
}
func HexToInt64(byteString string) int64 {
value := common.HexToHash(byteString)
return value.Big().Int64()
}
func HexToString(byteString string) string {
value := common.HexToHash(byteString)
return value.Big().String()
}
func HexStringsToAddresses(strings []string) (addresses []common.Address) {
for _, hexString := range strings {
addresses = append(addresses, common.HexToAddress(hexString))
}
return
}
+3 -2
View File
@@ -17,12 +17,13 @@
package tend
import (
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetTendConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetTendConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.TendLabel,
ContractAddresses: []string{constants.FlapperContractAddress(), constants.FlipperContractAddress()},
ContractAbi: constants.FlipperABI(),
+5 -4
View File
@@ -17,11 +17,12 @@
package test_data
import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core/types"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"math/rand"
"time"
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core/types"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
)
type GenericModel struct{}
@@ -37,7 +38,7 @@ var GenericTestLogs = []types.Log{{
BlockNumber: uint64(startingBlockNumber),
}}
var GenericTestConfig = shared.TransformerConfig{
var GenericTestConfig = shared_t.TransformerConfig{
TransformerName: "generic-test-transformer",
ContractAddresses: []string{address},
ContractAbi: randomString(100),
@@ -2,9 +2,10 @@ package mocks
import (
"github.com/ethereum/go-ethereum/core/types"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
@@ -13,7 +14,7 @@ type MockTransformer struct {
ExecuteError error
PassedLogs []types.Log
PassedHeader core.Header
config shared.TransformerConfig
config shared_t.TransformerConfig
}
func (mh *MockTransformer) Execute(logs []types.Log, header core.Header, recheckHeaders constants.TransformerExecution) error {
@@ -26,19 +27,19 @@ func (mh *MockTransformer) Execute(logs []types.Log, header core.Header, recheck
return nil
}
func (mh *MockTransformer) GetConfig() shared.TransformerConfig {
func (mh *MockTransformer) GetConfig() shared_t.TransformerConfig {
return mh.config
}
func (mh *MockTransformer) SetTransformerConfig(config shared.TransformerConfig) {
func (mh *MockTransformer) SetTransformerConfig(config shared_t.TransformerConfig) {
mh.config = config
}
func (mh *MockTransformer) FakeTransformerInitializer(db *postgres.DB) shared.Transformer {
func (mh *MockTransformer) FakeTransformerInitializer(db *postgres.DB) shared_t.Transformer {
return mh
}
var FakeTransformerConfig = shared.TransformerConfig{
var FakeTransformerConfig = shared_t.TransformerConfig{
TransformerName: "FakeTransformer",
ContractAddresses: []string{"FakeAddress"},
Topic: "FakeTopic",
+2 -2
View File
@@ -17,6 +17,7 @@
package transformers
import (
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/bite"
"github.com/vulcanize/vulcanizedb/pkg/transformers/cat_file/chop_lump"
"github.com/vulcanize/vulcanizedb/pkg/transformers/cat_file/flip"
@@ -35,7 +36,6 @@ import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/pit_file/debt_ceiling"
"github.com/vulcanize/vulcanizedb/pkg/transformers/pit_file/ilk"
"github.com/vulcanize/vulcanizedb/pkg/transformers/price_feeds"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
"github.com/vulcanize/vulcanizedb/pkg/transformers/tend"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vat_flux"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vat_fold"
@@ -315,7 +315,7 @@ func getLogNoteTransformers() []factories.LogNoteTransformer {
// `TransformerInitializers` returns a list of functions, that given a db pointer
// will return a `shared.Transformer`
func TransformerInitializers() (initializers []shared.TransformerInitializer) {
func TransformerInitializers() (initializers []shared_t.TransformerInitializer) {
for _, transformer := range getLogNoteTransformers() {
initializers = append(initializers, transformer.NewLogNoteTransformer)
}
+3 -3
View File
@@ -1,12 +1,12 @@
package vat_flux
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetVatFluxConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetVatFluxConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.VatFluxLabel,
ContractAddresses: []string{constants.VatContractAddress()},
ContractAbi: constants.VatABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package vat_fold
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetVatFoldConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetVatFoldConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.VatFoldLabel,
ContractAddresses: []string{constants.VatContractAddress()},
ContractAbi: constants.VatABI(),
+3 -3
View File
@@ -1,12 +1,12 @@
package vat_grab
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetVatGrabConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetVatGrabConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.VatGrabLabel,
ContractAddresses: []string{constants.VatContractAddress()},
ContractAbi: constants.VatABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package vat_heal
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetVatHealConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetVatHealConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.VatHealLabel,
ContractAddresses: []string{constants.VatContractAddress()},
ContractAbi: constants.VatABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package vat_init
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetVatInitConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetVatInitConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.VatInitLabel,
ContractAddresses: []string{constants.VatContractAddress()},
ContractAbi: constants.VatABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package vat_move
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetVatMoveConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetVatMoveConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.VatMoveLabel,
ContractAddresses: []string{constants.VatContractAddress()},
ContractAbi: constants.VatABI(),
+3 -3
View File
@@ -1,12 +1,12 @@
package vat_slip
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetVatSlipConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetVatSlipConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.VatSlipLabel,
ContractAddresses: []string{constants.VatContractAddress()},
ContractAbi: constants.VatABI(),
+3 -3
View File
@@ -1,12 +1,12 @@
package vat_toll
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetVatTollConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetVatTollConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.VatTollLabel,
ContractAddresses: []string{constants.VatContractAddress()},
ContractAbi: constants.VatABI(),
+3 -3
View File
@@ -1,12 +1,12 @@
package vat_tune
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetVatTuneConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetVatTuneConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.VatTuneLabel,
ContractAddresses: []string{constants.VatContractAddress()},
ContractAbi: constants.VatABI(),
+3 -3
View File
@@ -17,12 +17,12 @@
package vow_flog
import (
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
shared_t "github.com/vulcanize/vulcanizedb/libraries/shared/transformer"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared/constants"
)
func GetVowFlogConfig() shared.TransformerConfig {
return shared.TransformerConfig{
func GetVowFlogConfig() shared_t.TransformerConfig {
return shared_t.TransformerConfig{
TransformerName: constants.VowFlogLabel,
ContractAddresses: []string{constants.VowContractAddress()},
ContractAbi: constants.VowABI(),