支持工具链

This commit is contained in:
2026-06-10 12:07:07 +08:00
parent 1e793ce814
commit fe2477dd97
9 changed files with 1632 additions and 545 deletions
+31
View File
@@ -0,0 +1,31 @@
package timeagent
import (
"strings"
"testing"
"time"
)
func TestResolveBuildsCalendarRanges(t *testing.T) {
loc := time.FixedZone("CST", 8*60*60)
ctx := Resolve(time.Date(2026, 6, 10, 13, 14, 15, 0, loc))
if got := FormatSQLRange(ctx.Today); got != "start=2026-06-10 00:00:00, end_exclusive=2026-06-11 00:00:00" {
t.Fatalf("today = %s", got)
}
if got := FormatSQLRange(ctx.ThisMonth); got != "start=2026-06-01 00:00:00, end_exclusive=2026-07-01 00:00:00" {
t.Fatalf("this month = %s", got)
}
if got := FormatSQLRange(ctx.ThisWeek); got != "start=2026-06-08 00:00:00, end_exclusive=2026-06-15 00:00:00" {
t.Fatalf("this week = %s", got)
}
}
func TestBuildContextIncludesSQLHints(t *testing.T) {
ctx := Resolve(time.Date(2026, 6, 10, 13, 14, 15, 0, time.UTC))
text := BuildContext(ctx, "需要日期范围")
for _, want := range []string{"时间工具结果", "本月", "start=", "end_exclusive=", "半开区间", "需要日期范围"} {
if !strings.Contains(text, want) {
t.Fatalf("context missing %q:\n%s", want, text)
}
}
}