Тест: карточка недоставленной заявки
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
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) удалять нельзя")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user