go.charczuk.com@v0.0.0-20240327042549-bc490516bd1a/sdk/db/json_test.go (about) 1 /* 2 3 Copyright (c) 2023 - Present. Will Charczuk. All rights reserved. 4 Use of this source code is governed by a MIT license that can be found in the LICENSE file at the root of the repository. 5 6 */ 7 8 package db 9 10 import ( 11 "encoding/json" 12 "testing" 13 14 . "go.charczuk.com/sdk/assert" 15 ) 16 17 func Test_JSON(t *testing.T) { 18 var foo *int 19 20 marshaled, err := json.Marshal(foo) 21 ItsNil(t, err) 22 ItsEqual(t, "null", string(marshaled)) 23 ItsNil(t, JSON(foo)) 24 25 valid := struct { 26 Foo string `json:"foo"` 27 Bar string `json:"bar"` 28 }{ 29 Foo: "not-foo", 30 Bar: "not-bar", 31 } 32 33 output := JSON(valid) 34 ItsNotNil(t, output) 35 ItsEqual(t, `{"foo":"not-foo","bar":"not-bar"}`, output) 36 }