Enable plain TTY logging mode + loose-data processing

This commit is contained in:
2026-05-14 15:11:08 +02:00
parent 2cef662e8e
commit 9384d905d1
5 changed files with 115 additions and 28 deletions
+21 -2
View File
@@ -35,8 +35,7 @@ topdata:
sourceTime := time.Now().Add(-2 * time.Hour)
outputTime := time.Now().Add(-1 * time.Hour)
setFileTime(t, filepath.Join(root, "topdata", "assets", "gui", "testicon.png"), sourceTime)
setFileTime(t, filepath.Join(root, "topdata", "data", "repadjust", "base.json"), sourceTime)
setTreeTime(t, filepath.Join(root, "topdata"), sourceTime)
setFileTime(t, filepath.Join(root, ".cache", "2da", "repadjust.2da"), outputTime)
setFileTime(t, filepath.Join(root, "build", "sow_tlk.tlk"), outputTime)
@@ -130,6 +129,19 @@ haks:
}
}
func setTreeTime(t *testing.T, root string, modTime time.Time) {
t.Helper()
err := filepath.WalkDir(root, func(path string, d os.DirEntry, walkErr error) error {
if walkErr != nil {
return walkErr
}
return os.Chtimes(path, modTime, modTime)
})
if err != nil {
t.Fatalf("set tree time under %s: %v", root, err)
}
}
func TestRunBuildHAKsVerboseListsMappings(t *testing.T) {
root := t.TempDir()
mkdirAll(t, filepath.Join(root, "assets", "envi", "music", "westgate"))
@@ -212,6 +224,13 @@ func TestTopdataConsoleSuppressesProgressInNormalMode(t *testing.T) {
}
}
func TestSpinnerEnabledForHonorsPlainTTYMode(t *testing.T) {
t.Setenv("SOW_TOOLS_TTY_MODE", "plain")
if spinnerEnabledFor(&bytes.Buffer{}, logLevelNormal) {
t.Fatal("expected plain tty mode to disable spinner output")
}
}
func TestTopdataConsoleDebugProgressAndRelativePaths(t *testing.T) {
var stdout bytes.Buffer
console := &topdataConsole{