testmain_test.go raw

   1  package policy
   2  
   3  import (
   4  	"io"
   5  	"os"
   6  	"testing"
   7  
   8  	"next.orly.dev/pkg/lol"
   9  	"next.orly.dev/pkg/lol/log"
  10  )
  11  
  12  func TestMain(m *testing.M) {
  13  	// Disable all logging during tests unless explicitly enabled
  14  	if os.Getenv("TEST_LOG") == "" {
  15  		// Set log level to Off to suppress all logs
  16  		lol.SetLogLevel("off")
  17  		// Also redirect output to discard
  18  		lol.Writer = io.Discard
  19  		// Disable all log printers
  20  		log.T = lol.GetNullPrinter()
  21  		log.D = lol.GetNullPrinter()
  22  		log.I = lol.GetNullPrinter()
  23  		log.W = lol.GetNullPrinter()
  24  		log.E = lol.GetNullPrinter()
  25  		log.F = lol.GetNullPrinter()
  26  	}
  27  
  28  	// Run tests
  29  	os.Exit(m.Run())
  30  }
  31