更新依赖

This commit is contained in:
dragon
2025-11-14 17:28:51 +08:00
parent 4ee8f4ed69
commit d67dbf88ae
7 changed files with 62 additions and 10 deletions

View File

@@ -12,7 +12,6 @@ import (
"go.uber.org/zap"
"gopkg.d7z.net/gitea-pages/pkg"
"gopkg.d7z.net/middleware/kv"
"gopkg.d7z.net/middleware/tools"
)
type TestServer struct {
@@ -43,7 +42,7 @@ func NewTestServer(domain string) *TestServer {
domain,
"gh-pages",
memoryKV,
tools.NewPrefixKV(memoryKV, "cache"),
memoryKV.Child("cache"),
0,
func(w http.ResponseWriter, r *http.Request, err error) {
if errors.Is(err, os.ErrNotExist) {

View File

@@ -56,3 +56,55 @@ routes:
assert.NoError(t, err)
assert.Equal(t, "POST /api/v1/fetch", string(data))
}
func Benchmark_JS_Request(b *testing.B) {
// 初始化服务器(在基准测试外执行,避免计入时间)
server := core.NewDefaultTestServer()
defer server.Close()
server.AddFile("org1/repo1/gh-pages/index.html", "hello world")
server.AddFile("org1/repo1/gh-pages/index.js", `response.write(request.method+' /'+request.path)`)
server.AddFile("org1/repo1/gh-pages/.pages.yaml", `
routes:
- path: "api/v1/**"
qjs:
exec: "index.js"
`)
b.ResetTimer() // 重置计时器,只测量下面的操作
b.Run("OpenFile_root", func(b *testing.B) {
for i := 0; i < b.N; i++ {
data, _, err := server.OpenFile("https://org1.example.com/repo1/")
if err != nil {
b.Fatal(err)
}
if string(data) != "hello world" {
b.Fatalf("expected 'hello world', got '%s'", string(data))
}
}
})
b.Run("OpenFile_api", func(b *testing.B) {
for i := 0; i < b.N; i++ {
data, _, err := server.OpenFile("https://org1.example.com/repo1/api/v1/fetch")
if err != nil {
b.Fatal(err)
}
if string(data) != "GET /api/v1/fetch" {
b.Fatalf("expected 'GET /api/v1/fetch', got '%s'", string(data))
}
}
})
b.Run("OpenRequest_post", func(b *testing.B) {
for i := 0; i < b.N; i++ {
data, _, err := server.OpenRequest(http.MethodPost, "https://org1.example.com/repo1/api/v1/fetch", nil)
if err != nil {
b.Fatal(err)
}
if string(data) != "POST /api/v1/fetch" {
b.Fatalf("expected 'POST /api/v1/fetch', got '%s'", string(data))
}
}
})
}