Files
evening_detective_server/internal/app/legal_docs_test.go
T
2026-10-03 02:38:17 +07:00

63 lines
1.4 KiB
Go

package app
import (
"context"
"strings"
"testing"
proto "evening_detective_server/proto"
)
func TestGetLegalDocs(t *testing.T) {
s := &server{}
tests := []struct {
name string
call func() string
wantPart string
}{
{
name: "GetTerms отдаёт Пользовательское соглашение",
call: func() string {
rsp, err := s.GetTerms(context.Background(), &proto.GetTermsReq{})
if err != nil {
t.Fatalf("GetTerms error: %v", err)
}
return rsp.Text
},
wantPart: "СОГЛАШЕНИЕ",
},
{
name: "GetPrivacy отдаёт Политику конфиденциальности",
call: func() string {
rsp, err := s.GetPrivacy(context.Background(), &proto.GetPrivacyReq{})
if err != nil {
t.Fatalf("GetPrivacy error: %v", err)
}
return rsp.Text
},
wantPart: "КОНФИДЕНЦИАЛЬНОСТИ",
},
{
name: "GetConsent отдаёт текст согласия на обработку ПДн",
call: func() string {
rsp, err := s.GetConsent(context.Background(), &proto.GetConsentReq{})
if err != nil {
t.Fatalf("GetConsent error: %v", err)
}
return rsp.Text
},
wantPart: "СОГЛАСИЕ",
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
text := tt.call()
if !strings.Contains(text, tt.wantPart) {
t.Errorf("текст документа не содержит %q", tt.wantPart)
}
})
}
}