Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 

42 righe
1.8 KiB

  1. package router
  2. import (
  3. "net/http"
  4. "strings"
  5. "testing"
  6. "github.com/gin-gonic/gin"
  7. "github.com/stretchr/testify/require"
  8. )
  9. func TestKlingAipingNativeRoutesDoNotFallThroughToOpenAIVideoRoutes(t *testing.T) {
  10. gin.SetMode(gin.TestMode)
  11. r := gin.New()
  12. SetVideoRouter(r)
  13. requireHandlerContains(t, r, http.MethodPost, "/v1/videos/text2video", "KlingAipingNativeTaskSubmit")
  14. requireHandlerContains(t, r, http.MethodGet, "/v1/videos/text2video/:task_id", "KlingAipingNativeTaskFetch")
  15. requireHandlerContains(t, r, http.MethodGet, "/v1/videos/text2video", "KlingAipingNativeTaskList")
  16. requireHandlerContains(t, r, http.MethodPost, "/v1/videos/video-extend", "KlingAipingNativeTaskSubmit")
  17. requireHandlerContains(t, r, http.MethodGet, "/v1/videos/video-extend/:task_id", "KlingAipingNativeTaskFetch")
  18. requireHandlerContains(t, r, http.MethodGet, "/v1/videos/video-extend", "KlingAipingNativeTaskList")
  19. requireHandlerContains(t, r, http.MethodGet, "/v1/general/advanced-presets-elements", "KlingAipingNativeProxy")
  20. requireHandlerContains(t, r, http.MethodPost, "/v1/general/delete-advanced-elements", "KlingAipingNativeProxy")
  21. requireHandlerContains(t, r, http.MethodPost, "/v1/general/delete-voices", "KlingAipingNativeProxy")
  22. requireHandlerContains(t, r, http.MethodPost, "/v1/videos", "RelayTask")
  23. requireHandlerContains(t, r, http.MethodGet, "/v1/videos/:task_id", "RelayTaskFetch")
  24. }
  25. func requireHandlerContains(t *testing.T, r *gin.Engine, method, path, want string) {
  26. t.Helper()
  27. for _, route := range r.Routes() {
  28. if route.Method != method || route.Path != path {
  29. continue
  30. }
  31. require.Truef(t, strings.Contains(route.Handler, want), "handler for %s %s = %s, want containing %s", method, path, route.Handler, want)
  32. return
  33. }
  34. t.Fatalf("route not found: %s %s", method, path)
  35. }