From e578b7d058f6a3acb2bfd7b02824f0e6cb918baf Mon Sep 17 00:00:00 2001 From: renzhiyuan <465386466@qq.com> Date: Thu, 27 Aug 2026 16:19:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=96=87=E4=BB=B6:=20server?= =?UTF-8?q?=5Ftb=5FLinkedMall/internal/test/example=5Ftest.go?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../internal/test/example_test.go | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 server_tb_LinkedMall/internal/test/example_test.go diff --git a/server_tb_LinkedMall/internal/test/example_test.go b/server_tb_LinkedMall/internal/test/example_test.go new file mode 100644 index 0000000..c7cc291 --- /dev/null +++ b/server_tb_LinkedMall/internal/test/example_test.go @@ -0,0 +1,59 @@ +package test + +import ( + "bytes" + "encoding/json" + "net/http" + "net/http/httptest" + "testing" + + "github.com/gofiber/fiber/v2" + + "server_tb_LinkedMall/internal/config" + "server_tb_LinkedMall/internal/entities" + "server_tb_LinkedMall/internal/router" + "server_tb_LinkedMall/internal/service" +) + +// setupTestApp 初始化测试应用 +func setupTestApp(t *testing.T) (*fiber.App, *service.LinkedMallService) { + t.Helper() + + cfg := &config.Config{ + ServerPort: "8080", + AccessKeyId: "test-ak", + AccessKeySecret: "test-sk", + RegionId: "cn-zhangjiakou", + Endpoint: "linkedmall.cn-zhangjiakou.aliyuncs.com", + BasePath: "/opensaas-s2b/opensaas-s2b-biz-trade/v2", + DefaultPurchaserId: "test-purchaser-id", + } + + svc, err := service.NewLinkedMallService(cfg) + if err != nil { + t.Skipf("跳过测试(无法初始化服务,可能需要有效AK/SK): %v", err) + } + + app := fiber.New() + router.SetupRouter(app, svc) + return app, svc +} + +// performRequest 执行测试HTTP请求 +func performRequest(app *fiber.App, method, path string, body interface{}) *http.Response { + var reqBody []byte + if body != nil { + reqBody, _ = json.Marshal(body) + } + + req := httptest.NewRequest(method, path, bytes.NewReader(reqBody)) + req.Header.Set("Content-Type", "application/json") + + resp, _ := app.Test(req, -1) + return resp +} + +// TestHealthCheck 健康检查测试 +func TestHealthCheck(t *testing.T) { + app, _ := setupTestApp(t) + resp \ No newline at end of file