mirror of https://github.com/gofiber/fiber.git
61 lines
1.2 KiB
Go
61 lines
1.2 KiB
Go
package utils
|
|
|
|
import (
|
|
"encoding/json"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
type sampleStructure struct {
|
|
ImportantString string `json:"important_string"`
|
|
}
|
|
|
|
func Test_GolangJSONEncoder(t *testing.T) {
|
|
t.Parallel()
|
|
|
|
var (
|
|
ss = &sampleStructure{
|
|
ImportantString: "Hello World",
|
|
}
|
|
importantString = `{"important_string":"Hello World"}`
|
|
jsonEncoder JSONMarshal = json.Marshal
|
|
)
|
|
|
|
raw, err := jsonEncoder(ss)
|
|
require.NoError(t, err)
|
|
|
|
require.Equal(t, string(raw), importantString)
|
|
}
|
|
|
|
func Test_DefaultJSONEncoder(t *testing.T) {
|
|
t.Parallel()
|
|
|
|
var (
|
|
ss = &sampleStructure{
|
|
ImportantString: "Hello World",
|
|
}
|
|
importantString = `{"important_string":"Hello World"}`
|
|
jsonEncoder JSONMarshal = json.Marshal
|
|
)
|
|
|
|
raw, err := jsonEncoder(ss)
|
|
require.NoError(t, err)
|
|
|
|
require.Equal(t, string(raw), importantString)
|
|
}
|
|
|
|
func Test_DefaultJSONDecoder(t *testing.T) {
|
|
t.Parallel()
|
|
|
|
var (
|
|
ss sampleStructure
|
|
importantString = []byte(`{"important_string":"Hello World"}`)
|
|
jsonDecoder JSONUnmarshal = json.Unmarshal
|
|
)
|
|
|
|
err := jsonDecoder(importantString, &ss)
|
|
require.NoError(t, err)
|
|
require.Equal(t, "Hello World", ss.ImportantString)
|
|
}
|