package dao import ( "testing" "time" "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/business/model" ) func TestGetEffectiveActStoreSkuInfo(t *testing.T) { type testData struct { ResultCount int ActID int VendorIDs []int StoreIDs []int SkuIDs []int FromTime time.Time ToTime time.Time } for _, v := range []*testData{ &testData{ ResultCount: 4, FromTime: time.Now(), ToTime: time.Now(), }, &testData{ ResultCount: 0, FromTime: time.Now().Add(-48 * time.Hour), ToTime: time.Now().Add(-48 * time.Hour), }, &testData{ ResultCount: 2, StoreIDs: []int{100884}, FromTime: time.Now(), ToTime: time.Now(), }, &testData{ ResultCount: 1, SkuIDs: []int{22714}, FromTime: time.Now(), ToTime: time.Now(), }, &testData{ ResultCount: 0, VendorIDs: []int{model.VendorIDEBAI}, FromTime: time.Now(), ToTime: time.Now(), }, } { result, err := GetEffectiveActStoreSkuInfo(GetDB(), v.ActID, v.VendorIDs, v.StoreIDs, v.SkuIDs, v.FromTime, v.ToTime) if err != nil { t.Fatal(err) } if len(result) != v.ResultCount { t.Errorf("cond:%s, len(result):%d, v.ResultCount:%d", utils.Format4Output(v, false), len(result), v.ResultCount) } } }