ipld-eth-server/pkg/transformers/vat_tune/converter_test.go
2018-10-25 10:02:06 -05:00

46 lines
1.1 KiB
Go

package vat_tune_test
import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core/types"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
"github.com/vulcanize/vulcanizedb/pkg/transformers/test_data"
"github.com/vulcanize/vulcanizedb/pkg/transformers/vat_tune"
)
var _ = Describe("Vat tune converter", func() {
It("returns err if log is missing topics", func() {
converter := vat_tune.VatTuneConverter{}
badLog := types.Log{
Data: []byte{1, 1, 1, 1, 1},
}
_, err := converter.ToModels([]types.Log{badLog})
Expect(err).To(HaveOccurred())
})
It("returns err if log is missing data", func() {
converter := vat_tune.VatTuneConverter{}
badLog := types.Log{
Topics: []common.Hash{{}, {}, {}, {}},
}
_, err := converter.ToModels([]types.Log{badLog})
Expect(err).To(HaveOccurred())
})
It("converts a log to a model", func() {
converter := vat_tune.VatTuneConverter{}
models, err := converter.ToModels([]types.Log{test_data.EthVatTuneLog})
Expect(err).NotTo(HaveOccurred())
Expect(len(models)).To(Equal(1))
Expect(models[0]).To(Equal(test_data.VatTuneModel))
})
})