github.com/PikeEcosystem/tendermint@v0.0.4/state/indexer/sink/psql/backport_test.go (about) 1 package psql 2 3 import ( 4 "context" 5 "testing" 6 7 abci "github.com/tendermint/tendermint/abci/types" 8 9 "github.com/PikeEcosystem/tendermint/libs/pubsub/query" 10 "github.com/PikeEcosystem/tendermint/state/indexer" 11 "github.com/PikeEcosystem/tendermint/state/txindex" 12 "github.com/PikeEcosystem/tendermint/types" 13 "github.com/stretchr/testify/require" 14 ) 15 16 var ( 17 _ indexer.BlockIndexer = BackportBlockIndexer{} 18 _ txindex.TxIndexer = BackportTxIndexer{} 19 ) 20 21 func TestBackportTxIndexer_AddBatch(t *testing.T) { 22 indexer := &EventSink{store: testDB(), chainID: chainID} 23 txIndexer := indexer.TxIndexer() 24 err := txIndexer.AddBatch(&txindex.Batch{}) 25 require.NoError(t, err) 26 } 27 28 func TestBackportTxIndexer_Index(t *testing.T) { 29 indexer := &EventSink{store: testDB(), chainID: chainID} 30 txIndexer := indexer.TxIndexer() 31 err := txIndexer.Index(&abci.TxResult{}) 32 require.Error(t, err) 33 require.Contains(t, err.Error(), "finding block ID: ") 34 35 blockIndexer := indexer.BlockIndexer() 36 err = blockIndexer.Index(types.EventDataNewBlockHeader{}) 37 require.NoError(t, err) 38 err = txIndexer.Index(&abci.TxResult{}) 39 require.NoError(t, err) 40 } 41 42 func TestBackportTxIndexer_Get(t *testing.T) { 43 indexer := &EventSink{store: testDB(), chainID: chainID} 44 txIndexer := indexer.TxIndexer() 45 result, err := txIndexer.Get([]byte{1}) 46 require.Error(t, err) 47 require.Equal(t, "the TxIndexer.Get method is not supported", err.Error()) 48 require.Nil(t, result) 49 } 50 51 func TestBackportTxIndexer_Search(t *testing.T) { 52 indexer := &EventSink{store: testDB(), chainID: chainID} 53 txIndexer := indexer.TxIndexer() 54 result, err := txIndexer.Get([]byte{1}) 55 require.Error(t, err) 56 require.Equal(t, "the TxIndexer.Get method is not supported", err.Error()) 57 require.Nil(t, result) 58 } 59 60 func TestBackportBlockIndexer_Has(t *testing.T) { 61 indexer := &EventSink{store: testDB(), chainID: chainID} 62 blockIndexer := indexer.BlockIndexer() 63 result, err := blockIndexer.Has(0) 64 require.Error(t, err) 65 require.Equal(t, "the BlockIndexer.Has method is not supported", err.Error()) 66 require.False(t, result) 67 } 68 69 func TestBackportBlockIndexer_Index(t *testing.T) { 70 indexer := &EventSink{store: testDB(), chainID: chainID} 71 blockIndexer := indexer.BlockIndexer() 72 err := blockIndexer.Index(types.EventDataNewBlockHeader{}) 73 require.NoError(t, err) 74 } 75 76 func TestBackportBlockIndexer_Search(t *testing.T) { 77 indexer := &EventSink{store: testDB(), chainID: chainID} 78 blockIndexer := indexer.BlockIndexer() 79 result, err := blockIndexer.Search(context.Background(), &query.Query{}) 80 require.Error(t, err) 81 require.Equal(t, "the BlockIndexer.Search method is not supported", err.Error()) 82 require.Nil(t, result) 83 }