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  }