From b59ce0a60ff4f90bb16a8c3338ad37218af052b8 Mon Sep 17 00:00:00 2001 From: trwnh Date: Mon, 14 Nov 2022 01:34:07 -0600 Subject: Move V2 Filter methods under /api/v2 prefix (#20622) * Move V2 Filter methods under /api/v2 prefix * move over the tests too --- .../api/v1/filters/keywords_controller_spec.rb | 142 --------------------- .../api/v1/filters/statuses_controller_spec.rb | 116 ----------------- 2 files changed, 258 deletions(-) delete mode 100644 spec/controllers/api/v1/filters/keywords_controller_spec.rb delete mode 100644 spec/controllers/api/v1/filters/statuses_controller_spec.rb (limited to 'spec/controllers/api/v1') diff --git a/spec/controllers/api/v1/filters/keywords_controller_spec.rb b/spec/controllers/api/v1/filters/keywords_controller_spec.rb deleted file mode 100644 index aecb4e41c..000000000 --- a/spec/controllers/api/v1/filters/keywords_controller_spec.rb +++ /dev/null @@ -1,142 +0,0 @@ -require 'rails_helper' - -RSpec.describe Api::V1::Filters::KeywordsController, type: :controller do - render_views - - let(:user) { Fabricate(:user) } - let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } - let(:filter) { Fabricate(:custom_filter, account: user.account) } - let(:other_user) { Fabricate(:user) } - let(:other_filter) { Fabricate(:custom_filter, account: other_user.account) } - - before do - allow(controller).to receive(:doorkeeper_token) { token } - end - - describe 'GET #index' do - let(:scopes) { 'read:filters' } - let!(:keyword) { Fabricate(:custom_filter_keyword, custom_filter: filter) } - - it 'returns http success' do - get :index, params: { filter_id: filter.id } - expect(response).to have_http_status(200) - end - - context "when trying to access another's user filters" do - it 'returns http not found' do - get :index, params: { filter_id: other_filter.id } - expect(response).to have_http_status(404) - end - end - end - - describe 'POST #create' do - let(:scopes) { 'write:filters' } - let(:filter_id) { filter.id } - - before do - post :create, params: { filter_id: filter_id, keyword: 'magic', whole_word: false } - end - - it 'returns http success' do - expect(response).to have_http_status(200) - end - - it 'returns a keyword' do - json = body_as_json - expect(json[:keyword]).to eq 'magic' - expect(json[:whole_word]).to eq false - end - - it 'creates a keyword' do - filter = user.account.custom_filters.first - expect(filter).to_not be_nil - expect(filter.keywords.pluck(:keyword)).to eq ['magic'] - end - - context "when trying to add to another another's user filters" do - let(:filter_id) { other_filter.id } - - it 'returns http not found' do - expect(response).to have_http_status(404) - end - end - end - - describe 'GET #show' do - let(:scopes) { 'read:filters' } - let(:keyword) { Fabricate(:custom_filter_keyword, keyword: 'foo', whole_word: false, custom_filter: filter) } - - before do - get :show, params: { id: keyword.id } - end - - it 'returns http success' do - expect(response).to have_http_status(200) - end - - it 'returns expected data' do - json = body_as_json - expect(json[:keyword]).to eq 'foo' - expect(json[:whole_word]).to eq false - end - - context "when trying to access another user's filter keyword" do - let(:keyword) { Fabricate(:custom_filter_keyword, custom_filter: other_filter) } - - it 'returns http not found' do - expect(response).to have_http_status(404) - end - end - end - - describe 'PUT #update' do - let(:scopes) { 'write:filters' } - let(:keyword) { Fabricate(:custom_filter_keyword, custom_filter: filter) } - - before do - get :update, params: { id: keyword.id, keyword: 'updated' } - end - - it 'returns http success' do - expect(response).to have_http_status(200) - end - - it 'updates the keyword' do - expect(keyword.reload.keyword).to eq 'updated' - end - - context "when trying to update another user's filter keyword" do - let(:keyword) { Fabricate(:custom_filter_keyword, custom_filter: other_filter) } - - it 'returns http not found' do - expect(response).to have_http_status(404) - end - end - end - - describe 'DELETE #destroy' do - let(:scopes) { 'write:filters' } - let(:keyword) { Fabricate(:custom_filter_keyword, custom_filter: filter) } - - before do - delete :destroy, params: { id: keyword.id } - end - - it 'returns http success' do - expect(response).to have_http_status(200) - end - - it 'removes the filter' do - expect { keyword.reload }.to raise_error ActiveRecord::RecordNotFound - end - - context "when trying to update another user's filter keyword" do - let(:keyword) { Fabricate(:custom_filter_keyword, custom_filter: other_filter) } - - it 'returns http not found' do - expect(response).to have_http_status(404) - end - end - end -end diff --git a/spec/controllers/api/v1/filters/statuses_controller_spec.rb b/spec/controllers/api/v1/filters/statuses_controller_spec.rb deleted file mode 100644 index 3b2399dd8..000000000 --- a/spec/controllers/api/v1/filters/statuses_controller_spec.rb +++ /dev/null @@ -1,116 +0,0 @@ -require 'rails_helper' - -RSpec.describe Api::V1::Filters::StatusesController, type: :controller do - render_views - - let(:user) { Fabricate(:user) } - let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } - let(:filter) { Fabricate(:custom_filter, account: user.account) } - let(:other_user) { Fabricate(:user) } - let(:other_filter) { Fabricate(:custom_filter, account: other_user.account) } - - before do - allow(controller).to receive(:doorkeeper_token) { token } - end - - describe 'GET #index' do - let(:scopes) { 'read:filters' } - let!(:status_filter) { Fabricate(:custom_filter_status, custom_filter: filter) } - - it 'returns http success' do - get :index, params: { filter_id: filter.id } - expect(response).to have_http_status(200) - end - - context "when trying to access another's user filters" do - it 'returns http not found' do - get :index, params: { filter_id: other_filter.id } - expect(response).to have_http_status(404) - end - end - end - - describe 'POST #create' do - let(:scopes) { 'write:filters' } - let(:filter_id) { filter.id } - let!(:status) { Fabricate(:status) } - - before do - post :create, params: { filter_id: filter_id, status_id: status.id } - end - - it 'returns http success' do - expect(response).to have_http_status(200) - end - - it 'returns a status filter' do - json = body_as_json - expect(json[:status_id]).to eq status.id.to_s - end - - it 'creates a status filter' do - filter = user.account.custom_filters.first - expect(filter).to_not be_nil - expect(filter.statuses.pluck(:status_id)).to eq [status.id] - end - - context "when trying to add to another another's user filters" do - let(:filter_id) { other_filter.id } - - it 'returns http not found' do - expect(response).to have_http_status(404) - end - end - end - - describe 'GET #show' do - let(:scopes) { 'read:filters' } - let!(:status_filter) { Fabricate(:custom_filter_status, custom_filter: filter) } - - before do - get :show, params: { id: status_filter.id } - end - - it 'returns http success' do - expect(response).to have_http_status(200) - end - - it 'returns expected data' do - json = body_as_json - expect(json[:status_id]).to eq status_filter.status_id.to_s - end - - context "when trying to access another user's filter keyword" do - let(:status_filter) { Fabricate(:custom_filter_status, custom_filter: other_filter) } - - it 'returns http not found' do - expect(response).to have_http_status(404) - end - end - end - - describe 'DELETE #destroy' do - let(:scopes) { 'write:filters' } - let(:status_filter) { Fabricate(:custom_filter_status, custom_filter: filter) } - - before do - delete :destroy, params: { id: status_filter.id } - end - - it 'returns http success' do - expect(response).to have_http_status(200) - end - - it 'removes the filter' do - expect { status_filter.reload }.to raise_error ActiveRecord::RecordNotFound - end - - context "when trying to update another user's filter keyword" do - let(:status_filter) { Fabricate(:custom_filter_status, custom_filter: other_filter) } - - it 'returns http not found' do - expect(response).to have_http_status(404) - end - end - end -end -- cgit