github.com/attic-labs/noms@v0.0.0-20210827224422-e5fa29d95e8b/samples/go/csv/kind_slice_test.go (about) 1 // Copyright 2016 Attic Labs, Inc. All rights reserved. 2 // Licensed under the Apache License, version 2.0: 3 // http://www.apache.org/licenses/LICENSE-2.0 4 5 package csv 6 7 import ( 8 "encoding/json" 9 "fmt" 10 "testing" 11 12 "github.com/attic-labs/noms/go/types" 13 "github.com/stretchr/testify/assert" 14 ) 15 16 func TestKindSliceJSON(t *testing.T) { 17 assert := assert.New(t) 18 19 ks := KindSlice{types.NumberKind, types.StringKind, types.BoolKind} 20 b, err := json.Marshal(&ks) 21 assert.NoError(err) 22 23 assert.Equal(fmt.Sprintf("[%d,%d,%d]", ks[0], ks[1], ks[2]), string(b)) 24 25 var uks KindSlice 26 err = json.Unmarshal(b, &uks) 27 assert.NoError(err, "error with json.Unmarshal") 28 assert.Equal(ks, uks) 29 }