Changes
3 changed files (+0/-1094)
-
activity.go (deleted)
-
@@ -1,374 +0,0 @@package activitypub import ( as "github.com/go-ap/activitystreams" ) // Activity is a subtype of Object that describes some form of action that may happen, // is currently happening, or has already happened. // The Activity type itself serves as an abstract base type for all types of activities. // It is important to note that the Activity type itself does not carry any specific semantics // about the kind of action being taken. type Activity struct { as.Activity } // IntransitiveActivity Instances of IntransitiveActivity are a subtype of Activity representing intransitive actions. // The object property is therefore inappropriate for these activities. type IntransitiveActivity struct { as.IntransitiveActivity } type ( // Accept indicates that the actor accepts the object. The target property can be used in certain circumstances to indicate // the context into which the object has been accepted. Accept = Activity // Add indicates that the actor has added the object to the target. If the target property is not explicitly specified, // the target would need to be determined implicitly by context. // The origin can be used to identify the context from which the object originated. Add = Activity // Announce indicates that the actor is calling the target's attention the object. // The origin typically has no defined meaning. Announce = Activity // Arrive is an IntransitiveActivity that indicates that the actor has arrived at the location. // The origin can be used to identify the context from which the actor originated. // The target typically has no defined meaning. Arrive = IntransitiveActivity // Block indicates that the actor is blocking the object. Blocking is a stronger form of Ignore. // The typical use is to support social systems that allow one user to block activities or content of other users. // The target and origin typically have no defined meaning. Block = Ignore // Create indicates that the actor has created the object. Create = Activity // Delete indicates that the actor has deleted the object. // If specified, the origin indicates the context from which the object was deleted. Delete = Activity // Dislike indicates that the actor dislikes the object. Dislike = Activity // Flag indicates that the actor is "flagging" the object. // Flagging is defined in the sense common to many social platforms as reporting content as being // inappropriate for any number of reasons. Flag = Activity // Follow indicates that the actor is "following" the object. Following is defined in the sense typically used within // Social systems in which the actor is interested in any activity performed by or on the object. // The target and origin typically have no defined meaning. Follow = Activity // Ignore indicates that the actor is ignoring the object. The target and origin typically have no defined meaning. Ignore = Activity // Invite is a specialization of Offer in which the actor is extending an invitation for the object to the target. Invite = Offer // Join indicates that the actor has joined the object. The target and origin typically have no defined meaning. Join = Activity // Leave indicates that the actor has left the object. The target and origin typically have no meaning. Leave = Activity // Like indicates that the actor likes, recommends or endorses the object. // The target and origin typically have no defined meaning. Like = Activity // Listen inherits all properties from Activity. Listen = Activity // Move indicates that the actor has moved object from origin to target. // If the origin or target are not specified, either can be determined by context. Move = Activity // Offer indicates that the actor is offering the object. // If specified, the target indicates the entity to which the object is being offered. Offer = Activity // Reject indicates that the actor is rejecting the object. The target and origin typically have no defined meaning. Reject = Activity // Read indicates that the actor has read the object. Read = Activity // Remove indicates that the actor is removing the object. If specified, // the origin indicates the context from which the object is being removed. Remove = Activity // TentativeReject is a specialization of Reject in which the rejection is considered tentative. TentativeReject = Reject // TentativeAccept is a specialization of Accept indicating that the acceptance is tentative. TentativeAccept = Accept // Travel indicates that the actor is traveling to target from origin. // Travel is an IntransitiveObject whose actor specifies the direct object. // If the target or origin are not specified, either can be determined by context. Travel = IntransitiveActivity // Undo indicates that the actor is undoing the object. In most cases, the object will be an Activity describing // some previously performed action (for instance, a person may have previously "liked" an article but, // for whatever reason, might choose to undo that like at some later point in time). // The target and origin typically have no defined meaning. Undo = Activity // Update indicates that the actor has updated the object. Note, however, that this vocabulary does not define a mechanism // for describing the actual set of modifications made to object. // The target and origin typically have no defined meaning. Update = Activity // View indicates that the actor has viewed the object. View = Activity ) // Question represents a question being asked. Question objects are an extension of IntransitiveActivity. // That is, the Question object is an Activity, but the direct object is the question // itself and therefore it would not contain an object property. // Either of the anyOf and oneOf properties may be used to express possible answers, // but a Question object must not have both properties. type Question = as.Question // AcceptNew initializes an Accept activity func AcceptNew(id as.ObjectID, ob as.Item) *Accept { return ActivityNew(id, as.AcceptType, ob) } // AddNew initializes an Add activity func AddNew(id as.ObjectID, ob as.Item, trgt as.Item) *Add { a := ActivityNew(id, as.AddType, ob) a.Target = trgt return a } // AnnounceNew initializes an Announce activity func AnnounceNew(id as.ObjectID, ob as.Item) *Announce { return ActivityNew(id, as.AnnounceType, ob) } // ArriveNew initializes an Arrive activity func ArriveNew(id as.ObjectID) *Arrive { return IntransitiveActivityNew(id, as.ArriveType) } // BlockNew initializes a Block activity func BlockNew(id as.ObjectID, ob as.Item) *Block { return ActivityNew(id, as.BlockType, ob) } // CreateNew initializes a Create activity func CreateNew(id as.ObjectID, ob as.Item) *Create { return ActivityNew(id, as.CreateType, ob) } // DeleteNew initializes a Delete activity func DeleteNew(id as.ObjectID, ob as.Item) *Delete { return ActivityNew(id, as.DeleteType, ob) } // DislikeNew initializes a Dislike activity func DislikeNew(id as.ObjectID, ob as.Item) *Dislike { return ActivityNew(id, as.DislikeType, ob) } // FlagNew initializes a Flag activity func FlagNew(id as.ObjectID, ob as.Item) *Flag { return ActivityNew(id, as.FlagType, ob) } // FollowNew initializes a Follow activity func FollowNew(id as.ObjectID, ob as.Item) *Follow { return ActivityNew(id, as.FollowType, ob) } // IgnoreNew initializes an Ignore activity func IgnoreNew(id as.ObjectID, ob as.Item) *Ignore { return ActivityNew(id, as.IgnoreType, ob) } // InviteNew initializes an Invite activity func InviteNew(id as.ObjectID, ob as.Item) *Invite { return ActivityNew(id, as.InviteType, ob) } // JoinNew initializes a Join activity func JoinNew(id as.ObjectID, ob as.Item) *Join { return ActivityNew(id, as.JoinType, ob) } // LeaveNew initializes a Leave activity func LeaveNew(id as.ObjectID, ob as.Item) *Leave { return ActivityNew(id, as.LeaveType, ob) } // LikeNew initializes a Like activity func LikeNew(id as.ObjectID, ob as.Item) *Like { return ActivityNew(id, as.LikeType, ob) } // ListenNew initializes a Listen activity func ListenNew(id as.ObjectID, ob as.Item) *Listen { return ActivityNew(id, as.ListenType, ob) } // MoveNew initializes a Move activity func MoveNew(id as.ObjectID, ob as.Item) *Move { return ActivityNew(id, as.MoveType, ob) } // OfferNew initializes an Offer activity func OfferNew(id as.ObjectID, ob as.Item) *Offer { return ActivityNew(id, as.OfferType, ob) } // RejectNew initializes a Reject activity func RejectNew(id as.ObjectID, ob as.Item) *Reject { return ActivityNew(id, as.RejectType, ob) } // ReadNew initializes a Read activity func ReadNew(id as.ObjectID, ob as.Item) *Read { return ActivityNew(id, as.ReadType, ob) } // RemoveNew initializes a Remove activity func RemoveNew(id as.ObjectID, ob as.Item, trgt as.Item) *Remove { a := ActivityNew(id, as.RemoveType, ob) a.Target = trgt return a } // TentativeRejectNew initializes a TentativeReject activity func TentativeRejectNew(id as.ObjectID, ob as.Item) *TentativeReject { a := ActivityNew(id, as.TentativeRejectType, ob) o := TentativeReject(*a) return &o } // TentativeAcceptNew initializes a TentativeAccept activity func TentativeAcceptNew(id as.ObjectID, ob as.Item) *TentativeAccept { return ActivityNew(id, as.TentativeAcceptType, ob) } // TravelNew initializes a Travel activity func TravelNew(id as.ObjectID) *Travel { return IntransitiveActivityNew(id, as.TravelType) } // UndoNew initializes an Undo activity func UndoNew(id as.ObjectID, ob as.Item) *Undo { return ActivityNew(id, as.UndoType, ob) } // UpdateNew initializes an Update activity func UpdateNew(id as.ObjectID, ob as.Item) *Update { return ActivityNew(id, as.UpdateType, ob) } // ViewNew initializes a View activity func ViewNew(id as.ObjectID, ob as.Item) *View { return ActivityNew(id, as.ViewType, ob) } // QuestionNew initializes a Question activity func QuestionNew(id as.ObjectID) *Question { q := Question{ ID: id, Type: as.QuestionType} q.Name = as.NaturalLanguageValueNew() q.Content = as.NaturalLanguageValueNew() return &q } // ActivityNew initializes a basic activity func ActivityNew(id as.ObjectID, typ as.ActivityVocabularyType, ob as.Item) *Activity { a := as.ActivityNew(id, typ, ob) return &Activity{ Activity: *a} } // IntransitiveActivityNew initializes a intransitive activity func IntransitiveActivityNew(id as.ObjectID, typ as.ActivityVocabularyType) *IntransitiveActivity { i := as.IntransitiveActivityNew(id, typ) return &IntransitiveActivity{ IntransitiveActivity: *i} } // UnmarshalJSON func (a *Activity) UnmarshalJSON(data []byte) error { as.ItemTyperFunc = JSONGetItemByType a.Parent.UnmarshalJSON(data) a.Actor = as.JSONGetItem(data, "actor") a.Object = as.JSONGetItem(data, "object") return nil } func loadActorWithInboxObject(a as.Item, o as.Item) as.Item { typ := a.GetType() switch typ { case as.ApplicationType: var app Application app, _ = a.(Application) var inbox *as.OrderedCollection if app.Inbox == nil { inbox = InboxNew() } else { inbox = app.Inbox.(*as.OrderedCollection) } inbox.Append(o) app.Inbox = inbox return app case as.GroupType: var grp Group grp, _ = a.(Group) var inbox *as.OrderedCollection if grp.Inbox == nil { inbox = InboxNew() } else { inbox = grp.Inbox.(*as.OrderedCollection) } inbox.Append(o) grp.Inbox = inbox return grp case as.OrganizationType: var org Organization org, _ = a.(Organization) var inbox *as.OrderedCollection if org.Inbox == nil { inbox = InboxNew() } else { inbox = org.Inbox.(*as.OrderedCollection) } inbox.Append(o) org.Inbox = inbox return org case as.PersonType: var pers Person pers, _ = a.(Person) var inbox *as.OrderedCollection if pers.Inbox == nil { inbox = InboxNew() } else { inbox = pers.Inbox.(*as.OrderedCollection) } inbox.Append(o) pers.Inbox = inbox return pers case as.ServiceType: var serv Service serv, _ = a.(Service) var inbox *as.OrderedCollection if serv.Inbox == nil { inbox = InboxNew() } else { inbox = serv.Inbox.(*as.OrderedCollection) } inbox.Append(o) serv.Inbox = inbox return serv default: o, _ := a.(as.Object) return Object{Parent: o} } }
-
-
activity_test.go (deleted)
-
@@ -1,600 +0,0 @@package activitypub import ( as "github.com/go-ap/activitystreams" "testing" ) func TestActivityNew(t *testing.T) { var testValue = as.ObjectID("test") var testType as.ActivityVocabularyType = "Accept" a := ActivityNew(testValue, testType, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != testType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, testType) } g := ActivityNew(testValue, "", nil) if g.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", g.ID, testValue) } if g.Type != as.ActivityType { t.Errorf("Activity Type '%v' different than expected '%v'", g.Type, as.ActivityType) } } func TestIntransitiveActivityNew(t *testing.T) { var testValue = as.ObjectID("test") var testType as.ActivityVocabularyType = "Arrive" a := IntransitiveActivityNew(testValue, testType) if a.ID != testValue { t.Errorf("IntransitiveActivity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != testType { t.Errorf("IntransitiveActivity Type '%v' different than expected '%v'", a.Type, testType) } g := IntransitiveActivityNew(testValue, "") if g.ID != testValue { t.Errorf("IntransitiveActivity Id '%v' different than expected '%v'", g.ID, testValue) } if g.Type != as.IntransitiveActivityType { t.Errorf("IntransitiveActivity Type '%v' different than expected '%v'", g.Type, as.IntransitiveActivityType) } } func TestAcceptNew(t *testing.T) { var testValue = as.ObjectID("test") a := AcceptNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.AcceptType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.AcceptType) } } func TestAddNew(t *testing.T) { var testValue = as.ObjectID("test") a := AddNew(testValue, nil, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.AddType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.AddType) } } func TestAnnounceNew(t *testing.T) { var testValue = as.ObjectID("test") a := AnnounceNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.AnnounceType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.AnnounceType) } } func TestArriveNew(t *testing.T) { var testValue = as.ObjectID("test") a := ArriveNew(testValue) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.ArriveType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.ArriveType) } } func TestBlockNew(t *testing.T) { var testValue = as.ObjectID("test") a := BlockNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.BlockType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.BlockType) } } func TestCreateNew(t *testing.T) { var testValue = as.ObjectID("test") a := CreateNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.CreateType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.CreateType) } } func TestDeleteNew(t *testing.T) { var testValue = as.ObjectID("test") a := DeleteNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.DeleteType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.DeleteType) } } func TestDislikeNew(t *testing.T) { var testValue = as.ObjectID("test") a := DislikeNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.DislikeType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.DislikeType) } } func TestFlagNew(t *testing.T) { var testValue = as.ObjectID("test") a := FlagNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.FlagType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.FlagType) } } func TestFollowNew(t *testing.T) { var testValue = as.ObjectID("test") a := FollowNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.FollowType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.FollowType) } } func TestIgnoreNew(t *testing.T) { var testValue = as.ObjectID("test") a := IgnoreNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.IgnoreType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.IgnoreType) } } func TestInviteNew(t *testing.T) { var testValue = as.ObjectID("test") a := InviteNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.InviteType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.InviteType) } } func TestJoinNew(t *testing.T) { var testValue = as.ObjectID("test") a := JoinNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.JoinType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.JoinType) } } func TestLeaveNew(t *testing.T) { var testValue = as.ObjectID("test") a := LeaveNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.LeaveType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.LeaveType) } } func TestLikeNew(t *testing.T) { var testValue = as.ObjectID("test") a := LikeNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.LikeType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.LikeType) } } func TestListenNew(t *testing.T) { var testValue = as.ObjectID("test") a := ListenNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.ListenType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.ListenType) } } func TestMoveNew(t *testing.T) { var testValue = as.ObjectID("test") a := MoveNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.MoveType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.MoveType) } } func TestOfferNew(t *testing.T) { var testValue = as.ObjectID("test") a := OfferNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.OfferType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.OfferType) } } func TestQuestionNew(t *testing.T) { var testValue = as.ObjectID("test") a := QuestionNew(testValue) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.QuestionType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.QuestionType) } } func TestRejectNew(t *testing.T) { var testValue = as.ObjectID("test") a := RejectNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.RejectType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.RejectType) } } func TestReadNew(t *testing.T) { var testValue = as.ObjectID("test") a := ReadNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.ReadType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.ReadType) } } func TestRemoveNew(t *testing.T) { var testValue = as.ObjectID("test") a := RemoveNew(testValue, nil, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.RemoveType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.RemoveType) } } func TestTentativeRejectNew(t *testing.T) { var testValue = as.ObjectID("test") a := TentativeRejectNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.TentativeRejectType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.TentativeRejectType) } } func TestTentativeAcceptNew(t *testing.T) { var testValue = as.ObjectID("test") a := TentativeAcceptNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.TentativeAcceptType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.TentativeAcceptType) } } func TestTravelNew(t *testing.T) { var testValue = as.ObjectID("test") a := TravelNew(testValue) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.TravelType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.TravelType) } } func TestUndoNew(t *testing.T) { var testValue = as.ObjectID("test") a := UndoNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.UndoType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.UndoType) } } func TestUpdateNew(t *testing.T) { var testValue = as.ObjectID("test") a := UpdateNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.UpdateType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.UpdateType) } } func TestViewNew(t *testing.T) { var testValue = as.ObjectID("test") a := ViewNew(testValue, nil) if a.ID != testValue { t.Errorf("Activity Id '%v' different than expected '%v'", a.ID, testValue) } if a.Type != as.ViewType { t.Errorf("Activity Type '%v' different than expected '%v'", a.Type, as.ViewType) } } func TestActivity_UnmarshalJSON(t *testing.T) { a := Activity{} dataEmpty := []byte("{}") a.UnmarshalJSON(dataEmpty) if a.ID != "" { t.Errorf("Unmarshalled object %T should have empty ID, received %q", a, a.ID) } if a.Type != "" { t.Errorf("Unmarshalled object %T should have empty Type, received %q", a, a.Type) } if a.AttributedTo != nil { t.Errorf("Unmarshalled object %T should have empty AttributedTo, received %q", a, a.AttributedTo) } if len(a.Name) != 0 { t.Errorf("Unmarshalled object %T should have empty Name, received %q", a, a.Name) } if len(a.Summary) != 0 { t.Errorf("Unmarshalled object %T should have empty Summary, received %q", a, a.Summary) } if len(a.Content) != 0 { t.Errorf("Unmarshalled object %T should have empty Content, received %q", a, a.Content) } if a.URL != nil { t.Errorf("Unmarshalled object %T should have empty URL, received %v", a, a.URL) } if !a.Published.IsZero() { t.Errorf("Unmarshalled object %T should have empty Published, received %q", a, a.Published) } if !a.StartTime.IsZero() { t.Errorf("Unmarshalled object %T should have empty StartTime, received %q", a, a.StartTime) } if !a.Updated.IsZero() { t.Errorf("Unmarshalled object %T should have empty Updated, received %q", a, a.Updated) } } func TestCreate_UnmarshalJSON(t *testing.T) { c := Create{} dataEmpty := []byte("{}") c.UnmarshalJSON(dataEmpty) if c.ID != "" { t.Errorf("Unmarshalled object %T should have empty ID, received %q", c, c.ID) } if c.Type != "" { t.Errorf("Unmarshalled object %T should have empty Type, received %q", c, c.Type) } if c.AttributedTo != nil { t.Errorf("Unmarshalled object %T should have empty AttributedTo, received %q", c, c.AttributedTo) } if len(c.Name) != 0 { t.Errorf("Unmarshalled object %T should have empty Name, received %q", c, c.Name) } if len(c.Summary) != 0 { t.Errorf("Unmarshalled object %T should have empty Summary, received %q", c, c.Summary) } if len(c.Content) != 0 { t.Errorf("Unmarshalled object %T should have empty Content, received %q", c, c.Content) } if c.URL != nil { t.Errorf("Unmarshalled object %T should have empty URL, received %v", c, c.URL) } if !c.Published.IsZero() { t.Errorf("Unmarshalled object %T should have empty Published, received %q", c, c.Published) } if !c.StartTime.IsZero() { t.Errorf("Unmarshalled object %T should have empty StartTime, received %q", c, c.StartTime) } if !c.Updated.IsZero() { t.Errorf("Unmarshalled object %T should have empty Updated, received %q", c, c.Updated) } } func TestDislike_UnmarshalJSON(t *testing.T) { d := Dislike{} dataEmpty := []byte("{}") d.UnmarshalJSON(dataEmpty) if d.ID != "" { t.Errorf("Unmarshalled object %T should have empty ID, received %q", d, d.ID) } if d.Type != "" { t.Errorf("Unmarshalled object %T should have empty Type, received %q", d, d.Type) } if d.AttributedTo != nil { t.Errorf("Unmarshalled object %T should have empty AttributedTo, received %q", d, d.AttributedTo) } if len(d.Name) != 0 { t.Errorf("Unmarshalled object %T should have empty Name, received %q", d, d.Name) } if len(d.Summary) != 0 { t.Errorf("Unmarshalled object %T should have empty Summary, received %q", d, d.Summary) } if len(d.Content) != 0 { t.Errorf("Unmarshalled object %T should have empty Content, received %q", d, d.Content) } if d.URL != nil { t.Errorf("Unmarshalled object %T should have empty URL, received %v", d, d.URL) } if !d.Published.IsZero() { t.Errorf("Unmarshalled object %T should have empty Published, received %q", d, d.Published) } if !d.StartTime.IsZero() { t.Errorf("Unmarshalled object %T should have empty StartTime, received %q", d, d.StartTime) } if !d.Updated.IsZero() { t.Errorf("Unmarshalled object %T should have empty Updated, received %q", d, d.Updated) } } func TestLike_UnmarshalJSON(t *testing.T) { l := Like{} dataEmpty := []byte("{}") l.UnmarshalJSON(dataEmpty) if l.ID != "" { t.Errorf("Unmarshalled object %T should have empty ID, received %q", l, l.ID) } if l.Type != "" { t.Errorf("Unmarshalled object %T should have empty Type, received %q", l, l.Type) } if l.AttributedTo != nil { t.Errorf("Unmarshalled object %T should have empty AttributedTo, received %q", l, l.AttributedTo) } if len(l.Name) != 0 { t.Errorf("Unmarshalled object %T should have empty Name, received %q", l, l.Name) } if len(l.Summary) != 0 { t.Errorf("Unmarshalled object %T should have empty Summary, received %q", l, l.Summary) } if len(l.Content) != 0 { t.Errorf("Unmarshalled object %T should have empty Content, received %q", l, l.Content) } if l.URL != nil { t.Errorf("Unmarshalled object %T should have empty URL, received %v", l, l.URL) } if !l.Published.IsZero() { t.Errorf("Unmarshalled object %T should have empty Published, received %q", l, l.Published) } if !l.StartTime.IsZero() { t.Errorf("Unmarshalled object %T should have empty StartTime, received %q", l, l.StartTime) } if !l.Updated.IsZero() { t.Errorf("Unmarshalled object %T should have empty Updated, received %q", l, l.Updated) } } func TestUpdate_UnmarshalJSON(t *testing.T) { u := Update{} dataEmpty := []byte("{}") u.UnmarshalJSON(dataEmpty) if u.ID != "" { t.Errorf("Unmarshalled object %T should have empty ID, received %q", u, u.ID) } if u.Type != "" { t.Errorf("Unmarshalled object %T should have empty Type, received %q", u, u.Type) } if u.AttributedTo != nil { t.Errorf("Unmarshalled object %T should have empty AttributedTo, received %q", u, u.AttributedTo) } if len(u.Name) != 0 { t.Errorf("Unmarshalled object %T should have empty Name, received %q", u, u.Name) } if len(u.Summary) != 0 { t.Errorf("Unmarshalled object %T should have empty Summary, received %q", u, u.Summary) } if len(u.Content) != 0 { t.Errorf("Unmarshalled object %T should have empty Content, received %q", u, u.Content) } if u.URL != nil { t.Errorf("Unmarshalled object %T should have empty URL, received %v", u, u.URL) } if !u.Published.IsZero() { t.Errorf("Unmarshalled object %T should have empty Published, received %q", u, u.Published) } if !u.StartTime.IsZero() { t.Errorf("Unmarshalled object %T should have empty StartTime, received %q", u, u.StartTime) } if !u.Updated.IsZero() { t.Errorf("Unmarshalled object %T should have empty Updated, received %q", u, u.Updated) } }
-
-
-
@@ -13,14 +13,6 @@ func JSONGetItemByType(typ as.ActivityVocabularyType) (as.Item, error) {o := Object{} o.Type = typ ret = &o case as.ActivityType: ret = &Activity{} o := ret.(*Activity) o.Type = typ case as.IntransitiveActivityType: ret = &IntransitiveActivity{} o := ret.(*IntransitiveActivity) o.Type = typ case as.ActorType: ret = &Object{} o := ret.(*Object)
-
@@ -45,118 +37,6 @@ func JSONGetItemByType(typ as.ActivityVocabularyType) (as.Item, error) {ret = &Service{} o := ret.(*Service) o.Type = typ case as.AcceptType: ret = &Accept{} o := ret.(*Accept) o.Type = typ case as.AddType: ret = &Add{} o := ret.(*Add) o.Type = typ case as.AnnounceType: ret = &Announce{} o := ret.(*Announce) o.Type = typ case as.ArriveType: ret = &Arrive{} o := ret.(*Arrive) o.Type = typ case as.BlockType: ret = &Block{} o := ret.(*Block) o.Type = typ case as.CreateType: ret = &Create{} o := ret.(*Create) o.Type = typ case as.DeleteType: ret = &Delete{} o := ret.(*Delete) o.Type = typ case as.DislikeType: ret = &Dislike{} o := ret.(*Dislike) o.Type = typ case as.FlagType: ret = &Flag{} o := ret.(*Flag) o.Type = typ case as.FollowType: ret = &Follow{} o := ret.(*Follow) o.Type = typ case as.IgnoreType: ret = &Ignore{} o := ret.(*Ignore) o.Type = typ case as.InviteType: ret = &Invite{} o := ret.(*Invite) o.Type = typ case as.JoinType: ret = &Join{} o := ret.(*Join) o.Type = typ case as.LeaveType: ret = &Leave{} o := ret.(*Leave) o.Type = typ case as.LikeType: ret = &Like{} o := ret.(*Like) o.Type = typ case as.ListenType: ret = &Listen{} o := ret.(*Listen) o.Type = typ case as.MoveType: ret = &Move{} o := ret.(*Move) o.Type = typ case as.OfferType: ret = &Offer{} o := ret.(*Offer) o.Type = typ case as.QuestionType: ret = &Question{} o := ret.(*Question) o.Type = typ case as.RejectType: ret = &Reject{} o := ret.(*Reject) o.Type = typ case as.ReadType: ret = &Read{} o := ret.(*Read) o.Type = typ case as.RemoveType: ret = &Remove{} o := ret.(*Remove) o.Type = typ case as.TentativeRejectType: ret = &TentativeReject{} o := ret.(*TentativeReject) o.Type = typ case as.TentativeAcceptType: ret = &TentativeAccept{} o := ret.(*TentativeAccept) o.Type = typ case as.TravelType: ret = &Travel{} o := ret.(*Travel) o.Type = typ case as.UndoType: ret = &Undo{} o := ret.(*Undo) o.Type = typ case as.UpdateType: ret = &Update{} o := ret.(*Update) o.Type = typ case as.ViewType: ret = &View{} o := ret.(*View) o.Type = typ case "": // when no type is available use a plain Object ret = &Object{}
-