github.com/number571/tendermint@v0.34.11-gost/libs/log/default_test.go (about)

     1  package log_test
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/number571/tendermint/libs/log"
     7  	"github.com/stretchr/testify/require"
     8  )
     9  
    10  func TestNewDefaultLogger(t *testing.T) {
    11  	testCases := map[string]struct {
    12  		format    string
    13  		level     string
    14  		expectErr bool
    15  	}{
    16  		"invalid format": {
    17  			format:    "foo",
    18  			level:     log.LogLevelInfo,
    19  			expectErr: true,
    20  		},
    21  		"invalid level": {
    22  			format:    log.LogFormatJSON,
    23  			level:     "foo",
    24  			expectErr: true,
    25  		},
    26  		"valid format and level": {
    27  			format:    log.LogFormatJSON,
    28  			level:     log.LogLevelInfo,
    29  			expectErr: false,
    30  		},
    31  	}
    32  
    33  	for name, tc := range testCases {
    34  		tc := tc
    35  
    36  		t.Run(name, func(t *testing.T) {
    37  			_, err := log.NewDefaultLogger(tc.format, tc.level, false)
    38  			if tc.expectErr {
    39  				require.Error(t, err)
    40  				require.Panics(t, func() {
    41  					_ = log.MustNewDefaultLogger(tc.format, tc.level, false)
    42  				})
    43  			} else {
    44  				require.NoError(t, err)
    45  			}
    46  		})
    47  	}
    48  }