docs: add package godoc and clarify public API
Prepare the extracted library for external consumption with grouped godoc, extension point docs, and setup requirements. Wire ErrBadCursorString into decode paths and drop redundant Paginate*Conds aliases. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+5
-4
@@ -38,16 +38,16 @@ func TestUsesTupleOrderingEdgeCases(t *testing.T) {
|
||||
assert.False(t, sameCol.UsesTupleOrdering())
|
||||
}
|
||||
|
||||
func TestPaginateWrapperFuncs(t *testing.T) {
|
||||
func TestPaginateCondsValueTypes(t *testing.T) {
|
||||
RegisterColumn(User.ID, Meeting.StartTime)
|
||||
|
||||
intCursor := NewCursor(NewInt64Value(1, User.ID), User.ID, OrderDescending)
|
||||
sql := User.SELECT(User.AllColumns).WHERE(PaginateIntConds(intCursor)).DebugSql()
|
||||
sql := User.SELECT(User.AllColumns).WHERE(PaginateConds(intCursor)).DebugSql()
|
||||
assert.Contains(t, sql, "user.id < 1")
|
||||
|
||||
strCursor := NewCursor(NewStringValue("x", MeetingRoom.ID), MeetingRoom.ID, OrderDescending)
|
||||
RegisterColumn(MeetingRoom.ID)
|
||||
sql = MeetingRoom.SELECT(MeetingRoom.AllColumns).WHERE(PaginateUUIDConds(strCursor)).DebugSql()
|
||||
sql = MeetingRoom.SELECT(MeetingRoom.AllColumns).WHERE(PaginateConds(strCursor)).DebugSql()
|
||||
assert.Contains(t, sql, "meeting_room.id < 'x'")
|
||||
|
||||
tsCursor := NewCursor(
|
||||
@@ -55,7 +55,7 @@ func TestPaginateWrapperFuncs(t *testing.T) {
|
||||
Meeting.StartTime,
|
||||
OrderDescending,
|
||||
)
|
||||
sql = Meeting.SELECT(Meeting.AllColumns).WHERE(PaginateTimestampConds(tsCursor)).DebugSql()
|
||||
sql = Meeting.SELECT(Meeting.AllColumns).WHERE(PaginateConds(tsCursor)).DebugSql()
|
||||
assert.Contains(t, sql, "meeting.start_time <")
|
||||
}
|
||||
|
||||
@@ -63,6 +63,7 @@ func TestNewCursorFromJSONError(t *testing.T) {
|
||||
RegisterColumn(User.ID)
|
||||
_, err := NewCursorFromJSON(NewInt64Value(0, User.ID), []byte(`{invalid`))
|
||||
require.Error(t, err)
|
||||
require.ErrorIs(t, err, ErrBadCursorString)
|
||||
}
|
||||
|
||||
func TestColWrongTypePanics(t *testing.T) {
|
||||
|
||||
Reference in New Issue
Block a user