1
0
Fork 0
mirror of https://codeberg.org/forgejo/forgejo.git synced 2024-12-22 12:54:53 -05:00

WIP test for parsing the actor

This commit is contained in:
erik 2023-11-16 16:03:05 +01:00 committed by Michael Jerger
parent 0c367070af
commit 7193c0bd9b

View file

@ -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
}
})
}
}