diff --git a/client_test.go b/client_test.go index 8ec55f0..4de3d50 100644 --- a/client_test.go +++ b/client_test.go @@ -1268,90 +1268,6 @@ func TestHTTPClientWithZStandardDictionary(t *testing.T) { } } -func TestHTTPClientConnectionClosedEarly(t *testing.T) { - var ( - rotatorSettings = NewRotatorSettings() - errWg sync.WaitGroup - err error - ) - - // init test HTTP endpoint - server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - fileBytes, err := os.ReadFile(path.Join("testdata", "2MB.jpg")) - if err != nil { - t.Fatal(err) - } - - time.Sleep(2 * time.Second) - - w.WriteHeader(http.StatusOK) - w.Write(fileBytes) - })) - defer server.Close() - - rotatorSettings.OutputDirectory, err = os.MkdirTemp("", "warc-tests-") - if err != nil { - t.Fatal(err) - } - defer os.RemoveAll(rotatorSettings.OutputDirectory) - - rotatorSettings.Prefix = "TESTEARLYCLOSE" - rotatorSettings.Compression = "GZIP" - - // init the HTTP client responsible for recording HTTP(s) requests / responses - httpClient, err := NewWARCWritingHTTPClient(HTTPClientSettings{ - RotatorSettings: rotatorSettings, - TempDir: rotatorSettings.OutputDirectory + "/temp", - }) - if err != nil { - t.Fatalf("Unable to init WARC writing HTTP client: %s", err) - } - - httpClient.Timeout = 1 * time.Second - - errWg.Add(1) - go func() { - defer errWg.Done() - for err := range httpClient.ErrChan { - t.Errorf("Error writing to WARC: %s", err.Err.Error()) - } - }() - - req, err := http.NewRequest("GET", server.URL, nil) - if err != nil { - t.Fatal(err) - } - - resp, err := httpClient.Do(req) - if err != nil { - t.Error(err) - } - defer resp.Body.Close() - - io.Copy(io.Discard, resp.Body) - - httpClient.Close() - - // Check if there are any file left in the temp directory - files, err := filepath.Glob(rotatorSettings.OutputDirectory + "/temp/*") - if err != nil { - t.Fatal(err) - } - - if len(files) > 0 { - t.Fatalf("Expected no files in temp directory, got %d", len(files)) - } - - files, err = filepath.Glob(rotatorSettings.OutputDirectory + "/*") - if err != nil { - t.Fatal(err) - } - - for _, path := range files { - testFileSingleHashCheck(t, path, "sha1:UIRWL5DFIPQ4MX3D3GFHM2HCVU3TZ6I3", []string{"26872"}, 1) - } -} - func setupIPv4Server(t *testing.T) (string, func()) { listener, err := net.Listen("tcp4", "127.0.0.1:0") if err != nil {