grafana/pkg/plugins/backendplugin/log_wrapper_test.go
Marcus Efraimsson 58b7958952
Backend plugins: Log wrapper args formatting (#20514)
Backend plugins is recommended to use hclog with json 
formatting to get proper log output in grafana server log.
Old hclog-wrapper.go that I deleted while back is still in 
the repo so deletes that.
2019-11-20 14:27:28 +01:00

30 lines
854 B
Go

package backendplugin
import (
"fmt"
"testing"
"time"
"github.com/stretchr/testify/assert"
)
func TestLogWrapper(t *testing.T) {
tcs := []struct {
args []interface{}
expectedResult []interface{}
}{
{args: []interface{}{}, expectedResult: []interface{}{}},
{args: []interface{}{"1", "2", "3"}, expectedResult: []interface{}{"1", "2", "3"}},
{args: []interface{}{"1", "2"}, expectedResult: []interface{}{"1", "2"}},
{args: []interface{}{"1", "2", "timestamp", time.Now()}, expectedResult: []interface{}{"1", "2"}},
{args: []interface{}{"1", "2", "timestamp", time.Now(), "3", "4"}, expectedResult: []interface{}{"1", "2", "3", "4"}},
}
for i, tc := range tcs {
t.Run(fmt.Sprintf("formatArgs testcase %d", i), func(t *testing.T) {
res := formatArgs(tc.args...)
assert.Exactly(t, tc.expectedResult, res)
})
}
}