17 lines
633 B
Go
17 lines
633 B
Go
package reliable
|
|
|
|
import "testing"
|
|
|
|
func TestPublicRecordValidation(t *testing.T) {
|
|
if _, err := NormalizePublicRecord(Record{Subject: "email", Headers: map[string][]string{HeaderTransportMessageID: {"forged"}}}); err == nil {
|
|
t.Fatal("reserved header accepted")
|
|
}
|
|
if _, err := NormalizePublicRecord(Record{}); err == nil {
|
|
t.Fatal("empty subject accepted")
|
|
}
|
|
r, err := NormalizePublicRecord(Record{Subject: " email ", MessageID: " id ", Headers: map[string][]string{"TRACE": {" trace "}}})
|
|
if err != nil || r.Subject != "email" || r.MessageID != "id" || HeaderValue(r.Headers, "trace") != "trace" {
|
|
t.Fatal(r, err)
|
|
}
|
|
}
|