rest_test.go 585 B

12345678910111213141516171819202122232425262728293031
  1. package rest
  2. import (
  3. "io/ioutil"
  4. "strings"
  5. "testing"
  6. )
  7. type Something struct {
  8. First int
  9. Second string
  10. }
  11. func TestJSONDecoder(t *testing.T) {
  12. const json = `{ "First": 15, "Second": "Some string" }`
  13. reader := strings.NewReader(json)
  14. readcloser := ioutil.NopCloser(reader)
  15. defer readcloser.Close()
  16. expected := Something{First: 15, Second: "Some string"}
  17. var result Something
  18. err := JSONDecoder(readcloser, &result)
  19. if err != nil {
  20. t.Error(err)
  21. }
  22. if expected.First != result.First || expected.Second != result.Second {
  23. t.Errorf("Wrong result: %v", result)
  24. }
  25. }