Sha256: e7987940a752029b209feccc0acc1e2d08786b10725da6ec3537ee361ea9afeb
Contents?: true
Size: 1.99 KB
Versions: 9
Compression:
Stored size: 1.99 KB
Contents
require File.dirname(__FILE__) + '/../../spec_helper' describe Admin::PublicationsController do before :all do Publication.destroy_all @publication = Publication.create(:name => 'FAQs', :desired_slug => 'faq') end it "index action should render index template" do get :index response.should render_template(:index) end it "show action should render show template" do get :show, :id => @publication.id response.should render_template(:show) end it "new action should render new template" do get :new response.should render_template(:new) end it "create action should render new template when model is invalid" do Publication.any_instance.stubs(:valid?).returns(false) post :create response.should render_template(:new) end it "create action should redirect when model is valid" do Publication.any_instance.stubs(:valid?).returns(true) Publication.any_instance.stubs(:desired_slug).returns('bar') post :create response.should redirect_to(admin_publication_url(assigns[:publication])) end it "edit action should render edit template" do get :edit, :id => @publication.id response.should render_template(:edit) end it "update action should render edit template when model is invalid" do Publication.any_instance.stubs(:valid?).returns(false) put :update, :id => @publication.id response.should render_template(:edit) end it "update action should redirect when model is valid" do Publication.any_instance.stubs(:valid?).returns(true) put :update, :id => @publication.id response.should redirect_to(admin_publication_url(assigns[:publication])) end it "destroy action should destroy model and redirect to index action" do @publication_to_delete = Publication.create(:name => 'iFAQs', :desired_slug => 'ifaq') delete :destroy, :id => @publication_to_delete.id response.should redirect_to(admin_publications_url) Publication.where(:id => @publication_to_delete.id).should be_empty end end
Version data entries
9 entries across 9 versions & 1 rubygems