| 3174 | } |
| 3175 | |
| 3176 | func TestDecodeSSEPropagatesHandlerError(t *testing.T) { |
| 3177 | t.Parallel() |
| 3178 | |
| 3179 | wantErr := errors.New("boom") |
| 3180 | body := strings.Join([]string{ |
| 3181 | "id: 1", |
| 3182 | "event: done", |
| 3183 | `data: {"ok":true}`, |
| 3184 | "", |
| 3185 | }, "\n") |
| 3186 | |
| 3187 | err := decodeSSE(context.Background(), io.NopCloser(strings.NewReader(body)), func(SSEEvent) error { |
| 3188 | return wantErr |
| 3189 | }) |
| 3190 | if !errors.Is(err, wantErr) { |
| 3191 | t.Fatalf("decodeSSE() error = %v, want %v", err, wantErr) |
| 3192 | } |
| 3193 | } |
| 3194 | |
| 3195 | func TestDecodeSSEPreservesMultiLineData(t *testing.T) { |
| 3196 | t.Parallel() |