From 30be1b0d2bb17287efd0d2e52bd2036c7e4089b4 Mon Sep 17 00:00:00 2001 From: OsamaSayegh Date: Thu, 7 Jun 2018 08:09:23 +0300 Subject: [PATCH] REFACTOR: category hashtags controller specs to requests (#5936) --- .../category_hashtags_controller_spec.rb | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) rename spec/{controllers => requests}/category_hashtags_controller_spec.rb (66%) diff --git a/spec/controllers/category_hashtags_controller_spec.rb b/spec/requests/category_hashtags_controller_spec.rb similarity index 66% rename from spec/controllers/category_hashtags_controller_spec.rb rename to spec/requests/category_hashtags_controller_spec.rb index f177811df2c..c638d82ede0 100644 --- a/spec/controllers/category_hashtags_controller_spec.rb +++ b/spec/requests/category_hashtags_controller_spec.rb @@ -4,14 +4,15 @@ describe CategoryHashtagsController do describe "check" do describe "logged in" do before do - log_in(:user) + sign_in(Fabricate(:user)) end it 'only returns the categories that are valid' do category = Fabricate(:category) - get :check, params: { category_slugs: [category.slug, 'none'] }, format: :json + get "/category_hashtags/check.json", params: { category_slugs: [category.slug, 'none'] } + expect(response.status).to eq(200) expect(JSON.parse(response.body)).to eq( "valid" => [{ "slug" => category.hashtag_slug, "url" => category.url_with_id }] ) @@ -21,21 +22,22 @@ describe CategoryHashtagsController do group = Fabricate(:group) private_category = Fabricate(:private_category, group: group) - get :check, params: { category_slugs: [private_category.slug] }, format: :json + get "/category_hashtags/check.json", params: { category_slugs: [private_category.slug] } + expect(response.status).to eq(200) expect(JSON.parse(response.body)).to eq("valid" => []) end it 'returns restricted categories for an admin' do - admin = log_in(:admin) + admin = sign_in(Fabricate(:admin)) group = Fabricate(:group) group.add(admin) private_category = Fabricate(:private_category, group: group) - get :check, - params: { category_slugs: [private_category.slug] }, - format: :json + get "/category_hashtags/check.json", + params: { category_slugs: [private_category.slug] } + expect(response.status).to eq(200) expect(JSON.parse(response.body)).to eq( "valid" => [{ "slug" => private_category.hashtag_slug, "url" => private_category.url_with_id }] ) @@ -44,7 +46,7 @@ describe CategoryHashtagsController do describe "not logged in" do it 'raises an exception' do - get :check, params: { category_slugs: [] }, format: :json + get "/category_hashtags/check.json", params: { category_slugs: [] } expect(response.status).to eq(403) end end