42 lines
539 B
Go
42 lines
539 B
Go
package commons
|
|
|
|
import (
|
|
"log"
|
|
"fmt"
|
|
"bytes"
|
|
"encoding/json"
|
|
"testing"
|
|
)
|
|
|
|
func TestJsonPrintError(t *testing.T) {
|
|
|
|
jsonstr := `
|
|
{
|
|
"name": "George",
|
|
"age": 87,
|
|
active": "false",
|
|
"properties": {
|
|
"one": "two",
|
|
"three": "four"
|
|
}
|
|
}
|
|
`
|
|
|
|
var buf bytes.Buffer
|
|
log.SetOutput(&buf)
|
|
|
|
content := []byte(jsonstr)
|
|
var data map[string]any
|
|
|
|
err := json.Unmarshal(content, &data)
|
|
|
|
JsonPrintError(err, content)
|
|
|
|
errOut := fmt.Sprintf("%s", buf.String())
|
|
|
|
if errOut == "" {
|
|
t.Fatal("should have printed the error")
|
|
}
|
|
}
|
|
|