e2e: the queues as tables - a deferred message on each, the empty one

- queue_readable_by_the_panel: the empty queue says "Nothing is waiting" (it
  read postqueue -p's "Mail queue is empty").
- expired_message_is_closed: while defer_transports holds the message,
  Outbound › Queue lists it with Postfix's reason ("deferred transport",
  qmgr_message.c) and a Details link to its row.
- inbound_relay_delivers_and_refuses (testInboundUpstreamDown): the message
  for an upstream that refuses is on Inbound › Queue with "connect to
  10.77.0.11[10.77.0.11]:2526: Connection refused", and not on Outbound ›
  Queue.

make e2e on the test server for 6db3704 plus this: 65 passed, 0 failed;
go vet + go test there: 26 packages.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
mix
2026-10-18 23:35:50 +03:00
co-authored by Claude Opus 5.5
parent 6edf8314bc
commit 853e0cabf3
3 changed files with 30 additions and 3 deletions
+3 -3
View File
@@ -214,10 +214,10 @@ func TestE2E(t *testing.T) {
t.Fatalf("GET /outbound/queue = %d", resp.StatusCode)
}
if strings.Contains(body, "Could not read the mail queue") {
t.Fatal("the panel could not run postqueue -p (queue directory permissions)")
t.Fatal("the panel could not run postqueue -j (queue directory permissions)")
}
if !strings.Contains(body, "Mail queue is empty") {
t.Fatalf("the queue page does not show postqueue's listing of an empty queue:\n%s", body)
if !strings.Contains(body, "Nothing is waiting. Every message has reached its receiving server.") {
t.Fatalf("the queue page does not say the queue is empty:\n%s", body)
}
})