This adds support for Event AP type in Mastodon. Events are converted
into toots by taking their title (AS name) and their URL (AP ID). Event
picture is also brought in if available.
Testable by fetching event content from https://test.mobilizon.org
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
include Redisable
SUPPORTED_TYPES = %w(Note Question).freeze
- CONVERTED_TYPES = %w(Image Audio Video Article Page).freeze
+ CONVERTED_TYPES = %w(Image Audio Video Article Page Event).freeze
def initialize(json, account, **options)
@json = json
end
end
+ context 'with Event object' do
+ let(:object) do
+ {
+ '@context': 'https://www.w3.org/ns/activitystreams',
+ id: "https://#{valid_domain}/@foo/1234",
+ type: 'Event',
+ name: "Let's change the world",
+ attributedTo: ActivityPub::TagManager.instance.uri_for(sender)
+ }
+ end
+
+ it 'creates status' do
+ status = sender.statuses.first
+
+ expect(status).to_not be_nil
+ expect(status.url).to eq "https://#{valid_domain}/@foo/1234"
+ expect(strip_tags(status.text)).to eq "Let's change the world https://#{valid_domain}/@foo/1234"
+ end
+ end
+
context 'with wrong id' do
let(:note) do
{