From 587d4e264b5c41a72e682e5dffaecadbc9259b0f Mon Sep 17 00:00:00 2001 From: Michael Schurter Date: Fri, 16 Feb 2018 15:07:49 -0800 Subject: [PATCH] testlog: override testlogger with envvar --- helper/testlog/testlog.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/helper/testlog/testlog.go b/helper/testlog/testlog.go index b72fcfb28..709bd9d54 100644 --- a/helper/testlog/testlog.go +++ b/helper/testlog/testlog.go @@ -6,8 +6,14 @@ package testlog import ( "io" "log" + "os" ) +// UseStdout returns true if NOMAD_TEST_STDOUT=1 and sends logs to stdout. +func UseStdout() bool { + return os.Getenv("NOMAD_TEST_STDOUT") == "1" +} + // LogPrinter is the methods of testing.T (or testing.B) needed by the test // logger. type LogPrinter interface { @@ -27,11 +33,17 @@ func (w *writer) Write(p []byte) (n int, err error) { // NewWriter creates a new io.Writer backed by a Logger. func NewWriter(t LogPrinter) io.Writer { + if UseStdout() { + return os.Stdout + } return &writer{t} } // New returns a new test logger. See https://golang.org/pkg/log/#New func New(t LogPrinter, prefix string, flag int) *log.Logger { + if UseStdout() { + return log.New(os.Stdout, prefix, flag) + } return log.New(&writer{t}, prefix, flag) }