Add tests for direct message assertions

rebase/4.0.0rc2
Fire Demon 2020-08-03 04:55:39 -05:00 committed by ThibG
parent 3d5b3e357c
commit 13501f7393
1 changed files with 46 additions and 0 deletions

View File

@ -146,6 +146,31 @@ RSpec.describe ActivityPub::Activity::Create do
end
end
context 'limited when direct message assertion is false' do
let(:recipient) { Fabricate(:account) }
let(:object_json) do
{
id: [ActivityPub::TagManager.instance.uri_for(sender), '#bar'].join,
type: 'Note',
content: 'Lorem ipsum',
directMessage: false,
to: ActivityPub::TagManager.instance.uri_for(recipient),
tag: {
type: 'Mention',
href: ActivityPub::TagManager.instance.uri_for(recipient),
},
}
end
it 'creates status' do
status = sender.statuses.first
expect(status).to_not be_nil
expect(status.visibility).to eq 'limited'
end
end
context 'direct' do
let(:recipient) { Fabricate(:account) }
@ -170,6 +195,27 @@ RSpec.describe ActivityPub::Activity::Create do
end
end
context 'direct when direct message assertion is true' do
let(:recipient) { Fabricate(:account) }
let(:object_json) do
{
id: [ActivityPub::TagManager.instance.uri_for(sender), '#bar'].join,
type: 'Note',
content: 'Lorem ipsum',
to: ActivityPub::TagManager.instance.uri_for(recipient),
directMessage: true,
}
end
it 'creates status' do
status = sender.statuses.first
expect(status).to_not be_nil
expect(status.visibility).to eq 'direct'
end
end
context 'as a reply' do
let(:original_status) { Fabricate(:status) }