docbrown/spec/controllers/articles_controller_spec.rb
Mac Siri ff36271108 Improve ArticlesController's authorization (#466)
* Fix lint

* Add pundit-matchers gem

* Strengthen ArticlePolicy & create spec

* Change ApplicationPolicy to a closed system

* Globally handle pundit's NotAuthorizedError

* Fix lint

* Adjust /new's authorization
2018-06-21 14:18:32 -04:00

32 lines
777 B
Ruby

# controller specs are now discouraged in favor of request specs.
# This file should eventually be removed
require "rails_helper"
RSpec.describe ArticlesController, type: :controller do
let(:user) { create(:user) }
describe "GET #feed" do
it "works" do
get :feed, format: :rss
expect(response.status).to eq(200)
end
end
describe "GET #new" do
before { sign_in user }
context "with authorized user" do
it "returns a new article" do
get :new
expect(response).to render_template(:new)
end
end
context "with authorized user with tag param" do
it "returns a new article" do
get :new, params: { slug: "shecoded" }
expect(response).to render_template(:new)
end
end
end
end