Write event logs to database before transforming
- enables decoupling event extraction/persistence from transformation - modifies event transformer, converter, and log chunker to accept payload that includes internal log database ID with log data - remove alias for transformer pkg as shared_t - remove unused mock watcher repository
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
package test_data
|
||||
|
||||
import (
|
||||
"github.com/ethereum/go-ethereum/common/hexutil"
|
||||
"math/rand"
|
||||
"time"
|
||||
|
||||
@@ -30,28 +31,42 @@ type GenericModel struct{}
|
||||
type GenericEntity struct{}
|
||||
|
||||
var startingBlockNumber = rand.Int63()
|
||||
var topic = "0x" + randomString(64)
|
||||
var address = "0x" + randomString(38)
|
||||
var topic0 = "0x" + randomString(64)
|
||||
|
||||
var GenericTestLogs = []types.Log{{
|
||||
Address: common.HexToAddress(address),
|
||||
Topics: []common.Hash{common.HexToHash(topic)},
|
||||
BlockNumber: uint64(startingBlockNumber),
|
||||
}}
|
||||
var GenericTestLog = func() types.Log {
|
||||
return types.Log{
|
||||
Address: fakeAddress(),
|
||||
Topics: []common.Hash{common.HexToHash(topic0), fakeHash()},
|
||||
Data: hexutil.MustDecode(fakeHash().Hex()),
|
||||
BlockNumber: uint64(startingBlockNumber),
|
||||
TxHash: fakeHash(),
|
||||
TxIndex: uint(rand.Int31()),
|
||||
BlockHash: fakeHash(),
|
||||
Index: uint(rand.Int31()),
|
||||
}
|
||||
}
|
||||
|
||||
var GenericTestConfig = transformer.EventTransformerConfig{
|
||||
TransformerName: "generic-test-transformer",
|
||||
ContractAddresses: []string{address},
|
||||
ContractAddresses: []string{fakeAddress().Hex()},
|
||||
ContractAbi: randomString(100),
|
||||
Topic: topic,
|
||||
Topic: topic0,
|
||||
StartingBlockNumber: startingBlockNumber,
|
||||
EndingBlockNumber: startingBlockNumber + 1,
|
||||
}
|
||||
|
||||
func fakeAddress() common.Address {
|
||||
return common.HexToAddress("0x" + randomString(40))
|
||||
}
|
||||
|
||||
func fakeHash() common.Hash {
|
||||
return common.HexToHash("0x" + randomString(64))
|
||||
}
|
||||
|
||||
func randomString(length int) string {
|
||||
var seededRand = rand.New(
|
||||
rand.NewSource(time.Now().UnixNano()))
|
||||
charset := "abcdefghijklmnopqrstuvwxyz1234567890"
|
||||
charset := "abcdef1234567890"
|
||||
b := make([]byte, length)
|
||||
for i := range b {
|
||||
b[i] = charset[seededRand.Intn(len(charset))]
|
||||
|
||||
Reference in New Issue
Block a user