Documentation ¶
Overview ¶
Package zaptest provides a variety of helpers for testing log output.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewLogger ¶
func NewLogger(t TestingT, opts ...LoggerOption) *zap.Logger
NewLogger builds a new Logger that logs all messages to the given testing.TB.
logger := zaptest.NewLogger(t)
Use this with a *testing.T or *testing.B to get logs which get printed only if a test fails or if you ran go test -v.
The returned logger defaults to logging debug level messages and above. This may be changd by passing a zaptest.Level during construction.
logger := zaptest.NewLogger(t, zaptest.Level(zap.WarnLevel))
func Timeout
deprecated
added in
v1.0.0
Types ¶
type Buffer ¶ added in v1.0.0
Buffer is an implementation of zapcore.WriteSyncer that sends all writes to a bytes.Buffer. It has convenience methods to split the accumulated buffer on newlines.
type FailWriter ¶ added in v1.0.0
type FailWriter = ztest.FailWriter
FailWriter is a WriteSyncer that always returns an error on writes.
type LoggerOption ¶
type LoggerOption interface {
// contains filtered or unexported methods
}
LoggerOption configures the test logger built by NewLogger.
func Level ¶
func Level(enab zapcore.LevelEnabler) LoggerOption
Level controls which messages are logged by a test Logger built by NewLogger.
type ShortWriter ¶ added in v1.0.0
type ShortWriter = ztest.ShortWriter
ShortWriter is a WriteSyncer whose write method never returns an error, but always reports that it wrote one byte less than the input slice's length (thus, a "short write").
type TestingT ¶
type TestingT interface { // Logs the given message without failing the test. Logf(string, ...interface{}) // Logs the given message and marks the test as failed. Errorf(string, ...interface{}) // Marks the test as failed. Fail() // Returns true if the test has been marked as failed. Failed() bool // Returns the name of the test. Name() string // Marks the test as failed and stops execution of that test. FailNow() }
TestingT is a subset of the API provided by all *testing.T and *testing.B objects.