Merge branch 'master' into glitch-soc/merge-upstream
Conflicts: - app/models/account.rb - app/views/settings/profiles/show.html.haml - spec/controllers/api/v1/accounts/credentials_controller_spec.rb Conflicts were due to an increase in account bio length upstream, which is already covered in glitch-soc through `MAX_BIO_CHARS`.
This commit is contained in:
commit
c0dc247bce
72 changed files with 916 additions and 634 deletions
|
@ -6,6 +6,7 @@ RSpec.describe Api::V1::NotificationsController, type: :controller do
|
|||
let(:user) { Fabricate(:user, account: Fabricate(:account, username: 'alice')) }
|
||||
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
|
||||
let(:other) { Fabricate(:user, account: Fabricate(:account, username: 'bob')) }
|
||||
let(:third) { Fabricate(:user, account: Fabricate(:account, username: 'carol')) }
|
||||
|
||||
before do
|
||||
allow(controller).to receive(:doorkeeper_token) { token }
|
||||
|
@ -55,6 +56,7 @@ RSpec.describe Api::V1::NotificationsController, type: :controller do
|
|||
mentioning_status = PostStatusService.new.call(other.account, text: 'Hello @alice')
|
||||
@mention_from_status = mentioning_status.mentions.first
|
||||
@favourite = FavouriteService.new.call(other.account, first_status)
|
||||
@second_favourite = FavouriteService.new.call(third.account, first_status)
|
||||
@follow = FollowService.new.call(other.account, 'alice')
|
||||
end
|
||||
|
||||
|
@ -84,6 +86,66 @@ RSpec.describe Api::V1::NotificationsController, type: :controller do
|
|||
end
|
||||
end
|
||||
|
||||
describe 'from specified user' do
|
||||
before do
|
||||
get :index, params: { account_id: third.account.id }
|
||||
end
|
||||
|
||||
it 'returns http success' do
|
||||
expect(response).to have_http_status(200)
|
||||
end
|
||||
|
||||
it 'includes favourite' do
|
||||
expect(assigns(:notifications).map(&:activity)).to include(@second_favourite)
|
||||
end
|
||||
|
||||
it 'excludes favourite' do
|
||||
expect(assigns(:notifications).map(&:activity)).to_not include(@favourite)
|
||||
end
|
||||
|
||||
it 'excludes mention' do
|
||||
expect(assigns(:notifications).map(&:activity)).to_not include(@mention_from_status)
|
||||
end
|
||||
|
||||
it 'excludes reblog' do
|
||||
expect(assigns(:notifications).map(&:activity)).to_not include(@reblog_of_first_status)
|
||||
end
|
||||
|
||||
it 'excludes follow' do
|
||||
expect(assigns(:notifications).map(&:activity)).to_not include(@follow)
|
||||
end
|
||||
end
|
||||
|
||||
describe 'from nonexistent user' do
|
||||
before do
|
||||
get :index, params: { account_id: 'foo' }
|
||||
end
|
||||
|
||||
it 'returns http success' do
|
||||
expect(response).to have_http_status(200)
|
||||
end
|
||||
|
||||
it 'excludes favourite' do
|
||||
expect(assigns(:notifications).map(&:activity)).to_not include(@favourite)
|
||||
end
|
||||
|
||||
it 'excludes second favourite' do
|
||||
expect(assigns(:notifications).map(&:activity)).to_not include(@second_favourite)
|
||||
end
|
||||
|
||||
it 'excludes mention' do
|
||||
expect(assigns(:notifications).map(&:activity)).to_not include(@mention_from_status)
|
||||
end
|
||||
|
||||
it 'excludes reblog' do
|
||||
expect(assigns(:notifications).map(&:activity)).to_not include(@reblog_of_first_status)
|
||||
end
|
||||
|
||||
it 'excludes follow' do
|
||||
expect(assigns(:notifications).map(&:activity)).to_not include(@follow)
|
||||
end
|
||||
end
|
||||
|
||||
describe 'with excluded mentions' do
|
||||
before do
|
||||
get :index, params: { exclude_types: ['mention'] }
|
||||
|
@ -105,6 +167,10 @@ RSpec.describe Api::V1::NotificationsController, type: :controller do
|
|||
expect(assigns(:notifications).map(&:activity)).to include(@favourite)
|
||||
end
|
||||
|
||||
it 'includes third favourite' do
|
||||
expect(assigns(:notifications).map(&:activity)).to include(@second_favourite)
|
||||
end
|
||||
|
||||
it 'includes follow' do
|
||||
expect(assigns(:notifications).map(&:activity)).to include(@follow)
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue