Privatise DB repository field and add transformer test

This commit is contained in:
Edvard
2018-10-23 10:47:01 +02:00
parent cb74cbe990
commit 7ee3329baf
37 changed files with 182 additions and 138 deletions
+6 -6
View File
@@ -21,11 +21,11 @@ import (
)
type VatMoveRepository struct {
DB *postgres.DB
db *postgres.DB
}
func (repository VatMoveRepository) Create(headerID int64, models []interface{}) error {
tx, err := repository.DB.Begin()
tx, err := repository.db.Begin()
if err != nil {
return err
}
@@ -66,7 +66,7 @@ func (repository VatMoveRepository) Create(headerID int64, models []interface{})
func (repository VatMoveRepository) 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
@@ -76,14 +76,14 @@ func (repository VatMoveRepository) MissingHeaders(startingBlockNumber, endingBl
AND headers.eth_node_fingerprint = $3`,
startingBlockNumber,
endingBlockNumber,
repository.DB.Node.ID,
repository.db.Node.ID,
)
return result, err
}
func (repository VatMoveRepository) MarkHeaderChecked(headerID int64) error {
_, err := repository.DB.Exec(`INSERT INTO public.checked_headers (header_id, vat_move_checked)
_, err := repository.db.Exec(`INSERT INTO public.checked_headers (header_id, vat_move_checked)
VALUES ($1, $2)
ON CONFLICT (header_id) DO
UPDATE SET vat_move_checked = $2`, headerID, true)
@@ -91,5 +91,5 @@ func (repository VatMoveRepository) MarkHeaderChecked(headerID int64) error {
}
func (repository *VatMoveRepository) SetDB(db *postgres.DB) {
repository.DB = db
repository.db = db
}
+4 -11
View File
@@ -37,7 +37,8 @@ var _ = Describe("Vat Move", func() {
db = test_config.NewTestDB(core.Node{})
test_config.CleanTestDB(db)
headerRepository = repositories.NewHeaderRepository(db)
vatMoveRepository = vat_move.VatMoveRepository{DB: db}
vatMoveRepository = vat_move.VatMoveRepository{}
vatMoveRepository.SetDB(db)
})
Describe("Create", func() {
@@ -150,7 +151,8 @@ var _ = Describe("Vat Move", func() {
_, err = headerRepositoryTwo.CreateOrUpdateHeader(fakes.GetFakeHeader(n))
Expect(err).NotTo(HaveOccurred())
}
vatMoveRepositoryTwo := vat_move.VatMoveRepository{DB: dbTwo}
vatMoveRepositoryTwo := vat_move.VatMoveRepository{}
vatMoveRepositoryTwo.SetDB(dbTwo)
err := vatMoveRepository.Create(headerIDs[0], []interface{}{test_data.VatMoveModel})
Expect(err).NotTo(HaveOccurred())
@@ -195,13 +197,4 @@ var _ = Describe("Vat Move", func() {
Expect(headerChecked).To(BeTrue())
})
})
Describe("SetDB", func() {
It("sets the repository db", func() {
vatMoveRepository.DB = nil
Expect(vatMoveRepository.DB).To(BeNil())
vatMoveRepository.SetDB(db)
Expect(vatMoveRepository.DB).To(Equal(db))
})
})
})
@@ -52,6 +52,11 @@ var _ = Describe("Vat move transformer", func() {
}.NewTransformer(nil, nil)
})
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()