github.com/justyer/lingo@v0.0.0-20201218042750-c4a45a86ec29/struct2map/s2m_test.go (about)

     1  package s2m
     2  
     3  import (
     4  	"fmt"
     5  	"testing"
     6  )
     7  
     8  func TestKeyByTagToString(t *testing.T) {
     9  	type X struct {
    10  		A int    `json:"a"`
    11  		B string `json:"b"`
    12  	}
    13  	var x X
    14  	x.A = 1
    15  	x.B = "s"
    16  	m, err := KeyByTagToString(x, "json")
    17  	if err != nil {
    18  		t.Errorf("%s", err)
    19  	}
    20  	fmt.Printf("%#v\n", m)
    21  }
    22  
    23  func TestKeyByTag(t *testing.T) {
    24  	type X struct {
    25  		A int    `json:"a"`
    26  		B string `json:"b"`
    27  	}
    28  	var x X
    29  	x.A = 2
    30  	x.B = "t"
    31  	m := KeyByTag(x, "json")
    32  	fmt.Printf(":%#v\n", m)
    33  }
    34  
    35  func BenchmarkKeyByTagToString(b *testing.B) {
    36  	type X struct {
    37  		A int    `json:"a"`
    38  		B string `json:"b"`
    39  	}
    40  	var x X
    41  	KeyByTagToString(x, "json")
    42  }