From 63a56745cc78313448a28cfd02f685e48757c83f Mon Sep 17 00:00:00 2001 From: Joshua T Corbin Date: Tue, 26 Jun 2018 12:52:13 -0700 Subject: [PATCH] Revert "Add a jsonEncoder.EncodeEntry test for more coverage" This reverts commit 5966d3aacf37f2bd4e6e0ba3b67e50fb309ba34d. --- zapcore/json_encoder_test.go | 122 ----------------------------------- 1 file changed, 122 deletions(-) delete mode 100644 zapcore/json_encoder_test.go diff --git a/zapcore/json_encoder_test.go b/zapcore/json_encoder_test.go deleted file mode 100644 index 31e0852df..000000000 --- a/zapcore/json_encoder_test.go +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright (c) 2018 Uber Technologies, Inc. -// -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and associated documentation files (the "Software"), to deal -// in the Software without restriction, including without limitation the rights -// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the Software is -// furnished to do so, subject to the following conditions: -// -// The above copyright notice and this permission notice shall be included in -// all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -// THE SOFTWARE. - -package zapcore_test - -import ( - "testing" - "time" - - "github.com/stretchr/testify/assert" - - "go.uber.org/zap" - "go.uber.org/zap/zapcore" -) - -// TestJSONEncodeEntry is an more "integrated" test that makes it easier to get -// coverage on the json encoder (e.g. putJSONEncoder, let alone EncodeEntry -// itself) than the tests in json_encoder_impl_test.go; it needs to be in the -// zapcore_test package, so that it can import the toplevel zap package for -// field constructor convenience. -func TestJSONEncodeEntry(t *testing.T) { - type bar struct { - Key string `json:"key"` - Val float64 `json:"val"` - } - - type foo struct { - A string `json:"aee"` - B int `json:"bee"` - C float64 `json:"cee"` - D []bar `json:"dee"` - } - - tests := []struct { - desc string - expected string - ent zapcore.Entry - fields []zapcore.Field - }{ - { - desc: "info entry with some fields", - expected: `{ - "L": "info", - "T": "2018-06-19T16:33:42.000Z", - "N": "bob", - "M": "lob law", - "so": "passes", - "answer": 42, - "common_pie": 3.14, - "such": { - "aee": "lol", - "bee": 123, - "cee": 0.9999, - "dee": [ - {"key": "pi", "val": 3.141592653589793}, - {"key": "tau", "val": 6.283185307179586} - ] - } - }`, - ent: zapcore.Entry{ - Level: zapcore.InfoLevel, - Time: time.Date(2018, 6, 19, 16, 33, 42, 99, time.UTC), - LoggerName: "bob", - Message: "lob law", - }, - fields: []zapcore.Field{ - zap.String("so", "passes"), - zap.Int("answer", 42), - zap.Float64("common_pie", 3.14), - zap.Reflect("such", foo{ - A: "lol", - B: 123, - C: 0.9999, - D: []bar{ - {"pi", 3.141592653589793}, - {"tau", 6.283185307179586}, - }, - }), - }, - }, - } - - enc := zapcore.NewJSONEncoder(zapcore.EncoderConfig{ - MessageKey: "M", - LevelKey: "L", - TimeKey: "T", - NameKey: "N", - CallerKey: "C", - StacktraceKey: "S", - EncodeLevel: zapcore.LowercaseLevelEncoder, - EncodeTime: zapcore.ISO8601TimeEncoder, - EncodeDuration: zapcore.SecondsDurationEncoder, - EncodeCaller: zapcore.ShortCallerEncoder, - }) - - for _, tt := range tests { - t.Run(tt.desc, func(t *testing.T) { - buf, err := enc.EncodeEntry(tt.ent, tt.fields) - if assert.NoError(t, err, "Unexpected JSON encoding error.") { - assert.JSONEq(t, tt.expected, buf.String(), "Incorrect encoded JSON entry.") - } - buf.Free() - }) - } -}