WIP test for parsing the actor

forgejo-federated-star
erik 6 months ago
parent fec580597a
commit b981f2e5d5

@ -5,13 +5,22 @@ package activitypub
import (
"testing"
"code.gitea.io/gitea/models/activitypub"
)
type ActorData struct { // ToDo: is a mock struct a good idea?
schema string
userId string
path string
host string
port string // optional
}
func Test_ActorParser(t *testing.T) {
type testPair struct {
item string
want ActorData
wantErr error
item string
want ActorData
}
tests := map[string]testPair{
@ -19,25 +28,37 @@ func Test_ActorParser(t *testing.T) {
item: "",
want: ActorData{},
},
"withActorID": {
"withValidActorID": {
item: "https://repo.prod.meissa.de/api/v1/activitypub/user-id/1",
want: ActorData{
schema: "https://",
schema: "https",
userId: "1",
path: "/api/v1/activitypub/user-id/1",
host: "repo.prod.meissa.de",
port: "",
},
},
"withInvalidActorID": {
item: "https://repo.prod.meissa.de/api/activitypub/user-id/1",
want: ActorData{
schema: "https",
userId: "1",
path: "/api/v1/activitypub/user-id/1",
host: "repo.prod.meissa.de",
port: "",
},
},
}
for name, tt := range tests {
for name, _ := range tests {
t.Run(name, func(t *testing.T) {
_, err := tt.want.parseActor(tests[name].item)
_, err := activitypub.ParseActorData(tests[name].item)
if (err != nil || tt.wantErr != nil) && tt.wantErr.Error() != err.Error() {
t.Errorf("parseActor() error = \"%v\", wantErr \"%v\"", err, tt.wantErr)
if err != nil {
t.Errorf("parseActor() error = \"%v\"", err)
return
}
})
}
}

Loading…
Cancel
Save