Decouple log extraction from transformer delegation
- limit missing headers results set to 100 so that extraction doesn't excessively block delegation - wrap checked headers functions in repository struct - move storage repository to factory, to correspond with event repository path - remove unused files - reformat sql - remove line breaks in imports
This commit is contained in:
@@ -107,8 +107,8 @@ func (chain *MockBlockChain) GetHeadersByNumbers(blockNumbers []int64) ([]core.H
|
||||
return headers, nil
|
||||
}
|
||||
|
||||
func (chain *MockBlockChain) GetLogs(contract core.Contract, startingBlockNumber, endingBlockNumber *big.Int) ([]core.Log, error) {
|
||||
return []core.Log{}, nil
|
||||
func (chain *MockBlockChain) GetFullSyncLogs(contract core.Contract, startingBlockNumber, endingBlockNumber *big.Int) ([]core.FullSyncLog, error) {
|
||||
return []core.FullSyncLog{}, nil
|
||||
}
|
||||
|
||||
func (chain *MockBlockChain) GetTransactions(transactionHashes []common.Hash) ([]core.TransactionModel, error) {
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
// VulcanizeDB
|
||||
// Copyright © 2019 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 fakes
|
||||
|
||||
import (
|
||||
"github.com/vulcanize/vulcanizedb/pkg/core"
|
||||
)
|
||||
|
||||
type MockCheckedHeadersRepository struct {
|
||||
CheckCount int64
|
||||
StartingBlockNumber int64
|
||||
EndingBlockNumber int64
|
||||
HeaderID int64
|
||||
ReturnHeaders []core.Header
|
||||
MarkHeaderCheckedReturnError error
|
||||
MissingHeadersReturnError error
|
||||
}
|
||||
|
||||
func (repository *MockCheckedHeadersRepository) MarkHeaderChecked(headerID int64) error {
|
||||
repository.HeaderID = headerID
|
||||
return repository.MarkHeaderCheckedReturnError
|
||||
}
|
||||
|
||||
func (repository *MockCheckedHeadersRepository) MissingHeaders(startingBlockNumber, endingBlockNumber, checkCount int64) ([]core.Header, error) {
|
||||
repository.StartingBlockNumber = startingBlockNumber
|
||||
repository.EndingBlockNumber = endingBlockNumber
|
||||
repository.CheckCount = checkCount
|
||||
return repository.ReturnHeaders, repository.MissingHeadersReturnError
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
// VulcanizeDB
|
||||
// Copyright © 2019 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 fakes
|
||||
|
||||
import (
|
||||
"github.com/ethereum/go-ethereum/core/types"
|
||||
"github.com/vulcanize/vulcanizedb/pkg/core"
|
||||
)
|
||||
|
||||
type MockHeaderSyncLogRepository struct {
|
||||
CreateError error
|
||||
GetCalled bool
|
||||
GetError error
|
||||
PassedHeaderID int64
|
||||
PassedLogs []types.Log
|
||||
ReturnLogs []core.HeaderSyncLog
|
||||
}
|
||||
|
||||
func (repository *MockHeaderSyncLogRepository) GetUntransformedHeaderSyncLogs() ([]core.HeaderSyncLog, error) {
|
||||
repository.GetCalled = true
|
||||
return repository.ReturnLogs, repository.GetError
|
||||
}
|
||||
|
||||
func (repository *MockHeaderSyncLogRepository) CreateHeaderSyncLogs(headerID int64, logs []types.Log) error {
|
||||
repository.PassedHeaderID = headerID
|
||||
repository.PassedLogs = logs
|
||||
return repository.CreateError
|
||||
}
|
||||
Reference in New Issue
Block a user