feat(cmd/joj3): debug log to stderr on test
All checks were successful
submodules sync / sync (push) Successful in 28s
build / build (push) Successful in 1m15s
build / trigger-build-image (push) Successful in 8s

This commit is contained in:
张泊明518370910136 2024-10-19 16:58:37 -04:00
parent 091c58e9e9
commit 312b6256c3
GPG Key ID: D47306D7062CDA9D
2 changed files with 8 additions and 1 deletions

View File

@ -6,6 +6,8 @@ import (
"os" "os"
) )
var runningTest bool
type multiHandler struct { type multiHandler struct {
handlers []slog.Handler handlers []slog.Handler
} }
@ -60,9 +62,13 @@ func setupSlog(logPath string) error {
}) })
handlers = append(handlers, debugHandler) handlers = append(handlers, debugHandler)
} }
stderrLogLevel := slog.LevelInfo
if runningTest {
stderrLogLevel = slog.LevelDebug
}
// Stderr handler for info logs and above // Stderr handler for info logs and above
stderrHandler := slog.NewTextHandler(os.Stderr, &slog.HandlerOptions{ stderrHandler := slog.NewTextHandler(os.Stderr, &slog.HandlerOptions{
Level: slog.LevelInfo, Level: stderrLogLevel,
}) })
handlers = append(handlers, stderrHandler) handlers = append(handlers, stderrHandler)
// Create a multi-handler // Create a multi-handler

View File

@ -105,6 +105,7 @@ func TestRun(t *testing.T) {
os.Args = []string{"./joj3"} os.Args = []string{"./joj3"}
outputFile := "joj3_result.json" outputFile := "joj3_result.json"
defer os.Remove(outputFile) defer os.Remove(outputFile)
runningTest = true
_ = mainImpl() _ = mainImpl()
stageResults := readStageResults(t, outputFile) stageResults := readStageResults(t, outputFile)
regex := true regex := true