mirror of
https://github.com/gofiber/fiber.git
synced 2025-02-24 16:04:43 +00:00
61 lines
1.2 KiB
Go
61 lines
1.2 KiB
Go
package utils
|
|
|
|
import (
|
|
goJson "encoding/json"
|
|
"testing"
|
|
|
|
"github.com/gofiber/fiber/v2/internal/encoding/json"
|
|
)
|
|
|
|
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 = goJson.Marshal
|
|
)
|
|
|
|
raw, err := jsonEncoder(ss)
|
|
AssertEqual(t, err, nil)
|
|
|
|
AssertEqual(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)
|
|
AssertEqual(t, err, nil)
|
|
|
|
AssertEqual(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)
|
|
AssertEqual(t, err, nil)
|
|
AssertEqual(t, "Hello World", ss.ImportantString)
|
|
}
|