| 472 | } |
| 473 | |
| 474 | func TestDecode_Embedded(t *testing.T) { |
| 475 | t.Parallel() |
| 476 | |
| 477 | input := map[string]interface{}{ |
| 478 | "vstring": "foo", |
| 479 | "Basic": map[string]interface{}{ |
| 480 | "vstring": "innerfoo", |
| 481 | }, |
| 482 | "vunique": "bar", |
| 483 | } |
| 484 | |
| 485 | var result Embedded |
| 486 | err := Decode(input, &result) |
| 487 | if err != nil { |
| 488 | t.Fatalf("got an err: %s", err.Error()) |
| 489 | } |
| 490 | |
| 491 | if result.Vstring != "innerfoo" { |
| 492 | t.Errorf("vstring value should be 'innerfoo': %#v", result.Vstring) |
| 493 | } |
| 494 | |
| 495 | if result.Vunique != "bar" { |
| 496 | t.Errorf("vunique value should be 'bar': %#v", result.Vunique) |
| 497 | } |
| 498 | } |
| 499 | |
| 500 | func TestDecode_EmbeddedPointer(t *testing.T) { |
| 501 | t.Parallel() |