12 "github.com/bytom/log"
15 func TestWriteArray(t *testing.T) {
16 examples := []struct {
22 {make([]int, 0), "[]"},
25 for _, ex := range examples {
26 rec := httptest.NewRecorder()
27 Write(context.Background(), rec, 200, ex.in)
28 got := strings.TrimSpace(rec.Body.String())
30 t.Errorf("Write(%v) = %v want %v", ex.in, got, ex.want)
35 func TestWriteErr(t *testing.T) {
38 defer log.SetOutput(os.Stderr)
42 ctx := context.Background()
43 resp := &errResponse{httptest.NewRecorder(), errors.New(want)}
44 Write(ctx, resp, 200, "ok")
46 if !strings.Contains(got, want) {
47 t.Errorf("log = %v; should contain %q", got, want)
51 type errResponse struct {
52 *httptest.ResponseRecorder
56 func (r *errResponse) Write([]byte) (int, error) {