83 lines
1.9 KiB
Go
83 lines
1.9 KiB
Go
package activitypub
|
|
|
|
import (
|
|
"reflect"
|
|
"testing"
|
|
|
|
as "github.com/go-ap/activitystreams"
|
|
)
|
|
|
|
func TestOutboxNew(t *testing.T) {
|
|
o := OutboxNew()
|
|
|
|
id := as.ObjectID("outbox")
|
|
if o.ID != id {
|
|
t.Errorf("%T should be initialized with %q as %T", o, id, id)
|
|
}
|
|
if len(o.Name) != 0 {
|
|
t.Errorf("%T should be initialized with 0 length Name", o)
|
|
}
|
|
if len(o.Content) != 0 {
|
|
t.Errorf("%T should be initialized with 0 length Content", o)
|
|
}
|
|
if len(o.Summary) != 0 {
|
|
t.Errorf("%T should be initialized with 0 length Summary", o)
|
|
}
|
|
if o.TotalItems != 0 {
|
|
t.Errorf("%T should be initialized with 0 TotalItems", o)
|
|
}
|
|
}
|
|
|
|
func TestOutboxStream_GetID(t *testing.T) {
|
|
o := OutboxStream{}
|
|
if *o.GetID() != "" {
|
|
t.Errorf("%T should be initialized with empty %T", o, o.GetID())
|
|
}
|
|
id := as.ObjectID("test_out_stream")
|
|
o.ID = id
|
|
if *o.GetID() != id {
|
|
t.Errorf("%T should have %T as %q", o, id, id)
|
|
}
|
|
}
|
|
|
|
func TestOutboxStream_GetType(t *testing.T) {
|
|
o := OutboxStream{}
|
|
|
|
if o.GetType() != "" {
|
|
t.Errorf("%T should be initialized with empty %T", o, o.GetType())
|
|
}
|
|
|
|
o.Type = as.OrderedCollectionType
|
|
if o.GetType() != as.OrderedCollectionType {
|
|
t.Errorf("%T should have %T as %q", o, o.GetType(), as.OrderedCollectionType)
|
|
}
|
|
}
|
|
|
|
func TestOutboxStream_Append(t *testing.T) {
|
|
o := OutboxStream{}
|
|
|
|
val := as.Object{ID: as.ObjectID("grrr")}
|
|
|
|
o.Append(val)
|
|
if o.TotalItems != 1 {
|
|
t.Errorf("%T should have exactly an element, found %d", o, o.TotalItems)
|
|
}
|
|
if !reflect.DeepEqual(o.OrderedItems[0], val) {
|
|
t.Errorf("First item in %T.%T does not match %q", o, o.OrderedItems, val.ID)
|
|
}
|
|
}
|
|
|
|
func TestOutbox_Append(t *testing.T) {
|
|
o := OutboxNew()
|
|
|
|
val := as.Object{ID: as.ObjectID("grrr")}
|
|
|
|
o.Append(val)
|
|
if o.TotalItems != 1 {
|
|
t.Errorf("%T should have exactly an element, found %d", o, o.TotalItems)
|
|
}
|
|
if !reflect.DeepEqual(o.OrderedItems[0], val) {
|
|
t.Errorf("First item in %T.%T does not match %q", o, o.OrderedItems, val.ID)
|
|
}
|
|
}
|