Files
pastebin/main_test.go
T
2026-04-21 11:47:56 +02:00

28 lines
761 B
Go

package main
import (
"net/http"
"net/http/httptest"
"testing"
"github.com/stretchr/testify/assert"
)
func TestSecurityHeadersMiddleware(t *testing.T) {
nextHandler := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusOK)
})
middleware := securityHeadersMiddleware(nextHandler)
req := httptest.NewRequest("GET", "/", nil)
rr := httptest.NewRecorder()
middleware.ServeHTTP(rr, req)
assert.Equal(t, "max-age=63072000; includeSubDomains", rr.Header().Get("Strict-Transport-Security"))
assert.Equal(t, "nosniff", rr.Header().Get("X-Content-Type-Options"))
assert.Equal(t, "DENY", rr.Header().Get("X-Frame-Options"))
assert.Contains(t, rr.Header().Get("Content-Security-Policy"), "default-src 'self'")
}