12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- package parser
- import "testing"
- func TestMapToStruct(t *testing.T) {
- m := map[string]any{
- "result": "result",
- "inherit": map[string]any{
- "inherit_result": "result",
- },
- "object": map[string]any{
- "a": 1,
- },
- }
- type p struct {
- Inherit struct {
- InheritResult string `json:"inherit_result"`
- }
- }
- type s struct {
- p
- Result string `json:"result"`
- Object struct {
- A int `json:"a"`
- } `json:"object"`
- }
- result, err := MapToStruct[s](m)
- if err != nil {
- t.Error(err)
- }
- if result.Result != "result" {
- t.Error("result should be result")
- }
- if result.Inherit.InheritResult != "result" {
- t.Error("inherit_result should be result")
- }
- if result.Object.A != 1 {
- t.Error("a should be 1")
- }
- }
|