diff options
Diffstat (limited to 'internal/showcase/showcase_test.go')
| -rw-r--r-- | internal/showcase/showcase_test.go | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/internal/showcase/showcase_test.go b/internal/showcase/showcase_test.go index 3fce064..f480bdb 100644 --- a/internal/showcase/showcase_test.go +++ b/internal/showcase/showcase_test.go @@ -1,6 +1,8 @@ package showcase import ( + "os" + "path/filepath" "reflect" "strings" "testing" @@ -122,3 +124,28 @@ func TestFormatGemtext_IncludesRankHistoryInHeader(t *testing.T) { t.Fatalf("rank history was not rendered in header: %s", content) } } + +func TestFindReadmeContent_UsesRepoPathWithoutChangingCWD(t *testing.T) { + t.Parallel() + + repoPath := filepath.Join(t.TempDir(), "repo") + if err := os.MkdirAll(repoPath, 0755); err != nil { + t.Fatalf("failed to create repo dir: %v", err) + } + + readmePath := filepath.Join(repoPath, "README.md") + if err := os.WriteFile(readmePath, []byte("repo summary"), 0644); err != nil { + t.Fatalf("failed to write readme: %v", err) + } + + content, readmeFile, found := findReadmeContent(repoPath) + if !found { + t.Fatal("expected README to be found") + } + if readmeFile != "README.md" { + t.Fatalf("expected README.md, got %q", readmeFile) + } + if string(content) != "repo summary" { + t.Fatalf("unexpected README content: %q", string(content)) + } +} |
