You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
106 lines
2.7 KiB
106 lines
2.7 KiB
package service |
|
|
|
import ( |
|
"context" |
|
"flag" |
|
"fmt" |
|
"path/filepath" |
|
"testing" |
|
|
|
"go-common/app/admin/main/spy/conf" |
|
"go-common/app/admin/main/spy/model" |
|
"go-common/library/ecode" |
|
|
|
. "github.com/smartystreets/goconvey/convey" |
|
) |
|
|
|
var ( |
|
s *Service |
|
c = context.TODO() |
|
) |
|
|
|
func init() { |
|
var err error |
|
dir, _ := filepath.Abs("../cmd/spy-admin-test.toml") |
|
flag.Set("conf", dir) |
|
if err = conf.Init(); err != nil { |
|
panic(err) |
|
} |
|
s = New(conf.Conf) |
|
} |
|
|
|
func TestSetting(t *testing.T) { |
|
Convey("test checkSettingVal", t, func() { |
|
var err = s.checkSettingVal(model.AutoBlock, "abc") |
|
So(err, ShouldEqual, ecode.SpySettingValTypeError) |
|
err = s.checkSettingVal(model.AutoBlock, "3") |
|
So(err, ShouldEqual, ecode.SpySettingValueOutOfRange) |
|
err = s.checkSettingVal(model.AutoBlock, "1") |
|
So(err, ShouldBeNil) |
|
err = s.checkSettingVal(model.LessBlockScore, "abc") |
|
So(err, ShouldEqual, ecode.SpySettingValTypeError) |
|
err = s.checkSettingVal(model.LessBlockScore, "45") |
|
So(err, ShouldEqual, ecode.SpySettingValueOutOfRange) |
|
err = s.checkSettingVal(model.LessBlockScore, "1") |
|
So(err, ShouldBeNil) |
|
err = s.checkSettingVal(model.LimitBlockCount, "abc") |
|
So(err, ShouldEqual, ecode.SpySettingValTypeError) |
|
err = s.checkSettingVal(model.LimitBlockCount, "-2") |
|
So(err, ShouldEqual, ecode.SpySettingValueOutOfRange) |
|
err = s.checkSettingVal(model.LimitBlockCount, "20000") |
|
So(err, ShouldBeNil) |
|
err = s.checkSettingVal("unknown prop", "abc") |
|
So(err, ShouldEqual, ecode.SpySettingUnknown) |
|
}) |
|
Convey("test Setting", t, func() { |
|
var ( |
|
list []*model.Setting |
|
err error |
|
) |
|
list, err = s.SettingList(c) |
|
So(err, ShouldBeNil) |
|
So(list, ShouldNotBeEmpty) |
|
var ( |
|
name = "go test" |
|
prop = list[0].Property |
|
val = list[0].Val |
|
) |
|
err = s.UpdateSetting(c, name, prop, val) |
|
So(err, ShouldBeNil) |
|
err = s.UpdateSetting(c, name, model.LessBlockScore, "100") |
|
So(err, ShouldEqual, ecode.SpySettingValueOutOfRange) |
|
}) |
|
} |
|
|
|
// go test -test.v -test.run TestStat |
|
func TestStat(t *testing.T) { |
|
var ( |
|
state int8 = 1 |
|
id int64 = 3 |
|
isdel int8 = 1 |
|
tid int64 = 1 |
|
tmid int64 = 1 |
|
ty int8 = 1 |
|
count int64 = 10 |
|
operater = "admin" |
|
pn = 1 |
|
ps = 8 |
|
) |
|
Convey("test UpdateState", t, func() { |
|
err := s.UpdateState(c, state, id, operater) |
|
So(err, ShouldBeNil) |
|
}) |
|
Convey("test UpdateStatQuantity", t, func() { |
|
err := s.UpdateStatQuantity(c, count, id, operater) |
|
So(err, ShouldBeNil) |
|
}) |
|
Convey("test DeleteStat", t, func() { |
|
err := s.DeleteStat(c, isdel, id, operater) |
|
So(err, ShouldBeNil) |
|
}) |
|
Convey("test StatPage", t, func() { |
|
page, err := s.StatPage(c, tmid, tid, ty, pn, ps) |
|
So(err, ShouldBeNil) |
|
fmt.Println("page", page) |
|
}) |
|
}
|
|
|