Files
EdgeAPI/internal/db/models/metric_stat_dao_test.go

64 lines
1.5 KiB
Go
Raw Normal View History

2022-03-28 16:25:16 +08:00
package models_test
2021-06-27 21:59:37 +08:00
import (
2024-07-27 14:15:25 +08:00
"testing"
"time"
2022-03-28 16:25:16 +08:00
"github.com/TeaOSLab/EdgeAPI/internal/db/models"
2021-06-27 21:59:37 +08:00
_ "github.com/go-sql-driver/mysql"
_ "github.com/iwind/TeaGo/bootstrap"
2021-12-03 12:06:13 +08:00
"github.com/iwind/TeaGo/dbs"
2021-08-30 15:23:51 +08:00
"github.com/iwind/TeaGo/rands"
"github.com/iwind/TeaGo/types"
2021-09-08 17:32:08 +08:00
timeutil "github.com/iwind/TeaGo/utils/time"
2021-06-27 21:59:37 +08:00
)
func TestNewMetricStatDAO_InsertMany(t *testing.T) {
2021-12-03 12:06:13 +08:00
for i := 0; i <= 1; i++ {
2022-03-28 16:25:16 +08:00
err := models.NewMetricStatDAO().CreateStat(nil, types.String(i)+"_v1", 18, int64(rands.Int(0, 10000)), int64(rands.Int(0, 10000)), int64(rands.Int(0, 100)), []string{"/html" + types.String(i)}, 1, timeutil.Format("Ymd"), 0)
if err != nil {
t.Fatal(err)
}
2021-12-03 12:06:13 +08:00
if i%10000 == 0 {
2021-08-30 15:23:51 +08:00
t.Log(i)
}
}
t.Log("done")
}
2021-12-03 12:06:13 +08:00
2022-03-28 16:25:16 +08:00
func TestMetricStatDAO_Clean2(t *testing.T) {
2021-12-03 12:06:13 +08:00
dbs.NotifyReady()
2022-03-28 16:25:16 +08:00
err := models.NewMetricStatDAO().Clean(nil)
2021-12-03 12:06:13 +08:00
if err != nil {
t.Fatal(err)
}
t.Log("ok")
}
2022-03-28 16:25:16 +08:00
func TestMetricStatDAO_DeleteNodeItemStats(t *testing.T) {
var dao = models.NewMetricStatDAO()
var before = time.Now()
defer func() {
t.Log(time.Since(before).Seconds()*1000, "ms")
}()
err := dao.DeleteNodeItemStats(nil, 1, 0, 1, timeutil.Format("Ymd"), nil)
2022-03-28 16:25:16 +08:00
if err != nil {
t.Fatal(err)
}
t.Log("ok")
}
func TestMetricStatDAO_CountItemStats(t *testing.T) {
var dao = models.NewMetricStatDAO()
var before = time.Now()
defer func() {
t.Log(time.Since(before).Seconds()*1000, "ms")
}()
count, err := dao.CountItemStats(nil, 1, 1)
if err != nil {
t.Fatal(err)
}
t.Log("count:", count)
}