jsoniter_map_test.go 838 B

12345678910111213141516171819202122232425262728293031323334353637
  1. package jsoniter
  2. import (
  3. "testing"
  4. "reflect"
  5. "fmt"
  6. )
  7. func Test_read_map(t *testing.T) {
  8. iter := ParseString(`{"hello": "world"}`)
  9. m := map[string]string{"1": "2"}
  10. iter.Read(&m)
  11. if !reflect.DeepEqual(map[string]string{"1": "2", "hello": "world"}, m) {
  12. fmt.Println(iter.Error)
  13. t.Fatal(m)
  14. }
  15. }
  16. func Test_read_map_of_interface(t *testing.T) {
  17. iter := ParseString(`{"hello": "world"}`)
  18. m := map[string]interface{}{"1": "2"}
  19. iter.Read(&m)
  20. if !reflect.DeepEqual(map[string]interface{}{"1": "2", "hello": "world"}, m) {
  21. fmt.Println(iter.Error)
  22. t.Fatal(m)
  23. }
  24. }
  25. func Test_read_map_of_any(t *testing.T) {
  26. iter := ParseString(`{"hello": "world"}`)
  27. m := map[string]Any{"1": any("2")}
  28. iter.Read(&m)
  29. if !reflect.DeepEqual(map[string]Any{"1": any("2"), "hello": any("world")}, m) {
  30. fmt.Println(iter.Error)
  31. t.Fatal(m)
  32. }
  33. }