Files
fetsite/spec/controllers/neuigkeiten_controller_spec.rb

56 lines
1.7 KiB
Ruby

#require 'rails_helper'
require 'spec_helper'
RSpec.describe NeuigkeitenController, :type => :controller do
let(:rubrik) {FactoryGirl.create(:rubrik, public:true)}
let(:intern_rubrik) {FactoryGirl.create(:rubrik, public:false, name: "InternRubrik")}
let(:user) {FactoryGirl.create(:user)}
let(:fet_user) do
user=FactoryGirl.create(:user)
user.add_role(:fetadmin)
end
let(:neuigkeit) {(FactoryGirl.create(:neuigkeit, rubrik_id: rubrik.id, author_id: user.id, datum: 4.hours.ago))}
let(:intern_neuigkeit) {(FactoryGirl.create(:neuigkeit, rubrik_id: intern_rubrik.id, author_id: user.id, datum: 4.hours.ago))}
let(:valid_session) { {current_user: fet_user} }
let(:public_session){{}}
describe "GET #show" do
it "render show template" do
get :show, {id: neuigkeit.id}, public_session
expect(response).to have_http_status(200)
expect(response).to render_template(:show)
end
it "denys access to unpublished news" do
neuigkeit.datum=5.hours.from_now
neuigkeit.save!
get :show, {id: neuigkeit.id}, public_session
expect(response).to have_http_status(302)
end
it "denys access to intern news" do
get :show, {id: intern_neuigkeit.id}, public_session
expect(response).to have_http_status(302)
end
it "assignes neuigkeit" do
get :show, {id: neuigkeit.id }, public_session
expect(assigns(:neuigkeit)).to eq(neuigkeit)
end
describe "GET #show view contents" do
render_views
it "renders the name of the neuigkeit" do
get :show, {id: neuigkeit.id} , public_session
expect(response.body).to match neuigkeit.name
end
it "has linkes to external rubrik" do
end
end
end
end