github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/cosmos-sdk/baseapp/queryrouter_test.go (about)

     1  package baseapp
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/require"
     7  
     8  	abci "github.com/fibonacci-chain/fbc/libs/tendermint/abci/types"
     9  
    10  	sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types"
    11  )
    12  
    13  var testQuerier = func(_ sdk.Context, _ []string, _ abci.RequestQuery) ([]byte, error) {
    14  	return nil, nil
    15  }
    16  
    17  func TestQueryRouter(t *testing.T) {
    18  	qr := NewQueryRouter()
    19  
    20  	// require panic on invalid route
    21  	require.Panics(t, func() {
    22  		qr.AddRoute("*", testQuerier)
    23  	})
    24  
    25  	qr.AddRoute("testRoute", testQuerier)
    26  	q := qr.Route("testRoute")
    27  	require.NotNil(t, q)
    28  
    29  	// require panic on duplicate route
    30  	require.Panics(t, func() {
    31  		qr.AddRoute("testRoute", testQuerier)
    32  	})
    33  }