fix(tests): handle all Close() and Decode() errors across integration tests

Replace all unhandled resp.Body.Close() calls throughout the test suite:

- Deferred calls: replace 'defer VAR.Body.Close()' with a closure that explicitly
  discards the error via 'defer func(Body io.ReadCloser) { _ = Body.Close() }(VAR.Body)'
- Immediate calls: replace 'VAR.Body.Close()' with '_ = VAR.Body.Close()'

Replace all unhandled json.NewDecoder(VAR.Body).Decode(&x) calls with error capture
and require.NoError assertion. Files using httptest.ResponseRecorder (collections_preview,
processing_issues) use 'err :=' declaration; suite-style tests (scanner_integration,
dashboard_integration) use s.T() instead of t.
This commit is contained in:
2026-04-21 20:33:05 -04:00
parent 8baecad379
commit a6700f73e0
28 changed files with 1065 additions and 414 deletions
@@ -25,8 +25,9 @@ func TestScanSettings_GetSettings(t *testing.T) {
assert.Equal(t, http.StatusOK, resp.StatusCode)
var response map[string]interface{}
json.NewDecoder(resp.Body).Decode(&response)
resp.Body.Close()
err = json.NewDecoder(resp.Body).Decode(&response)
require.NoError(t, err)
_ = resp.Body.Close()
assert.Contains(t, response, "scan_poll_interval_seconds")
assert.Contains(t, response, "auto_scan_enabled")
@@ -63,8 +64,9 @@ func TestScanSettings_UpdateSettings(t *testing.T) {
assert.Equal(t, http.StatusOK, resp.StatusCode)
var response map[string]interface{}
json.NewDecoder(resp.Body).Decode(&response)
resp.Body.Close()
err = json.NewDecoder(resp.Body).Decode(&response)
require.NoError(t, err)
_ = resp.Body.Close()
assert.Equal(t, float64(45), response["scan_poll_interval_seconds"])
assert.Equal(t, true, response["auto_scan_enabled"])
@@ -74,8 +76,9 @@ func TestScanSettings_UpdateSettings(t *testing.T) {
getResp, _ := client.Do(getReq)
var getResponse map[string]interface{}
json.NewDecoder(getResp.Body).Decode(&getResponse)
getResp.Body.Close()
err = json.NewDecoder(getResp.Body).Decode(&getResponse)
require.NoError(t, err)
_ = getResp.Body.Close()
assert.Equal(t, float64(45), getResponse["scan_poll_interval_seconds"])
})
@@ -99,8 +102,9 @@ func TestScanSettings_UpdateSettings(t *testing.T) {
assert.Equal(t, http.StatusOK, resp.StatusCode)
var response map[string]interface{}
json.NewDecoder(resp.Body).Decode(&response)
resp.Body.Close()
err = json.NewDecoder(resp.Body).Decode(&response)
require.NoError(t, err)
_ = resp.Body.Close()
assert.Equal(t, false, response["auto_scan_enabled"])
})