test(01-02): add failing tests for oversized body (413) - RED
- TestWebhookHandler_OversizedBody: POST /webhook with >1MB body expects 413 - TestTagsHandler_OversizedBody: POST /api/tags with >1MB body expects 413 - TestTagAssignmentHandler_OversizedBody: PUT /api/tag-assignments with >1MB body expects 413
This commit is contained in:
@@ -613,6 +613,46 @@ func TestGetUpdates_IncludesTag(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestWebhookHandler_OversizedBody(t *testing.T) {
|
||||||
|
// Generate a body that exceeds 1 MB (maxBodyBytes = 1<<20 = 1,048,576 bytes)
|
||||||
|
oversized := make([]byte, 1<<20+1)
|
||||||
|
for i := range oversized {
|
||||||
|
oversized[i] = 'x'
|
||||||
|
}
|
||||||
|
req := httptest.NewRequest(http.MethodPost, "/webhook", bytes.NewReader(oversized))
|
||||||
|
rec := httptest.NewRecorder()
|
||||||
|
diun.WebhookHandler(rec, req)
|
||||||
|
if rec.Code != http.StatusRequestEntityTooLarge {
|
||||||
|
t.Errorf("expected 413 for oversized body, got %d", rec.Code)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestTagsHandler_OversizedBody(t *testing.T) {
|
||||||
|
oversized := make([]byte, 1<<20+1)
|
||||||
|
for i := range oversized {
|
||||||
|
oversized[i] = 'x'
|
||||||
|
}
|
||||||
|
req := httptest.NewRequest(http.MethodPost, "/api/tags", bytes.NewReader(oversized))
|
||||||
|
rec := httptest.NewRecorder()
|
||||||
|
diun.TagsHandler(rec, req)
|
||||||
|
if rec.Code != http.StatusRequestEntityTooLarge {
|
||||||
|
t.Errorf("expected 413 for oversized body, got %d", rec.Code)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestTagAssignmentHandler_OversizedBody(t *testing.T) {
|
||||||
|
oversized := make([]byte, 1<<20+1)
|
||||||
|
for i := range oversized {
|
||||||
|
oversized[i] = 'x'
|
||||||
|
}
|
||||||
|
req := httptest.NewRequest(http.MethodPut, "/api/tag-assignments", bytes.NewReader(oversized))
|
||||||
|
rec := httptest.NewRecorder()
|
||||||
|
diun.TagAssignmentHandler(rec, req)
|
||||||
|
if rec.Code != http.StatusRequestEntityTooLarge {
|
||||||
|
t.Errorf("expected 413 for oversized body, got %d", rec.Code)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func TestUpdateEvent_PreservesTagOnUpsert(t *testing.T) {
|
func TestUpdateEvent_PreservesTagOnUpsert(t *testing.T) {
|
||||||
diun.UpdatesReset()
|
diun.UpdatesReset()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user