forked from cerc-io/ipld-eth-server
Privatise DB repository field and add transformer test
This commit is contained in:
@@ -21,11 +21,11 @@ import (
|
||||
)
|
||||
|
||||
type DripFileIlkRepository struct {
|
||||
DB *postgres.DB
|
||||
db *postgres.DB
|
||||
}
|
||||
|
||||
func (repository DripFileIlkRepository) Create(headerID int64, models []interface{}) error {
|
||||
tx, err := repository.DB.Begin()
|
||||
tx, err := repository.db.Begin()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -61,7 +61,7 @@ func (repository DripFileIlkRepository) Create(headerID int64, models []interfac
|
||||
}
|
||||
|
||||
func (repository DripFileIlkRepository) MarkHeaderChecked(headerID int64) error {
|
||||
_, err := repository.DB.Exec(`INSERT INTO public.checked_headers (header_id, drip_file_ilk_checked)
|
||||
_, err := repository.db.Exec(`INSERT INTO public.checked_headers (header_id, drip_file_ilk_checked)
|
||||
VALUES ($1, $2)
|
||||
ON CONFLICT (header_id) DO
|
||||
UPDATE SET drip_file_ilk_checked = $2`, headerID, true)
|
||||
@@ -70,7 +70,7 @@ func (repository DripFileIlkRepository) MarkHeaderChecked(headerID int64) error
|
||||
|
||||
func (repository DripFileIlkRepository) MissingHeaders(startingBlockNumber, endingBlockNumber int64) ([]core.Header, error) {
|
||||
var result []core.Header
|
||||
err := repository.DB.Select(
|
||||
err := repository.db.Select(
|
||||
&result,
|
||||
`SELECT headers.id, headers.block_number FROM headers
|
||||
LEFT JOIN checked_headers on headers.id = header_id
|
||||
@@ -80,11 +80,11 @@ func (repository DripFileIlkRepository) MissingHeaders(startingBlockNumber, endi
|
||||
AND headers.eth_node_fingerprint = $3`,
|
||||
startingBlockNumber,
|
||||
endingBlockNumber,
|
||||
repository.DB.Node.ID,
|
||||
repository.db.Node.ID,
|
||||
)
|
||||
return result, err
|
||||
}
|
||||
|
||||
func (repository *DripFileIlkRepository) SetDB(db *postgres.DB) {
|
||||
repository.DB = db
|
||||
repository.db = db
|
||||
}
|
||||
|
||||
@@ -40,7 +40,8 @@ var _ = Describe("Drip file ilk repository", func() {
|
||||
db = test_config.NewTestDB(test_config.NewTestNode())
|
||||
test_config.CleanTestDB(db)
|
||||
headerRepository = repositories.NewHeaderRepository(db)
|
||||
dripFileIlkRepository = ilk.DripFileIlkRepository{DB: db}
|
||||
dripFileIlkRepository = ilk.DripFileIlkRepository{}
|
||||
dripFileIlkRepository.SetDB(db)
|
||||
})
|
||||
|
||||
Describe("Create", func() {
|
||||
@@ -182,7 +183,8 @@ var _ = Describe("Drip file ilk repository", func() {
|
||||
_, err = headerRepositoryTwo.CreateOrUpdateHeader(fakes.GetFakeHeader(n))
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
}
|
||||
dripFileIlkRepositoryTwo := ilk.DripFileIlkRepository{DB: dbTwo}
|
||||
dripFileIlkRepositoryTwo := ilk.DripFileIlkRepository{}
|
||||
dripFileIlkRepositoryTwo.SetDB(dbTwo)
|
||||
err := dripFileIlkRepository.MarkHeaderChecked(headerIDs[0])
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
|
||||
@@ -195,14 +197,4 @@ var _ = Describe("Drip file ilk repository", func() {
|
||||
Expect(len(nodeTwoMissingHeaders)).To(Equal(len(blockNumbers)))
|
||||
})
|
||||
})
|
||||
|
||||
Describe("SetDB", func() {
|
||||
It("sets the repository db", func() {
|
||||
db := test_config.NewTestDB(core.Node{})
|
||||
repository := ilk.DripFileIlkRepository{}
|
||||
Expect(repository.DB).To(BeNil())
|
||||
repository.SetDB(db)
|
||||
Expect(repository.DB).To(Equal(db))
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
@@ -50,11 +50,16 @@ var _ = Describe("Drip file ilk transformer", func() {
|
||||
Fetcher: &fetcher,
|
||||
Converter: &converter,
|
||||
Repository: &repository,
|
||||
}
|
||||
}.NewTransformer(nil, nil)
|
||||
headerOne = core.Header{BlockNumber: GinkgoRandomSeed(), Id: GinkgoRandomSeed()}
|
||||
headerTwo = core.Header{BlockNumber: GinkgoRandomSeed(), Id: GinkgoRandomSeed()}
|
||||
})
|
||||
|
||||
It("sets the blockchain and database", func() {
|
||||
Expect(fetcher.SetBcCalled).To(BeTrue())
|
||||
Expect(repository.SetDbCalled).To(BeTrue())
|
||||
})
|
||||
|
||||
It("gets missing headers for block numbers specified in config", func() {
|
||||
err := transformer.Execute()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user