gitea源码

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. // Copyright 2024 The Gitea Authors. All rights reserved.
  2. // SPDX-License-Identifier: MIT
  3. package integration
  4. import (
  5. "net/http"
  6. "testing"
  7. auth_model "code.gitea.io/gitea/models/auth"
  8. "code.gitea.io/gitea/models/unittest"
  9. user_model "code.gitea.io/gitea/models/user"
  10. api "code.gitea.io/gitea/modules/structs"
  11. "code.gitea.io/gitea/tests"
  12. "github.com/stretchr/testify/assert"
  13. )
  14. func TestAPICompareBranches(t *testing.T) {
  15. defer tests.PrepareTestEnv(t)()
  16. user := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 2})
  17. // Login as User2.
  18. session := loginUser(t, user.Name)
  19. token := getTokenForLoggedInUser(t, session, auth_model.AccessTokenScopeWriteRepository)
  20. t.Run("CompareBranches", func(t *testing.T) {
  21. defer tests.PrintCurrentTest(t)()
  22. req := NewRequestf(t, "GET", "/api/v1/repos/user2/repo20/compare/add-csv...remove-files-b").AddTokenAuth(token)
  23. resp := MakeRequest(t, req, http.StatusOK)
  24. var apiResp *api.Compare
  25. DecodeJSON(t, resp, &apiResp)
  26. assert.Equal(t, 2, apiResp.TotalCommits)
  27. assert.Len(t, apiResp.Commits, 2)
  28. })
  29. t.Run("CompareCommits", func(t *testing.T) {
  30. defer tests.PrintCurrentTest(t)()
  31. req := NewRequestf(t, "GET", "/api/v1/repos/user2/repo20/compare/808038d2f71b0ab02099...c8e31bc7688741a5287f").AddTokenAuth(token)
  32. resp := MakeRequest(t, req, http.StatusOK)
  33. var apiResp *api.Compare
  34. DecodeJSON(t, resp, &apiResp)
  35. assert.Equal(t, 1, apiResp.TotalCommits)
  36. assert.Len(t, apiResp.Commits, 1)
  37. })
  38. }