pages_controller_spec.rb
上传用户:netsea168
上传日期:2022-07-22
资源大小:4652k
文件大小:2k
源码类别:

Ajax

开发平台:

Others

  1. require File.dirname(__FILE__) + '/../../spec_helper'
  2. describe Admin::PagesController do
  3.   before do
  4.     request.session = { :user => users(:tobi).id }
  5.   end
  6.   describe '#index' do
  7.     it 'should response success' do
  8.       get :index
  9.       response.should be_success
  10.       assert_template 'index'
  11.       assert_not_nil assigns(:pages)
  12.     end
  13.     it 'should response success with :page args' do
  14.       get :index, :page => 1
  15.       response.should be_success
  16.       assert_template 'index'
  17.       assert_not_nil assigns(:pages)
  18.     end
  19.   end
  20.   it "test_show" do
  21.     get :show, :id => contents(:first_page).id
  22.     assert_response :success
  23.     assert_template "show"
  24.     assert_not_nil assigns(:page)
  25.     assert_equal contents(:first_page), assigns(:page)
  26.   end
  27.   it "test_new" do
  28.     get :new
  29.     assert_response :success
  30.     assert_template "new"
  31.     assert_not_nil assigns(:page)
  32.     assert_equal users(:tobi), assigns(:page).user
  33.     assert_equal TextFilter.find_by_name(this_blog.text_filter), assigns(:page).text_filter
  34.     post :new, :page => { :name => "new_page", :title => "New Page Title",
  35.       :body => "Emphasis _mine_, arguments *strong*" }
  36.     new_page = Page.find(:first, :order => "id DESC")
  37.     assert_equal "new_page", new_page.name
  38.     assert_response :redirect, :action => "show", :id => new_page.id
  39.     # XXX: The flash is currently being made available improperly to tests (scoop)
  40.     #assert_equal "Page was successfully created.", flash[:notice]
  41.   end
  42.   it "test_edit" do
  43.     get :edit, :id => contents(:markdown_page).id
  44.     assert_response :success
  45.     assert_template "edit"
  46.     assert_not_nil assigns(:page)
  47.     assert_equal contents(:markdown_page), assigns(:page)
  48.     post :edit, :id => contents(:markdown_page).id, :page => { :name => "markdown-page", :title => "Markdown Page",
  49.         :body => "Adding a [link](http://www.typosphere.org/) here" }
  50.     assert_response :redirect, :action => "show", :id => contents(:markdown_page).id
  51.     # XXX: The flash is currently being made available improperly to tests (scoop)
  52.     #assert_equal "Page was successfully updated.", flash[:notice]
  53.   end
  54.   it "test_destroy" do
  55.     post :destroy, :id => contents(:another_page).id
  56.     assert_response :redirect, :action => "list"
  57.     assert_raise(ActiveRecord::RecordNotFound) { Page.find(contents(:another_page).id) }
  58.   end
  59. end