github.com/karalabe/go-ethereum@v0.8.5/tests/helper/readers.go (about) 1 package helper 2 3 import ( 4 "encoding/json" 5 "io" 6 "io/ioutil" 7 "net/http" 8 "os" 9 "testing" 10 ) 11 12 func readJSON(t *testing.T, reader io.Reader, value interface{}) { 13 data, err := ioutil.ReadAll(reader) 14 err = json.Unmarshal(data, &value) 15 if err != nil { 16 t.Error(err) 17 } 18 } 19 20 func CreateHttpTests(t *testing.T, uri string, value interface{}) { 21 resp, err := http.Get(uri) 22 if err != nil { 23 t.Error(err) 24 25 return 26 } 27 defer resp.Body.Close() 28 29 readJSON(t, resp.Body, value) 30 } 31 32 func CreateFileTests(t *testing.T, fn string, value interface{}) { 33 file, err := os.Open(fn) 34 if err != nil { 35 t.Error(err) 36 37 return 38 } 39 defer file.Close() 40 41 readJSON(t, file, value) 42 }