package runner import ( "path/filepath" "sort" "testing" ) func TestFdListFiles(t *testing.T) { dir := t.TempDir() writeTempFile(t, dir, "foo_old.txt", "") writeTempFile(t, dir, "foo_backup.txt", "") writeTempFile(t, dir, "keep.txt", "") files, err := FdListFiles("foo", dir) if err != nil { t.Fatalf("unexpected error: %v", err) } if len(files) != 2 { t.Fatalf("want 2 files, got %d: %v", len(files), files) } sort.Strings(files) if filepath.Base(files[0]) != "foo_backup.txt" || filepath.Base(files[1]) != "foo_old.txt" { t.Errorf("unexpected files: %v", files) } } func TestFdListFiles_NoMatches(t *testing.T) { dir := t.TempDir() writeTempFile(t, dir, "keep.txt", "") files, err := FdListFiles("no_match_pattern_xyz", dir) if err != nil { t.Fatalf("unexpected error: %v", err) } if len(files) != 0 { t.Errorf("want 0 files, got %v", files) } } func TestFdListFiles_TypeFilter(t *testing.T) { dir := t.TempDir() writeTempFile(t, dir, "foo_file.txt", "") // With --type f should find the file files, err := FdListFiles("foo", dir, "--type", "f") if err != nil { t.Fatalf("unexpected error: %v", err) } if len(files) != 1 || filepath.Base(files[0]) != "foo_file.txt" { t.Errorf("want [foo_file.txt], got %v", files) } }