/
advanceddev
/
license-server
Обзор
Документация
Войти
/
advanceddev
/
license-server
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
2
CI/CD
Аналитика
Безопасность
master
internal/middleware/admin_auth_test.go
91 строка
2 KB
advanceddev
fix: security & reliability hardening for rate limiter, auth, and audit
10 авг 2026, 23:52
Не верифицирован
10 авг 2026, 23:52
aef6073
Код
Авторство
О чём код?
package middleware import ( "net/http" "net/http/httptest" "testing" ) func TestAdminAuth_ValidKey(t *testing.T) { next := http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) { w.WriteHeader(http.StatusOK) }) req := httptest.NewRequest(http.MethodGet, "/admin", nil) req.Header.Set("Authorization", "Bearer my-secret-key") w := httptest.NewRecorder() h := AdminAuth("my-secret-key")(next) h.ServeHTTP(w, req) if w.Code != http.StatusOK { t.Errorf("expected 200, got %d", w.Code) } } func TestAdminAuth_InvalidKey(t *testing.T) { next := http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) { w.WriteHeader(http.StatusOK) }) req := httptest.NewRequest(http.MethodGet, "/admin", nil) req.Header.Set("Authorization", "Bearer wrong-key") w := httptest.NewRecorder() h := AdminAuth("my-secret-key")(next) h.ServeHTTP(w, req) if w.Code != http.StatusUnauthorized { t.Errorf("expected 401, got %d", w.Code) } } func TestAdminAuth_MissingBearerPrefix(t *testing.T) { next := http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) { w.WriteHeader(http.StatusOK) }) req := httptest.NewRequest(http.MethodGet, "/admin", nil) req.Header.Set("Authorization", "my-secret-key") w := httptest.NewRecorder() h := AdminAuth("my-secret-key")(next) h.ServeHTTP(w, req) if w.Code != http.StatusUnauthorized { t.Errorf("expected 401, got %d", w.Code) } } func TestAdminAuth_EmptyToken(t *testing.T) { next := http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) { w.WriteHeader(http.StatusOK) }) req := httptest.NewRequest(http.MethodGet, "/admin", nil) req.Header.Set("Authorization", "Bearer ") w := httptest.NewRecorder() h := AdminAuth("my-secret-key")(next) h.ServeHTTP(w, req) if w.Code != http.StatusUnauthorized { t.Errorf("expected 401, got %d", w.Code) } } func TestAdminAuth_NoAuthorizationHeader(t *testing.T) { next := http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) { w.WriteHeader(http.StatusOK) }) req := httptest.NewRequest(http.MethodGet, "/admin", nil) w := httptest.NewRecorder() h := AdminAuth("my-secret-key")(next) h.ServeHTTP(w, req) if w.Code != http.StatusUnauthorized { t.Errorf("expected 401, got %d", w.Code) } }