aboutsummaryrefslogtreecommitdiffstats
path: root/tests/integration/api_activitypub_person_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'tests/integration/api_activitypub_person_test.go')
-rw-r--r--tests/integration/api_activitypub_person_test.go60
1 files changed, 18 insertions, 42 deletions
diff --git a/tests/integration/api_activitypub_person_test.go b/tests/integration/api_activitypub_person_test.go
index 42a2a09072..9bb1f2736e 100644
--- a/tests/integration/api_activitypub_person_test.go
+++ b/tests/integration/api_activitypub_person_test.go
@@ -4,32 +4,31 @@
package integration
import (
- "context"
"fmt"
"net/http"
"net/http/httptest"
- "net/url"
"testing"
"code.gitea.io/gitea/models/db"
user_model "code.gitea.io/gitea/models/user"
"code.gitea.io/gitea/modules/activitypub"
"code.gitea.io/gitea/modules/setting"
+ "code.gitea.io/gitea/modules/test"
"code.gitea.io/gitea/routers"
+ "code.gitea.io/gitea/tests"
ap "github.com/go-ap/activitypub"
"github.com/stretchr/testify/assert"
)
func TestActivityPubPerson(t *testing.T) {
- setting.Federation.Enabled = true
- testWebRoutes = routers.NormalRoutes()
- defer func() {
- setting.Federation.Enabled = false
- testWebRoutes = routers.NormalRoutes()
- }()
+ defer tests.PrepareTestEnv(t)()
+ defer test.MockVariableValue(&setting.Federation.Enabled, true)()
+ defer test.MockVariableValue(&testWebRoutes, routers.NormalRoutes())()
+
+ t.Run("ExistingPerson", func(t *testing.T) {
+ defer tests.PrintCurrentTest(t)()
- onGiteaRun(t, func(*testing.T, *url.URL) {
userID := 2
username := "user2"
req := NewRequest(t, "GET", fmt.Sprintf("/api/v1/activitypub/user-id/%v", userID))
@@ -57,49 +56,26 @@ func TestActivityPubPerson(t *testing.T) {
assert.NotNil(t, pubKeyPem)
assert.Regexp(t, "^-----BEGIN PUBLIC KEY-----", pubKeyPem)
})
-}
-
-func TestActivityPubMissingPerson(t *testing.T) {
- setting.Federation.Enabled = true
- testWebRoutes = routers.NormalRoutes()
- defer func() {
- setting.Federation.Enabled = false
- testWebRoutes = routers.NormalRoutes()
- }()
-
- onGiteaRun(t, func(*testing.T, *url.URL) {
+ t.Run("MissingPerson", func(t *testing.T) {
+ defer tests.PrintCurrentTest(t)()
req := NewRequest(t, "GET", "/api/v1/activitypub/user-id/999999999")
resp := MakeRequest(t, req, http.StatusNotFound)
assert.Contains(t, resp.Body.String(), "user does not exist")
})
-}
-
-func TestActivityPubPersonInbox(t *testing.T) {
- setting.Federation.Enabled = true
- testWebRoutes = routers.NormalRoutes()
- defer func() {
- setting.Federation.Enabled = false
- testWebRoutes = routers.NormalRoutes()
- }()
-
- srv := httptest.NewServer(testWebRoutes)
- defer srv.Close()
+ t.Run("MissingPersonInbox", func(t *testing.T) {
+ defer tests.PrintCurrentTest(t)()
+ srv := httptest.NewServer(testWebRoutes)
+ defer srv.Close()
+ defer test.MockVariableValue(&setting.AppURL, srv.URL+"/")()
- onGiteaRun(t, func(*testing.T, *url.URL) {
- appURL := setting.AppURL
- setting.AppURL = srv.URL + "/"
- defer func() {
- setting.Database.LogSQL = false
- setting.AppURL = appURL
- }()
username1 := "user1"
- ctx := context.Background()
+ ctx := t.Context()
user1, err := user_model.GetUserByName(ctx, username1)
assert.NoError(t, err)
- user1url := fmt.Sprintf("%s/api/v1/activitypub/user-id/1#main-key", srv.URL)
+ user1url := srv.URL + "/api/v1/activitypub/user-id/1#main-key"
c, err := activitypub.NewClient(db.DefaultContext, user1, user1url)
assert.NoError(t, err)
- user2inboxurl := fmt.Sprintf("%s/api/v1/activitypub/user-id/2/inbox", srv.URL)
+ user2inboxurl := srv.URL + "/api/v1/activitypub/user-id/2/inbox"
// Signed request succeeds
resp, err := c.Post([]byte{}, user2inboxurl)