Merge pull request #212 from aschmitz/feat/mute-reblogs

Allow hiding reblogs on a per-follow basis
This commit is contained in:
beatrix
2017-11-15 12:01:17 -05:00
committed by GitHub
23 changed files with 259 additions and 34 deletions

View File

@@ -37,4 +37,41 @@ describe AccountInteractions do
end
end
end
describe 'ignoring reblogs from an account' do
before do
@me = Fabricate(:account, username: 'Me')
@you = Fabricate(:account, username: 'You')
end
context 'with the reblogs option unspecified' do
before do
@me.follow!(@you)
end
it 'defaults to showing reblogs' do
expect(@me.muting_reblogs?(@you)).to be(false)
end
end
context 'with the reblogs option set to false' do
before do
@me.follow!(@you, reblogs: false)
end
it 'does mute reblogs' do
expect(@me.muting_reblogs?(@you)).to be(true)
end
end
context 'with the reblogs option set to true' do
before do
@me.follow!(@you, reblogs: true)
end
it 'does not mute reblogs' do
expect(@me.muting_reblogs?(@you)).to be(false)
end
end
end
end

View File

@@ -1,7 +1,29 @@
require 'rails_helper'
RSpec.describe FollowRequest, type: :model do
describe '#authorize!'
describe '#authorize!' do
it 'generates a Follow' do
follow_request = Fabricate.create(:follow_request)
follow_request.authorize!
target = follow_request.target_account
expect(follow_request.account.following?(target)).to be true
end
it 'correctly passes show_reblogs when true' do
follow_request = Fabricate.create(:follow_request, show_reblogs: true)
follow_request.authorize!
target = follow_request.target_account
expect(follow_request.account.muting_reblogs?(target)).to be false
end
it 'correctly passes show_reblogs when false' do
follow_request = Fabricate.create(:follow_request, show_reblogs: false)
follow_request.authorize!
target = follow_request.target_account
expect(follow_request.account.muting_reblogs?(target)).to be true
end
end
describe '#reject!'
describe 'validations' do