feat: 建立可观测性、容量与恢复验证基线
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
package middleware
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"testing"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
func TestRequestIDMiddlewarePassesThrough(t *testing.T) {
|
||||
gin.SetMode(gin.TestMode)
|
||||
rec := httptest.NewRecorder()
|
||||
c, _ := gin.CreateTestContext(rec)
|
||||
c.Request = httptest.NewRequest(http.MethodGet, "/", nil)
|
||||
c.Request.Header.Set(RequestIDHeader, "request-1")
|
||||
RequestIDMiddleware()(c)
|
||||
if rec.Header().Get(RequestIDHeader) != "request-1" {
|
||||
t.Fatalf("header = %s", rec.Header().Get(RequestIDHeader))
|
||||
}
|
||||
if RequestID(c) != "request-1" {
|
||||
t.Fatalf("request id = %s", RequestID(c))
|
||||
}
|
||||
}
|
||||
|
||||
func TestRequestIDMiddlewareGenerates(t *testing.T) {
|
||||
gin.SetMode(gin.TestMode)
|
||||
rec := httptest.NewRecorder()
|
||||
c, _ := gin.CreateTestContext(rec)
|
||||
c.Request = httptest.NewRequest(http.MethodGet, "/", nil)
|
||||
RequestIDMiddleware()(c)
|
||||
if RequestID(c) == "" {
|
||||
t.Fatal("should generate request id")
|
||||
}
|
||||
}
|
||||
|
||||
func TestRedactSensitiveQuery(t *testing.T) {
|
||||
got := RedactSensitiveQuery("access_token=abc&password=secret&roomId=1")
|
||||
if got != "access_token=%5Bredacted%5D&password=%5Bredacted%5D&roomId=1" {
|
||||
t.Fatalf("redacted query = %s", got)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user