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 }