7327b66174
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
32 lines
1.1 KiB
Go
32 lines
1.1 KiB
Go
package lkgateway
|
|
|
|
import (
|
|
"bytes"
|
|
"strings"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
// Карточка недоставленной заявки: плашка с причиной и кнопка «Отправить повторно».
|
|
func TestClaimRenderSendFailure(t *testing.T) {
|
|
a, err := newAdmin()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
var b bytes.Buffer
|
|
data := claimData{page: page{Title: "Заявка"}, Claim: ClaimView{ID: "7f1c5cfb-3552-452a-9738-074f47a6a770", Status: "awaiting_decision"},
|
|
Fail: &SendFailure{PackageID: "187", Code: "ERRORXML_UPLOAD_FAILED", At: time.Now(), Attempts: 1}}
|
|
if err := a.claim.ExecuteTemplate(&b, "layout", data); err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
s := b.String()
|
|
for _, want := range []string{"Перевод не доставлен в НРД", "контур НРД не принял пакет", "/resend", "Отправить повторно"} {
|
|
if !strings.Contains(s, want) {
|
|
t.Fatalf("нет %q", want)
|
|
}
|
|
}
|
|
if strings.Contains(s, "delete-draft") {
|
|
t.Fatal("ушедшую в DEPO заявку (awaiting_decision) удалять нельзя")
|
|
}
|
|
}
|