mukan-ignite/ignite/pkg/cosmostxcollector/query/query_test.go
Mukan Erkin Törük c32551b6f7
Some checks failed
Docs Deploy / build_and_deploy (push) Has been cancelled
Generate Docs / cli (push) Has been cancelled
Generate Config Doc / cli (push) Has been cancelled
Go formatting / go-formatting (push) Has been cancelled
Check links / markdown-link-check (push) Has been cancelled
Integration / pre-test (push) Has been cancelled
Integration / test on (push) Has been cancelled
Integration / status (push) Has been cancelled
Lint / Lint Go code (push) Has been cancelled
Test / test (ubuntu-latest) (push) Has been cancelled
refactor: replace all github.com upstream refs with git.cw.tr/mukan-network
2026-05-11 03:36:24 +03:00

66 lines
1.3 KiB
Go

package query_test
import (
"testing"
"github.com/stretchr/testify/require"
"git.cw.tr/mukan-network/mukan-ignite/ignite/pkg/cosmostxcollector/query"
)
func TestQuery(t *testing.T) {
// Arrange
name := "entity"
field := "foo"
// Act
qry := query.New(name, query.Fields(field))
// Assert
require.Equal(t, name, qry.Name())
require.Equal(t, []string{field}, qry.Fields())
require.Nil(t, qry.SortBy())
require.Nil(t, qry.Filters())
require.Nil(t, qry.Args())
require.True(t, qry.IsPagingEnabled())
require.EqualValues(t, query.DefaultPageSize, qry.PageSize())
require.EqualValues(t, 1, qry.AtPage())
}
func TestPaging(t *testing.T) {
// Arrange
var (
page uint32 = 42
pageSize uint32 = 100
)
// Act
qry := query.New(
"name",
query.WithPageSize(pageSize),
query.AtPage(page),
)
// Assert
require.True(t, qry.IsPagingEnabled())
require.EqualValues(t, pageSize, qry.PageSize())
require.EqualValues(t, page, qry.AtPage())
}
func TestDisablePaging(t *testing.T) {
// Act
qry := query.New("name", query.WithoutPaging())
// Assert
require.False(t, qry.IsPagingEnabled())
require.EqualValues(t, 0, qry.PageSize())
}
func TestAtPageZero(t *testing.T) {
// Act
qry := query.New("name", query.AtPage(0))
// Assert
require.True(t, qry.IsPagingEnabled())
require.EqualValues(t, 1, qry.AtPage())
}