1
0
Fork 0
mirror of https://codeberg.org/forgejo/forgejo.git synced 2024-11-27 09:11:53 -05:00
forgejo/models/activitypub/actor_test.go

60 lines
1.2 KiB
Go

// Copyright 2023 The forgejo Authors. All rights reserved.
// SPDX-License-Identifier: MIT
package activitypub
import (
"testing"
)
func TestActorParserEmpty(t *testing.T) {
item := ""
want := ActorID{}
got, _ := ParseActorID(item)
if got != want {
t.Errorf("ParseActorID returned non empty actor id for empty input.")
}
}
func TestActorParserValid(t *testing.T) {
item := "https://repo.prod.meissa.de/api/v1/activitypub/user-id/1"
want := ActorID{
schema: "https",
userId: "1",
path: "/api/v1/activitypub/user-id/1",
host: "repo.prod.meissa.de",
port: "",
}
got, _ := ParseActorID(item)
if got != want {
t.Errorf("Test Fail: ParseActorID did not return want: %v.", want)
}
}
func TestValidateValid(t *testing.T) {
item := ActorID{
schema: "https",
userId: "1",
path: "/api/v1/activitypub/user-id/1",
host: "repo.prod.meissa.de",
port: "",
}
if err := item.Validate(); err != nil {
t.Errorf("Test Fail: Validating actor returned non nil with valid input.")
}
}
func TestValidateInvalid(t *testing.T) {
item := "123456"
actor, _ := ParseActorID(item)
if err := actor.Validate(); err == nil {
t.Errorf("Test Fail: Validating actor returned nil with false input.")
}
}