diff options
| author | Paul Buetow <paul@buetow.org> | 2026-03-27 06:23:24 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-03-27 06:23:24 +0200 |
| commit | 2edeaa610553b667776010bf2e9f5596aaa8ddbd (patch) | |
| tree | b32b5c3946061f3e06ae274b5c4260358985f04f /internal/askcli/command_complete_uuids_test.go | |
| parent | 6b964400deb653d2c47aa8932ab5444346833b0d (diff) | |
task 73fabcf6-d4a1-4bf3-aae1-a390a734e517: extend ask selector completion
Diffstat (limited to 'internal/askcli/command_complete_uuids_test.go')
| -rw-r--r-- | internal/askcli/command_complete_uuids_test.go | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/internal/askcli/command_complete_uuids_test.go b/internal/askcli/command_complete_uuids_test.go index 2c8fc34..4a68e51 100644 --- a/internal/askcli/command_complete_uuids_test.go +++ b/internal/askcli/command_complete_uuids_test.go @@ -39,8 +39,8 @@ func TestHandleCompleteUUIDs_PrintsPendingUUIDs(t *testing.T) { if code != 0 { t.Fatalf("handleCompleteUUIDs code = %d, want 0", code) } - if got := stdout.String(); got != "uuid-1\nuuid-2\n" { - t.Fatalf("stdout = %q, want UUID list", got) + if got := stdout.String(); got != "0\nuuid-1\n1\nuuid-2\n" { + t.Fatalf("stdout = %q, want alias-first selector list", got) } if stderr.Len() != 0 { t.Fatalf("stderr = %q, want empty", stderr.String()) @@ -109,9 +109,27 @@ func TestHandleCompleteUUIDs_WarnsOnInvalidAliasCache(t *testing.T) { t.Fatalf("handleCompleteUUIDs code = %d, want 0", code) } if got := stdout.String(); got != "uuid-1\n" { - t.Fatalf("stdout = %q, want UUID list", got) + t.Fatalf("stdout = %q, want UUID-only fallback list", got) } if !strings.Contains(stderr.String(), "failed to update task alias cache") { t.Fatalf("stderr = %q, want cache warning", stderr.String()) } } + +func TestTaskCompletionSelectors_SkipsMissingAndDuplicateAliases(t *testing.T) { + tasks := []TaskExport{ + {UUID: "uuid-1"}, + {UUID: ""}, + {UUID: "uuid-2"}, + } + aliases := map[string]string{ + "uuid-1": "0", + "uuid-2": "uuid-2", + } + + got := taskCompletionSelectors(tasks, aliases) + want := []string{"0", "uuid-1", "uuid-2"} + if strings.Join(got, "\n") != strings.Join(want, "\n") { + t.Fatalf("taskCompletionSelectors = %v, want %v", got, want) + } +} |
