test: 补齐 handler/repository/domain 层单元测试

This commit is contained in:
2026-05-10 12:54:13 +08:00
parent b8e9af001f
commit 28012140cb
21 changed files with 5837 additions and 1 deletions

View File

@@ -0,0 +1,77 @@
package pagination
import (
"testing"
)
func TestDefaultPagination(t *testing.T) {
p := DefaultPagination()
if p.Page != 1 {
t.Errorf("expected default page 1, got %d", p.Page)
}
if p.PageSize != 20 {
t.Errorf("expected default page_size 20, got %d", p.PageSize)
}
}
func TestPaginationParams_Offset(t *testing.T) {
tests := []struct {
name string
page int
pageSize int
wantOffset int
}{
{"page 1", 1, 20, 0},
{"page 2", 2, 20, 20},
{"page 5", 5, 20, 80},
{"zero page", 0, 20, 0},
{"negative page", -1, 20, 0},
{"page 1 size 10", 1, 10, 0},
{"page 3 size 10", 3, 10, 20},
}
for _, tc := range tests {
t.Run(tc.name, func(t *testing.T) {
p := PaginationParams{Page: tc.page, PageSize: tc.pageSize}
if got := p.Offset(); got != tc.wantOffset {
t.Errorf("expected offset %d, got %d", tc.wantOffset, got)
}
})
}
}
func TestPaginationParams_Limit(t *testing.T) {
tests := []struct {
name string
pageSize int
want int
}{
{"default", 20, 20},
{"size 10", 10, 10},
{"size 50", 50, 50},
{"size 100", 100, 100},
{"max cap", 101, 100},
{"zero size", 0, 20},
{"negative size", -1, 20},
{"size 1", 1, 1},
}
for _, tc := range tests {
t.Run(tc.name, func(t *testing.T) {
p := PaginationParams{PageSize: tc.pageSize}
if got := p.Limit(); got != tc.want {
t.Errorf("expected limit %d, got %d", tc.want, got)
}
})
}
}
func TestPaginationParams_OffsetAndLimit(t *testing.T) {
p := PaginationParams{Page: 3, PageSize: 15}
if got := p.Offset(); got != 30 {
t.Errorf("expected offset 30, got %d", got)
}
if got := p.Limit(); got != 15 {
t.Errorf("expected limit 15, got %d", got)
}
}