instante-social/spec/models/stream_entry_spec.rb

44 lines
1.3 KiB
Ruby
Raw Normal View History

2016-02-24 23:17:01 +00:00
require 'rails_helper'
RSpec.describe StreamEntry, type: :model do
2016-02-26 14:28:08 +00:00
let(:alice) { Fabricate(:account, username: 'alice') }
let(:bob) { Fabricate(:account, username: 'bob') }
let(:follow) { Fabricate(:follow, account: alice, target_account: bob) }
let(:status) { Fabricate(:status, account: alice) }
let(:reblog) { Fabricate(:status, account: bob, reblog: status) }
let(:reply) { Fabricate(:status, account: bob, thread: status) }
let(:favourite) { Fabricate(:favourite, account: alice, status: status) }
2016-02-24 23:17:01 +00:00
describe '#targeted?' do
2016-02-26 14:28:08 +00:00
it 'returns true for a follow' do
expect(follow.stream_entry.targeted?).to be true
end
it 'returns true for a favourite' do
expect(favourite.stream_entry.targeted?).to be true
end
it 'returns true for a reblog' do
expect(reblog.stream_entry.targeted?).to be true
end
it 'returns false otherwise' do
expect(status.stream_entry.targeted?).to be false
end
2016-02-24 23:17:01 +00:00
end
describe '#threaded?' do
2016-02-26 14:28:08 +00:00
it 'returns true for a favourite' do
expect(favourite.stream_entry.threaded?).to be true
end
it 'returns true for a reply' do
expect(reply.stream_entry.threaded?).to be true
end
it 'returns false otherwise' do
expect(status.stream_entry.threaded?).to be false
end
2016-02-24 23:17:01 +00:00
end
end