From 7a38213ce33d11690c32645456fd3814f33731da Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Fri, 27 Mar 2026 06:30:16 +0200 Subject: Add alias coverage for task b777fcc2-8f64-4250-b0ac-6038a8aa26b4 --- internal/askcli/task_alias_cache_test.go | 47 ++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) (limited to 'internal/askcli/task_alias_cache_test.go') diff --git a/internal/askcli/task_alias_cache_test.go b/internal/askcli/task_alias_cache_test.go index c9fffd6..f792585 100644 --- a/internal/askcli/task_alias_cache_test.go +++ b/internal/askcli/task_alias_cache_test.go @@ -179,6 +179,53 @@ func TestEnsureTaskAliases_PrunesExpiredEntriesWithoutReusingIDs(t *testing.T) { } } +func TestEnsureTaskAliases_DoesNotPruneEntriesAt120DayBoundary(t *testing.T) { + dir := t.TempDir() + + oldNow := nowTaskAliasCache + oldRoot := taskAliasCacheRoot + nowTaskAliasCache = func() time.Time { return time.Date(2026, 3, 26, 12, 0, 0, 0, time.UTC) } + taskAliasCacheRoot = func() (string, error) { return filepath.Join(dir, "hexai"), nil } + defer func() { + nowTaskAliasCache = oldNow + taskAliasCacheRoot = oldRoot + }() + + path, err := taskAliasCachePath() + if err != nil { + t.Fatalf("taskAliasCachePath: %v", err) + } + + boundary := nowTaskAliasCache().Add(-taskAliasCacheTTL) + cache := taskAliasCache{ + NextID: 37, + Entries: []taskAliasCacheEntry{ + { + UUID: "boundary", + Alias: "z", + CreatedAt: boundary, + LastAccessedAt: boundary, + }, + }, + } + if err := cache.save(path); err != nil { + t.Fatalf("save seed cache: %v", err) + } + + aliases, err := ensureTaskAliases([]TaskExport{{UUID: "boundary"}}) + if err != nil { + t.Fatalf("ensureTaskAliases returned error: %v", err) + } + if aliases["boundary"] != "z" { + t.Fatalf("boundary alias = %q, want z", aliases["boundary"]) + } + + cache = readTaskAliasCacheForTest(t, path) + if !hasTaskAliasEntry(cache, "boundary") { + t.Fatal("boundary entry should not have been pruned") + } +} + func TestEnsureTaskAliases_InvalidCacheReturnsError(t *testing.T) { dir := t.TempDir() -- cgit v1.2.3