Use compose.dev.yaml and compose.prod.yaml with fixed Go cache mounts, block sudo make dev, build Air outside app/tmp for rootless Docker, soften English spam checks, and simplify contact error copy. Co-authored-by: Cursor <cursoragent@cursor.com>
31 lines
628 B
Go
31 lines
628 B
Go
package contactcheck
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestSpamHoneypot(t *testing.T) {
|
|
if !SpamHoneypot("filled") {
|
|
t.Fatal("expected honeypot trip")
|
|
}
|
|
if SpamHoneypot(" ") {
|
|
t.Fatal("expected empty honeypot")
|
|
}
|
|
}
|
|
|
|
func TestFormFilledTooFast(t *testing.T) {
|
|
now := time.Unix(1_000_000, 0)
|
|
seen := now.Add(-MinFormFillDuration).Unix()
|
|
|
|
if FormFilledTooFast(0, now) {
|
|
t.Error("missing seen time should be allowed")
|
|
}
|
|
if !FormFilledTooFast(seen+1, now) {
|
|
t.Error("submit before min duration should be too fast")
|
|
}
|
|
if FormFilledTooFast(seen, now) {
|
|
t.Error("submit at min duration should be allowed")
|
|
}
|
|
}
|