Adding some tests for activity with non nil object

This commit is contained in:
Marius Orcsik 2017-10-05 13:28:34 +02:00
parent a3a6f15bd5
commit af31a36d90
No known key found for this signature in database
GPG key ID: C36D1EBE93A6EEAE
5 changed files with 52 additions and 34 deletions

View file

@ -100,7 +100,7 @@ type Activity struct {
// For instance, in the activity "John added a movie to his wishlist",
// the object of the activity is the movie added.
// When used within a Relationship describes the entity to which the subject is related.
Object *ObjectOrLink `jsonld:"object,omitempty"`
Object ObjectOrLink `jsonld:"object,omitempty"`
}
type (
@ -227,17 +227,17 @@ type Question struct {
Closed bool `jsonld:"closed,omitempty"`
}
func AcceptNew(id ObjectId, ob *ObjectOrLink) *Accept {
func AcceptNew(id ObjectId, ob ObjectOrLink) *Accept {
a := ActivityNew(id, AcceptType, ob)
o := Accept(*a)
return &o
}
func AddNew(id ObjectId, ob *ObjectOrLink) *Add {
func AddNew(id ObjectId, ob ObjectOrLink) *Add {
a := ActivityNew(id, AddType, ob)
o := Add(*a)
return &o
}
func AnnounceNew(id ObjectId, ob *ObjectOrLink) *Announce {
func AnnounceNew(id ObjectId, ob ObjectOrLink) *Announce {
a := ActivityNew(id, AnnounceType, ob)
o := Announce(*a)
return &o
@ -247,97 +247,97 @@ func ArriveNew(id ObjectId) *Arrive {
o := Arrive(*a)
return &o
}
func BlockNew(id ObjectId, ob *ObjectOrLink) *Block {
func BlockNew(id ObjectId, ob ObjectOrLink) *Block {
a := ActivityNew(id, BlockType, ob)
o := Block(*a)
return &o
}
func CreateNew(id ObjectId, ob *ObjectOrLink) *Create {
func CreateNew(id ObjectId, ob ObjectOrLink) *Create {
a := ActivityNew(id, CreateType, ob)
o := Create(*a)
return &o
}
func DeleteNew(id ObjectId, ob *ObjectOrLink) *Delete {
func DeleteNew(id ObjectId, ob ObjectOrLink) *Delete {
a := ActivityNew(id, DeleteType, ob)
o := Delete(*a)
return &o
}
func DislikeNew(id ObjectId, ob *ObjectOrLink) *Dislike {
func DislikeNew(id ObjectId, ob ObjectOrLink) *Dislike {
a := ActivityNew(id, DislikeType, ob)
o := Dislike(*a)
return &o
}
func FlagNew(id ObjectId, ob *ObjectOrLink) *Flag {
func FlagNew(id ObjectId, ob ObjectOrLink) *Flag {
a := ActivityNew(id, FlagType, ob)
o := Flag(*a)
return &o
}
func FollowNew(id ObjectId, ob *ObjectOrLink) *Follow {
func FollowNew(id ObjectId, ob ObjectOrLink) *Follow {
a := ActivityNew(id, FollowType, ob)
o := Follow(*a)
return &o
}
func IgnoreNew(id ObjectId, ob *ObjectOrLink) *Ignore {
func IgnoreNew(id ObjectId, ob ObjectOrLink) *Ignore {
a := ActivityNew(id, IgnoreType, ob)
o := Ignore(*a)
return &o
}
func InviteNew(id ObjectId, ob *ObjectOrLink) *Invite {
func InviteNew(id ObjectId, ob ObjectOrLink) *Invite {
a := ActivityNew(id, InviteType, ob)
o := Invite(*a)
return &o
}
func JoinNew(id ObjectId, ob *ObjectOrLink) *Join {
func JoinNew(id ObjectId, ob ObjectOrLink) *Join {
a := ActivityNew(id, JoinType, ob)
o := Join(*a)
return &o
}
func LeaveNew(id ObjectId, ob *ObjectOrLink) *Leave {
func LeaveNew(id ObjectId, ob ObjectOrLink) *Leave {
a := ActivityNew(id, LeaveType, ob)
o := Leave(*a)
return &o
}
func LikeNew(id ObjectId, ob *ObjectOrLink) *Like {
func LikeNew(id ObjectId, ob ObjectOrLink) *Like {
a := ActivityNew(id, LikeType, ob)
o := Like(*a)
return &o
}
func ListenNew(id ObjectId, ob *ObjectOrLink) *Listen {
func ListenNew(id ObjectId, ob ObjectOrLink) *Listen {
a := ActivityNew(id, ListenType, ob)
o := Listen(*a)
return &o
}
func MoveNew(id ObjectId, ob *ObjectOrLink) *Move {
func MoveNew(id ObjectId, ob ObjectOrLink) *Move {
a := ActivityNew(id, MoveType, ob)
o := Move(*a)
return &o
}
func OfferNew(id ObjectId, ob *ObjectOrLink) *Offer {
func OfferNew(id ObjectId, ob ObjectOrLink) *Offer {
a := ActivityNew(id, OfferType, ob)
o := Offer(*a)
return &o
}
func RejectNew(id ObjectId, ob *ObjectOrLink) *Reject {
func RejectNew(id ObjectId, ob ObjectOrLink) *Reject {
a := ActivityNew(id, RejectType, ob)
o := Reject(*a)
return &o
}
func ReadNew(id ObjectId, ob *ObjectOrLink) *Read {
func ReadNew(id ObjectId, ob ObjectOrLink) *Read {
a := ActivityNew(id, ReadType, ob)
o := Read(*a)
return &o
}
func RemoveNew(id ObjectId, ob *ObjectOrLink) *Remove {
func RemoveNew(id ObjectId, ob ObjectOrLink) *Remove {
a := ActivityNew(id, RemoveType, ob)
o := Remove(*a)
return &o
}
func TentativeRejectNew(id ObjectId, ob *ObjectOrLink) *TentativeReject {
func TentativeRejectNew(id ObjectId, ob ObjectOrLink) *TentativeReject {
a := ActivityNew(id, TentativeRejectType, ob)
o := TentativeReject(*a)
return &o
}
func TentativeAcceptNew(id ObjectId, ob *ObjectOrLink) *TentativeAccept {
func TentativeAcceptNew(id ObjectId, ob ObjectOrLink) *TentativeAccept {
a := ActivityNew(id, TentativeAcceptType, ob)
o := TentativeAccept(*a)
return &o
@ -347,17 +347,17 @@ func TravelNew(id ObjectId) *Travel {
o := Travel(*a)
return &o
}
func UndoNew(id ObjectId, ob *ObjectOrLink) *Undo {
func UndoNew(id ObjectId, ob ObjectOrLink) *Undo {
a := ActivityNew(id, UndoType, ob)
o := Undo(*a)
return &o
}
func UpdateNew(id ObjectId, ob *ObjectOrLink) *Accept {
func UpdateNew(id ObjectId, ob ObjectOrLink) *Accept {
a := ActivityNew(id, UpdateType, ob)
o := Accept(*a)
return &o
}
func ViewNew(id ObjectId, ob *ObjectOrLink) *View {
func ViewNew(id ObjectId, ob ObjectOrLink) *View {
a := ActivityNew(id, ViewType, ob)
o := View(*a)
return &o
@ -377,7 +377,7 @@ func ValidActivityType(_type ActivityVocabularyType) bool {
return false
}
func ActivityNew(id ObjectId, _type ActivityVocabularyType, ob *ObjectOrLink) *Activity {
func ActivityNew(id ObjectId, _type ActivityVocabularyType, ob ObjectOrLink) *Activity {
if !ValidActivityType(_type) {
_type = ActivityType
}

View file

@ -9,7 +9,7 @@ type CreateActivity struct {
CC *Actor
}
func CreateActivityNew(id ObjectId, o *ObjectOrLink) *CreateActivity {
func CreateActivityNew(id ObjectId, o ObjectOrLink) *CreateActivity {
c := CreateActivity{
Activity: CreateNew(id, o),
Published: time.Now(),

View file

@ -1,6 +1,7 @@
package activitypub
import (
"reflect"
"testing"
"time"
)
@ -20,4 +21,21 @@ func TestCreateActivityNew(t *testing.T) {
if now.Sub(c.Published).Round(time.Millisecond) != 0 {
t.Errorf("Published time '%v' different than expected '%v'", c.Published, now)
}
testValue = ObjectId("my:note")
n := ObjectNew("my:note", NoteType)
c1 := CreateActivityNew(testValue, n)
now = time.Now()
if c1.Activity.Id != testValue {
t.Errorf("Activity Id '%v' different than expected '%v'", c1.Activity.Id, testValue)
}
if c1.Activity.Type != CreateType {
t.Errorf("Activity Type '%v' different than expected '%v'", c1.Activity.Type, CreateType)
}
if now.Sub(c.Published).Round(time.Millisecond) != 0 {
t.Errorf("Published time '%v' different than expected '%v'", c1.Published, now)
}
if !reflect.DeepEqual(c1.Activity.Object.(*APObject), n) {
t.Errorf("Object \n'%#v' different than expected \n'%#v'", c1.Activity.Object, n)
}
}

View file

@ -62,18 +62,18 @@ func MentionNew(id ObjectId) *Mention {
return &Mention{Id: id, Type: MentionType}
}
func (l *Link) IsLink() bool {
func (l Link) IsLink() bool {
return l.Type == LinkType || ValidLinkType(l.Type)
}
func (l *Link) IsObject() bool {
func (l Link) IsObject() bool {
return l.Type == ObjectType || ValidObjectType(l.Type)
}
func (l *Mention) IsLink() bool {
func (l Mention) IsLink() bool {
return l.Type == MentionType || ValidLinkType(l.Type)
}
func (l *Mention) IsObject() bool {
func (l Mention) IsObject() bool {
return l.Type == ObjectType || ValidObjectType(l.Type)
}

View file

@ -79,11 +79,11 @@ type (
NaturalLanguageValue map[LangRef]string
)
func (o *APObject) IsLink() bool {
func (o APObject) IsLink() bool {
return ValidLinkType(o.Type)
}
func (o *APObject) IsObject() bool {
func (o APObject) IsObject() bool {
return ValidObjectType(o.Type)
}