fix: make database_removal_scenario test more realistic

The test was creating an empty .beads/ directory after simulating rm -rf,
but FindBeadsDir() requires some project files (config.yaml, metadata.json,
or *.db/*.jsonl) to recognize a directory as a valid beads directory.

Updated the test to create a minimal config.yaml like bd init actually does
before auto-import runs. This makes the test more realistic and fixes the
flakiness.
This commit is contained in:
Steve Yegge
2025-12-23 00:04:55 -08:00
parent 9480041605
commit e79558a972

View File

@@ -158,9 +158,14 @@ func testDatabaseRemovalScenario(t *testing.T) {
runCmd(t, dir, "git", "add", ".beads/issues.jsonl") runCmd(t, dir, "git", "add", ".beads/issues.jsonl")
runCmd(t, dir, "git", "commit", "-m", "Add issues") runCmd(t, dir, "git", "commit", "-m", "Add issues")
// Simulate rm -rf .beads/ // Simulate rm -rf .beads/ followed by partial bd init
// (in practice, bd init creates config.yaml before auto-import)
os.RemoveAll(beadsDir) os.RemoveAll(beadsDir)
os.MkdirAll(beadsDir, 0755) os.MkdirAll(beadsDir, 0755)
// Create minimal config so FindBeadsDir recognizes this as a beads directory
if err := os.WriteFile(filepath.Join(beadsDir, "config.yaml"), []byte("issue-prefix: test\n"), 0644); err != nil {
t.Fatalf("Failed to write config.yaml: %v", err)
}
// Change to test directory // Change to test directory
t.Chdir(dir) t.Chdir(dir)