diff options
author | Claire <claire.github-309c@sitedethib.com> | 2022-08-25 06:15:55 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-25 06:15:55 +0200 |
commit | 4be626734dfe5d5bb550b117d966aa3f93d0ef38 (patch) | |
tree | ab558edfd645052e92881137fdd95a66c1e4eb03 /spec/controllers/api/v1/statuses_controller_spec.rb | |
parent | 5a3d09dc8e30198b4d8d921ef0b1ba0a35fe01d9 (diff) | |
parent | 448ed92f76981f40d6faf48ed9d798ee716a04b2 (diff) |
Merge pull request #1827 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'spec/controllers/api/v1/statuses_controller_spec.rb')
-rw-r--r-- | spec/controllers/api/v1/statuses_controller_spec.rb | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/spec/controllers/api/v1/statuses_controller_spec.rb b/spec/controllers/api/v1/statuses_controller_spec.rb index 4d104a198..24810a5d2 100644 --- a/spec/controllers/api/v1/statuses_controller_spec.rb +++ b/spec/controllers/api/v1/statuses_controller_spec.rb @@ -47,6 +47,33 @@ RSpec.describe Api::V1::StatusesController, type: :controller do end end + context 'when post is explicitly filtered' do + let(:status) { Fabricate(:status, text: 'hello world') } + + before do + filter = user.account.custom_filters.create!(phrase: 'filter1', context: %w(home), action: :hide) + filter.statuses.create!(status_id: status.id) + end + + it 'returns http success' do + get :show, params: { id: status.id } + expect(response).to have_http_status(200) + end + + it 'returns filter information' do + get :show, params: { id: status.id } + json = body_as_json + expect(json[:filtered][0]).to include({ + filter: a_hash_including({ + id: user.account.custom_filters.first.id.to_s, + title: 'filter1', + filter_action: 'hide', + }), + status_matches: [status.id.to_s], + }) + end + end + context 'when reblog includes filtered terms' do let(:status) { Fabricate(:status, reblog: Fabricate(:status, text: 'this toot is about that banned word')) } |