sql-builder/main_test.go

65 lines
1.2 KiB
Go

package sqlbuilder
import (
"fmt"
"testing"
_ "git.botann.com/lijun/sql-builder/conf"
)
type Page struct {
Total int `json:"total" form:"total"`
PageIndex int `json:"pageIndex" form:"pageIndex"`
PageSize int `json:"pageSize" form:"pageSize"`
Data interface{} `json:"data" form:"data"`
}
func (p *Page) Init() {
if p.PageIndex == 0 {
p.SetPageIndex(1)
}
if p.PageSize == 0 {
p.SetPageSize(10)
}
}
func (p *Page) GetPageIndex() int {
return p.PageIndex
}
func (p *Page) GetPageSize() int {
return p.PageSize
}
func (p *Page) GetTotal() int {
return p.Total
}
func (p *Page) SetTotal(total int) {
p.Total = total
}
func (p *Page) SetPageIndex(pageIndex int) {
p.PageIndex = pageIndex
}
func (p *Page) SetPageSize(pageSize int) {
p.PageSize = pageSize
}
func TestMain(m *testing.M) {
var data []struct {
Autoseq int
Name string
}
var page Page
sql_builder := DefaultSqlBuilder()
ids := []int{1, 2, 3, 4, 5}
sql_builder.Sql = `select autoseq,name from tsysuser where del = 0 @c order by @o`
sql_builder.Conditions("autoseq in (?)", ids)
sql_builder.Orders("autoseq desc")
page.Data = &data
err := sql_builder.PaginateBySql(page.Data, &page)
fmt.Println(err, page)
}