functional tests are clean
Oleg
committed Apr 16, 2011
commit 66dc08c8ef735cb0424100898ca9e896d9951485
Showing 23
changed files with
159 additions
and 164 deletions
app/controllers/cms_admin/base_controller.rb
+8
-9
| @@ | @@ -13,16 +13,15 @@ class CmsAdmin::BaseController < ActionController::Base |
| protected | |
| def load_admin_cms_site | |
| - | hostname = ComfortableMexicanSofa.config.override_host || request.host.downcase |
| - | @cms_site = CmsSite.find_by_hostname!(hostname) |
| - | |
| - | rescue ActiveRecord::RecordNotFound |
| + | hostname = request.host.downcase |
| + | @cms_site = Cms::Site.find_by_hostname!(hostname) |
| - | if ComfortableMexicanSofa.config.auto_manage_sites |
| - | if CmsSite.count == 0 |
| - | @cms_site = CmsSite.create!(:label => 'Default Site', :hostname => hostname) |
| - | elsif CmsSite.count == 1 |
| - | @cms_site = CmsSite.first |
| + | rescue ActiveRecord::RecordNotFound |
| + | if Cms::Site.count == 0 |
| + | @cms_site = Cms::Site.create!(:label => 'Default Site', :hostname => hostname) |
| + | else |
| + | unless ComfortableMexicanSofa.config.enable_multiple_sites |
| + | @cms_site = Cms::Site.first |
| @cms_site.update_attribute(:hostname, hostname) | |
| end | |
| end | |
app/controllers/cms_admin/layouts_controller.rb
+5
-5
| @@ | @@ -4,8 +4,8 @@ class CmsAdmin::LayoutsController < CmsAdmin::BaseController |
| before_filter :load_cms_layout, :only => [:edit, :update, :destroy] | |
| def index | |
| - | return redirect_to :action => :new if @cms_site.cms_layouts.count == 0 |
| - | @cms_layouts = @cms_site.cms_layouts.roots |
| + | return redirect_to :action => :new if @cms_site.layouts.count == 0 |
| + | @cms_layouts = @cms_site.layouts.roots |
| end | |
| def new | |
| @@ | @@ -43,13 +43,13 @@ class CmsAdmin::LayoutsController < CmsAdmin::BaseController |
| protected | |
| def build_cms_layout | |
| - | @cms_layout = @cms_site.cms_layouts.new(params[:cms_layout]) |
| - | @cms_layout.parent ||= CmsLayout.find_by_id(params[:parent_id]) |
| + | @cms_layout = @cms_site.layouts.new(params[:cms_layout]) |
| + | @cms_layout.parent ||= Cms::Layout.find_by_id(params[:parent_id]) |
| @cms_layout.content ||= '{{ cms:page:content:text }}' | |
| end | |
| def load_cms_layout | |
| - | @cms_layout = @cms_site.cms_layouts.find(params[:id]) |
| + | @cms_layout = @cms_site.layouts.find(params[:id]) |
| rescue ActiveRecord::RecordNotFound | |
| flash[:error] = 'Layout not found' | |
| redirect_to :action => :index | |
app/controllers/cms_admin/pages_controller.rb
+14
-14
| @@ | @@ -7,8 +7,8 @@ class CmsAdmin::PagesController < CmsAdmin::BaseController |
| before_filter :build_upload_file, :only => [:new, :edit] | |
| def index | |
| - | return redirect_to :action => :new if @cms_site.cms_pages.count == 0 |
| - | @cms_pages = [@cms_site.cms_pages.root].compact |
| + | return redirect_to :action => :new if @cms_site.pages.count == 0 |
| + | @cms_pages = [@cms_site.pages.root].compact |
| end | |
| def new | |
| @@ | @@ -44,12 +44,12 @@ class CmsAdmin::PagesController < CmsAdmin::BaseController |
| end | |
| def form_blocks | |
| - | @cms_page = @cms_site.cms_pages.find_by_id(params[:id]) || @cms_site.cms_pages.new |
| - | @cms_page.cms_layout = @cms_site.cms_layouts.find_by_id(params[:layout_id]) |
| + | @cms_page = @cms_site.pages.find_by_id(params[:id]) || @cms_site.pages.new |
| + | @cms_page.layout = @cms_site.layouts.find_by_id(params[:layout_id]) |
| end | |
| def toggle_branch | |
| - | @cms_page = @cms_site.cms_pages.find(params[:id]) |
| + | @cms_page = @cms_site.pages.find(params[:id]) |
| s = (session[:cms_page_tree] ||= []) | |
| id = @cms_page.id.to_s | |
| s.member?(id) ? s.delete(id) : s << id | |
| @@ | @@ -59,7 +59,7 @@ class CmsAdmin::PagesController < CmsAdmin::BaseController |
| def reorder | |
| (params[:cms_page] || []).each_with_index do |id, index| | |
| - | if (cms_page = CmsPage.find_by_id(id)) |
| + | if (cms_page = Cms::Page.find_by_id(id)) |
| cms_page.update_attribute(:position, index) | |
| end | |
| end | |
| @@ | @@ -69,26 +69,26 @@ class CmsAdmin::PagesController < CmsAdmin::BaseController |
| protected | |
| def check_for_layouts | |
| - | if CmsLayout.count == 0 |
| + | if @cms_site.layouts.count == 0 |
| flash[:error] = 'No Layouts found. Please create one.' | |
| redirect_to new_cms_admin_layout_path | |
| end | |
| end | |
| def build_cms_page | |
| - | @cms_page = @cms_site.cms_pages.new(params[:cms_page]) |
| - | @cms_page.parent ||= (CmsPage.find_by_id(params[:parent_id]) || @cms_site.cms_pages.root) |
| - | @cms_page.cms_layout ||= (@cms_page.parent && @cms_page.parent.cms_layout || @cms_site.cms_layouts.first) |
| + | @cms_page = @cms_site.pages.new(params[:cms_page]) |
| + | @cms_page.parent ||= (@cms_site.pages.find_by_id(params[:parent_id]) || @cms_site.pages.root) |
| + | @cms_page.layout ||= (@cms_page.parent && @cms_page.parent.layout || @cms_site.layouts.first) |
| end | |
| def build_upload_file | |
| - | @upload = CmsUpload.new |
| + | @upload = Cms::Upload.new |
| end | |
| def load_cms_page | |
| - | @cms_page = @cms_site.cms_pages.find(params[:id]) |
| + | @cms_page = @cms_site.pages.find(params[:id]) |
| @cms_page.attributes = params[:cms_page] | |
| - | @cms_page.cms_layout ||= (@cms_page.parent && @cms_page.parent.cms_layout || @cms_site.cms_layouts.first) |
| + | @cms_page.layout ||= (@cms_page.parent && @cms_page.parent.layout || @cms_site.layouts.first) |
| rescue ActiveRecord::RecordNotFound | |
| flash[:error] = 'Page not found' | |
| redirect_to :action => :index | |
| @@ | @@ -96,7 +96,7 @@ protected |
| def preview_cms_page | |
| if params[:preview] | |
| - | layout = @cms_page.cms_layout.app_layout.blank?? false : @cms_page.cms_layout.app_layout |
| + | layout = @cms_page.layout.app_layout.blank?? false : @cms_page.layout.app_layout |
| render :inline => @cms_page.content(true), :layout => layout | |
| end | |
| end | |
app/controllers/cms_admin/sites_controller.rb
+4
-4
| @@ | @@ -6,8 +6,8 @@ class CmsAdmin::SitesController < CmsAdmin::BaseController |
| before_filter :load_cms_site, :only => [:edit, :update, :destroy] | |
| def index | |
| - | return redirect_to :action => :new if CmsSite.count == 0 |
| - | @cms_sites = CmsSite.all |
| + | return redirect_to :action => :new if Cms::Site.count == 0 |
| + | @cms_sites = Cms::Site.all |
| end | |
| def new | |
| @@ | @@ -45,12 +45,12 @@ class CmsAdmin::SitesController < CmsAdmin::BaseController |
| protected | |
| def build_cms_site | |
| - | @cms_site = CmsSite.new(params[:cms_site]) |
| + | @cms_site = Cms::Site.new(params[:cms_site]) |
| @cms_site.hostname ||= request.host.downcase | |
| end | |
| def load_cms_site | |
| - | @cms_site = CmsSite.find(params[:id]) |
| + | @cms_site = Cms::Site.find(params[:id]) |
| rescue ActiveRecord::RecordNotFound | |
| flash[:error] = 'Site not found' | |
| redirect_to :action => :index | |
app/controllers/cms_admin/snippets_controller.rb
+4
-4
| @@ | @@ -4,8 +4,8 @@ class CmsAdmin::SnippetsController < CmsAdmin::BaseController |
| before_filter :load_cms_snippet, :only => [:edit, :update, :destroy] | |
| def index | |
| - | return redirect_to :action => :new if @cms_site.cms_snippets.count == 0 |
| - | @cms_snippets = @cms_site.cms_snippets.all(:order => 'label') |
| + | return redirect_to :action => :new if @cms_site.snippets.count == 0 |
| + | @cms_snippets = @cms_site.snippets.all(:order => 'label') |
| end | |
| def new | |
| @@ | @@ -43,11 +43,11 @@ class CmsAdmin::SnippetsController < CmsAdmin::BaseController |
| protected | |
| def build_cms_snippet | |
| - | @cms_snippet = @cms_site.cms_snippets.new(params[:cms_snippet]) |
| + | @cms_snippet = @cms_site.snippets.new(params[:cms_snippet]) |
| end | |
| def load_cms_snippet | |
| - | @cms_snippet = @cms_site.cms_snippets.find(params[:id]) |
| + | @cms_snippet = @cms_site.snippets.find(params[:id]) |
| rescue ActiveRecord::RecordNotFound | |
| flash[:error] = 'Snippet not found' | |
| redirect_to :action => :index | |
app/controllers/cms_admin/uploads_controller.rb
+2
-2
| @@ | @@ -7,7 +7,7 @@ class CmsAdmin::UploadsController < CmsAdmin::BaseController |
| end | |
| def create | |
| - | @cms_upload = @cms_site.cms_uploads.create!(:file => params[:file]) |
| + | @cms_upload = @cms_site.uploads.create!(:file => params[:file]) |
| render :partial => 'file', :object => @cms_upload | |
| rescue ActiveRecord::RecordInvalid | |
| render :nothing => true, :status => :bad_request | |
| @@ | @@ -20,7 +20,7 @@ class CmsAdmin::UploadsController < CmsAdmin::BaseController |
| protected | |
| def load_cms_upload | |
| - | @cms_upload = @cms_site.cms_uploads.find(params[:id]) |
| + | @cms_upload = @cms_site.uploads.find(params[:id]) |
| rescue ActiveRecord::RecordNotFound | |
| render :nothing => true | |
| end | |
app/controllers/cms_content_controller.rb
+9
-5
| @@ | @@ -7,7 +7,7 @@ class CmsContentController < ApplicationController |
| caches_page :render_css, :render_js, :if => Proc.new { |c| ComfortableMexicanSofa.config.enable_caching } | |
| def render_html(status = 200) | |
| - | layout = @cms_page.cms_layout.app_layout.blank?? false : @cms_page.cms_layout.app_layout |
| + | layout = @cms_page.layout.app_layout.blank?? false : @cms_page.layout.app_layout |
| render :inline => @cms_page.content, :layout => layout, :status => status | |
| end | |
| @@ | @@ -22,17 +22,21 @@ class CmsContentController < ApplicationController |
| protected | |
| def load_cms_site | |
| - | @cms_site = CmsSite.find_by_hostname!(ComfortableMexicanSofa.config.override_host || request.host.downcase) |
| + | @cms_site = if ComfortableMexicanSofa.config.enable_multiple_sites |
| + | Cms::Site.find_by_hostname!(request.host.downcase) |
| + | else |
| + | Cms::Site.first |
| + | end |
| rescue ActiveRecord::RecordNotFound | |
| render :text => 'Site Not Found', :status => 404 | |
| end | |
| def load_cms_page | |
| - | @cms_page = @cms_site.cms_pages.published.find_by_full_path!("/#{params[:cms_path]}") |
| + | @cms_page = @cms_site.pages.published.find_by_full_path!("/#{params[:cms_path]}") |
| return redirect_to(@cms_page.target_page.full_path) if @cms_page.target_page | |
| rescue ActiveRecord::RecordNotFound | |
| - | if @cms_page = @cms_site.cms_pages.published.find_by_full_path('/404') |
| + | if @cms_page = @cms_site.pages.published.find_by_full_path('/404') |
| render_html(404) | |
| else | |
| render :text => 'Page Not Found', :status => 404 | |
| @@ | @@ -40,7 +44,7 @@ protected |
| end | |
| def load_cms_layout | |
| - | @cms_layout = @cms_site.cms_layouts.find_by_slug!(params[:id]) |
| + | @cms_layout = @cms_site.layouts.find_by_slug!(params[:id]) |
| rescue ActiveRecord::RecordNotFound | |
| render :nothing => true, :status => 404 | |
| end | |
app/views/cms_admin/layouts/_form.html.erb
+2
-2
| @@ | @@ -4,10 +4,10 @@ |
| <%= form.text_field :label, :label => 'Layout Name', :id => (@cms_layout.new_record?? 'slugify' : nil)%> | |
| <%= form.text_field :slug, :id => 'slug' %> | |
| - | <% if (options = CmsLayout.options_for_select(@cms_site, @cms_layout)).present? %> |
| + | <% if (options = Cms::Layout.options_for_select(@cms_site, @cms_layout)).present? %> |
| <%= form.select :parent_id, [['---- Select Parent Layout ----', nil]] + options %> | |
| <% end %> | |
| - | <% if (options = CmsLayout.app_layouts_for_select).present? %> |
| + | <% if (options = Cms::Layout.app_layouts_for_select).present? %> |
| <%= form.select :app_layout, [['---- Select Application Layout ----', nil]] + options %> | |
| <% end %> | |
app/views/cms_admin/pages/_form.html.erb
+5
-5
| @@ | @@ -12,16 +12,16 @@ |
| <%= form.text_field :label, :id => (@cms_page.new_record?? 'slugify' : nil) %> | |
| <div class='page_form_extras'> | |
| - | <% unless @cms_site.cms_pages.count == 0 || @cms_site.cms_pages.root == @cms_page%> |
| + | <% unless @cms_site.pages.count == 0 || @cms_site.pages.root == @cms_page%> |
| <%= form.text_field :slug, :id => 'slug' %> | |
| <% end %> | |
| - | <% if (options = CmsLayout.options_for_select(@cms_site)).present? %> |
| - | <%= form.select :cms_layout_id, options, {}, 'data-page-id' => @cms_page.id.to_i, :label => 'Layout' %> |
| + | <% if (options = Cms::Layout.options_for_select(@cms_site)).present? %> |
| + | <%= form.select :layout_id, options, {}, 'data-page-id' => @cms_page.id.to_i, :label => 'Layout' %> |
| <% end %> | |
| - | <% if (options = CmsPage.options_for_select(@cms_site, @cms_page)).present? %> |
| + | <% if (options = Cms::Page.options_for_select(@cms_site, @cms_page)).present? %> |
| <%= form.select :parent_id, options %> | |
| <% end %> | |
| - | <% if (options = CmsPage.options_for_select(@cms_site, @cms_page, nil, 0, false)).present? %> |
| + | <% if (options = Cms::Page.options_for_select(@cms_site, @cms_page, nil, 0, false)).present? %> |
| <%= form.select :target_page_id, [['---- No Redirect ----', nil]] + options, :label => 'Redirect To Page' %> | |
| <% end %> | |
| <%= cms_hook :page_form, :object => form %> | |
app/views/cms_admin/pages/_form_blocks.html.erb
+1
-1
| @@ | @@ -1,6 +1,6 @@ |
| <div id='form_blocks'> | |
| <%= fields_for :cms_blocks, :builder => ComfortableMexicanSofa::FormBuilder do |cms_blocks| %> | |
| - | <% @cms_page.cms_tags(true).each do |tag| %> |
| + | <% @cms_page.tags(true).each do |tag| %> |
| <%= cms_blocks.send(tag.class.name.underscore.downcase.idify, tag)%> | |
| <% end %> | |
| <% end %> | |
app/views/cms_admin/uploads/_index.html.erb
+1
-1
| @@ | @@ -3,7 +3,7 @@ |
| <a id='uploader_button' href='#' class='big button'>Upload Files</a> | |
| </div> | |
| <div id='uploaded_files'> | |
| - | <% CmsUpload.order('file_file_name').all.each do |file| %> |
| + | <% Cms::Upload.order('file_file_name').all.each do |file| %> |
| <%= render :partial => 'cms_admin/uploads/file', :object => file %> | |
| <% end %> | |
| </div> | |
app/views/layouts/cms_admin.html.erb
+1
-1
| @@ | @@ -14,7 +14,7 @@ |
| <div class='body_wrapper'> | |
| <div class='left_column'> | |
| <div class='left_column_content'> | |
| - | <% unless ComfortableMexicanSofa.config.auto_manage_sites %> |
| + | <% if ComfortableMexicanSofa.config.enable_multiple_sites %> |
| <%= active_link_to 'Sites', cms_admin_sites_path %> | |
| <% end %> | |
| <%= active_link_to 'Layouts', cms_admin_layouts_path %> | |
config/initializers/comfortable_mexican_sofa.rb
+3
-8
| @@ | @@ -19,8 +19,9 @@ ComfortableMexicanSofa.configure do |config| |
| # should be the hostname of the site. Example: my-app.local | |
| # config.seed_data_path = File.expand_path('db/cms_seeds', Rails.root) | |
| - | # Let CMS handle site creation and management. Enabled by default. |
| - | # config.auto_manage_sites = true |
| + | # If you enable this setting you'll be able to serve completely different set |
| + | # of sites with their own layouts and pages. |
| + | # config.enable_multiple_sites = false |
| # By default you cannot have irb code inside your layouts/pages/snippets. | |
| # Generally this is to prevent putting something like this: | |
| @@ | @@ -38,12 +39,6 @@ ComfortableMexicanSofa.configure do |config| |
| # filesystem see: http://rdoc.info/gems/paperclip/2.3.8/Paperclip/Storage/S3 | |
| # config.upload_file_options = {:storage => :filesystem} | |
| - | # Override the host used to look up the active CmsSite. If you are not |
| - | # planning on using the site features, I recommend you set this override to |
| - | # limit unexpected "Site not found" errors when you try to hit app01.example.com |
| - | # instead of www.example.com. |
| - | # config.override_host = "www.example.com" |
| - | |
| end | |
| # Default credentials for ComfortableMexicanSofa::HttpAuth | |
comfortable_mexican_sofa/cms_tag.rb b/lib/comfortable_mexican_sofa/cms_tag.rb
+1
-1
| @@ | @@ -68,7 +68,7 @@ module CmsTag |
| # as a default. | |
| def render | |
| # cleaning content from possible irb stuff. Partial and Helper tags are OK. | |
| - | if ComfortableMexicanSofa.config.disable_irb && ![CmsTag::Partial, CmsTag::Helper].member?(self.class) |
| + | if !ComfortableMexicanSofa.config.allow_irb && ![CmsTag::Partial, CmsTag::Helper].member?(self.class) |
| content.to_s.gsub('<%', '<%').gsub('%>', '%>') | |
| else | |
| content.to_s | |
comfortable_mexican_sofa/configuration.rb b/lib/comfortable_mexican_sofa/configuration.rb
+13
-17
| @@ | @@ -18,11 +18,11 @@ class ComfortableMexicanSofa::Configuration |
| # to something else | |
| attr_accessor :admin_route_redirect | |
| - | # Let CMS handle site creation and management. Enabled by default. |
| - | attr_accessor :auto_manage_sites |
| + | # Are you running multiple sites from single install? Default assumption is 'No' |
| + | attr_accessor :enable_multiple_sites |
| - | # Not allowing irb code to be run inside page content. True by default. |
| - | attr_accessor :disable_irb |
| + | # Not allowing irb code to be run inside page content. False by default. |
| + | attr_accessor :allow_irb |
| # Caching for css/js. For admin layout and ones for cms content. Enabled by default. | |
| attr_accessor :enable_caching | |
| @@ | @@ -30,21 +30,17 @@ class ComfortableMexicanSofa::Configuration |
| # Upload settings | |
| attr_accessor :upload_file_options | |
| - | # Override the hostname when looking up which site to use |
| - | attr_accessor :override_host |
| - | |
| # Configuration defaults | |
| def initialize | |
| - | @cms_title = 'ComfortableMexicanSofa MicroCMS' |
| - | @authentication = 'ComfortableMexicanSofa::HttpAuth' |
| - | @seed_data_path = nil |
| - | @admin_route_prefix = 'cms-admin' |
| - | @admin_route_redirect = "/#{@admin_route_prefix}/pages" |
| - | @auto_manage_sites = true |
| - | @disable_irb = true |
| - | @enable_caching = true |
| - | @upload_file_options = {} |
| - | @override_host = nil |
| + | @cms_title = 'ComfortableMexicanSofa MicroCMS' |
| + | @authentication = 'ComfortableMexicanSofa::HttpAuth' |
| + | @seed_data_path = nil |
| + | @admin_route_prefix = 'cms-admin' |
| + | @admin_route_redirect = "/#{@admin_route_prefix}/pages" |
| + | @enable_multiple_sites = false |
| + | @allow_irb = false |
| + | @enable_caching = true |
| + | @upload_file_options = {} |
| end | |
| end | |
test/functional/cms_admin/layouts_controller_test.rb
+6
-6
| @@ | @@ -10,7 +10,7 @@ class CmsAdmin::LayoutsControllerTest < ActionController::TestCase |
| end | |
| def test_get_index_with_no_layouts | |
| - | CmsLayout.delete_all |
| + | Cms::Layout.delete_all |
| get :index | |
| assert_response :redirect | |
| assert_redirected_to :action => :new | |
| @@ | @@ -42,22 +42,22 @@ class CmsAdmin::LayoutsControllerTest < ActionController::TestCase |
| end | |
| def test_creation | |
| - | assert_difference 'CmsLayout.count' do |
| + | assert_difference 'Cms::Layout.count' do |
| post :create, :cms_layout => { | |
| :label => 'Test Layout', | |
| :slug => 'test', | |
| :content => 'Test {{cms:page:content}}' | |
| } | |
| assert_response :redirect | |
| - | layout = CmsLayout.last |
| - | assert_equal cms_sites(:default), layout.cms_site |
| + | layout = Cms::Layout.last |
| + | assert_equal cms_sites(:default), layout.site |
| assert_redirected_to :action => :edit, :id => layout | |
| assert_equal 'Layout created', flash[:notice] | |
| end | |
| end | |
| def test_creation_failure | |
| - | assert_no_difference 'CmsLayout.count' do |
| + | assert_no_difference 'Cms::Layout.count' do |
| post :create, :cms_layout => { } | |
| assert_response :success | |
| assert_template :new | |
| @@ | @@ -92,7 +92,7 @@ class CmsAdmin::LayoutsControllerTest < ActionController::TestCase |
| end | |
| def test_destroy | |
| - | assert_difference 'CmsLayout.count', -1 do |
| + | assert_difference 'Cms::Layout.count', -1 do |
| delete :destroy, :id => cms_layouts(:default) | |
| assert_response :redirect | |
| assert_redirected_to :action => :index | |
test/functional/cms_admin/pages_controller_test.rb
+44
-44
| @@ | @@ -10,7 +10,7 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| end | |
| def test_get_index_with_no_pages | |
| - | CmsPage.delete_all |
| + | Cms::Page.delete_all |
| get :index | |
| assert_response :redirect | |
| assert_redirected_to :action => :new | |
| @@ | @@ -20,7 +20,7 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| get :new | |
| assert_response :success | |
| assert assigns(:cms_page) | |
| - | assert_equal cms_layouts(:default), assigns(:cms_page).cms_layout |
| + | assert_equal cms_layouts(:default), assigns(:cms_page).layout |
| assert_template :new | |
| assert_select 'form[action=/cms-admin/pages]' | |
| @@ | @@ -117,22 +117,22 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| def test_get_edit_with_blank_layout | |
| page = cms_pages(:default) | |
| - | page.update_attribute(:cms_layout_id, nil) |
| + | page.update_attribute(:layout_id, nil) |
| get :edit, :id => page | |
| assert_response :success | |
| assert assigns(:cms_page) | |
| - | assert assigns(:cms_page).cms_layout |
| + | assert assigns(:cms_page).layout |
| end | |
| def test_creation | |
| - | assert_difference 'CmsPage.count' do |
| - | assert_difference 'CmsBlock.count', 2 do |
| + | assert_difference 'Cms::Page.count' do |
| + | assert_difference 'Cms::Block.count', 2 do |
| post :create, :cms_page => { | |
| - | :label => 'Test Page', |
| - | :slug => 'test-page', |
| - | :parent_id => cms_pages(:default).id, |
| - | :cms_layout_id => cms_layouts(:default).id, |
| - | :cms_blocks_attributes => [ |
| + | :label => 'Test Page', |
| + | :slug => 'test-page', |
| + | :parent_id => cms_pages(:default).id, |
| + | :layout_id => cms_layouts(:default).id, |
| + | :blocks_attributes => [ |
| { :label => 'default_page_text', | |
| :content => 'content content' }, | |
| { :label => 'default_field_text', | |
| @@ | @@ -140,8 +140,8 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| ] | |
| } | |
| assert_response :redirect | |
| - | page = CmsPage.last |
| - | assert_equal cms_sites(:default), page.cms_site |
| + | page = Cms::Page.last |
| + | assert_equal cms_sites(:default), page.site |
| assert_redirected_to :action => :edit, :id => page | |
| assert_equal 'Page saved', flash[:notice] | |
| end | |
| @@ | @@ -149,10 +149,10 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| end | |
| def test_creation_failure | |
| - | assert_no_difference ['CmsPage.count', 'CmsBlock.count'] do |
| + | assert_no_difference ['Cms::Page.count', 'Cms::Block.count'] do |
| post :create, :cms_page => { | |
| - | :cms_layout_id => cms_layouts(:default).id, |
| - | :cms_blocks_attributes => [ |
| + | :layout_id => cms_layouts(:default).id, |
| + | :blocks_attributes => [ |
| { :label => 'default_page_text', | |
| :content => 'content content' }, | |
| { :label => 'default_field_text', | |
| @@ | @@ -161,8 +161,8 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| } | |
| assert_response :success | |
| page = assigns(:cms_page) | |
| - | assert_equal 2, page.cms_blocks.size |
| - | assert_equal ['content content', 'title content'], page.cms_blocks.collect{|b| b.content} |
| + | assert_equal 2, page.blocks.size |
| + | assert_equal ['content content', 'title content'], page.blocks.collect{|b| b.content} |
| assert_template :new | |
| assert_equal 'Failed to create page', flash[:error] | |
| end | |
| @@ | @@ -170,7 +170,7 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| def test_update | |
| page = cms_pages(:default) | |
| - | assert_no_difference 'CmsBlock.count' do |
| + | assert_no_difference 'Cms::Block.count' do |
| put :update, :id => page, :cms_page => { | |
| :label => 'Updated Label' | |
| } | |
| @@ | @@ -184,11 +184,11 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| def test_update_with_layout_change | |
| page = cms_pages(:default) | |
| - | assert_difference 'CmsBlock.count', 1 do |
| + | assert_difference 'Cms::Block.count', 1 do |
| put :update, :id => page, :cms_page => { | |
| - | :label => 'Updated Label', |
| - | :cms_layout_id => cms_layouts(:nested).id, |
| - | :cms_blocks_attributes => [ |
| + | :label => 'Updated Label', |
| + | :layout_id => cms_layouts(:nested).id, |
| + | :blocks_attributes => [ |
| { :label => 'content', | |
| :content => 'new_page_text_content', | |
| :id => cms_blocks(:default_page_text).id }, | |
| @@ | @@ -201,7 +201,7 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| assert_redirected_to :action => :edit, :id => page | |
| assert_equal 'Page updated', flash[:notice] | |
| assert_equal 'Updated Label', page.label | |
| - | assert_equal ['new_page_text_content', 'default_field_text_content', 'new_page_string_content'], page.cms_blocks.collect{|b| b.content} |
| + | assert_equal ['new_page_text_content', 'default_field_text_content', 'new_page_string_content'], page.blocks.collect{|b| b.content} |
| end | |
| end | |
| @@ | @@ -216,8 +216,8 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| end | |
| def test_destroy | |
| - | assert_difference 'CmsPage.count', -2 do |
| - | assert_difference 'CmsBlock.count', -2 do |
| + | assert_difference 'Cms::Page.count', -2 do |
| + | assert_difference 'Cms::Block.count', -2 do |
| delete :destroy, :id => cms_pages(:default) | |
| assert_response :redirect | |
| assert_redirected_to :action => :index | |
| @@ | @@ -230,13 +230,13 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| xhr :get, :form_blocks, :id => cms_pages(:default), :layout_id => cms_layouts(:nested).id | |
| assert_response :success | |
| assert assigns(:cms_page) | |
| - | assert_equal 2, assigns(:cms_page).cms_tags.size |
| + | assert_equal 2, assigns(:cms_page).tags.size |
| assert_template :form_blocks | |
| xhr :get, :form_blocks, :id => cms_pages(:default), :layout_id => cms_layouts(:default).id | |
| assert_response :success | |
| assert assigns(:cms_page) | |
| - | assert_equal 4, assigns(:cms_page).cms_tags.size |
| + | assert_equal 4, assigns(:cms_page).tags.size |
| assert_template :form_blocks | |
| end | |
| @@ | @@ -244,18 +244,18 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| xhr :get, :form_blocks, :id => 0, :layout_id => cms_layouts(:default).id | |
| assert_response :success | |
| assert assigns(:cms_page) | |
| - | assert_equal 3, assigns(:cms_page).cms_tags.size |
| + | assert_equal 3, assigns(:cms_page).tags.size |
| assert_template :form_blocks | |
| end | |
| def test_creation_preview | |
| - | assert_no_difference 'CmsPage.count' do |
| + | assert_no_difference 'Cms::Page.count' do |
| post :create, :preview => 'Preview', :cms_page => { | |
| - | :label => 'Test Page', |
| - | :slug => 'test-page', |
| - | :parent_id => cms_pages(:default).id, |
| - | :cms_layout_id => cms_layouts(:default).id, |
| - | :cms_blocks_attributes => [ |
| + | :label => 'Test Page', |
| + | :slug => 'test-page', |
| + | :parent_id => cms_pages(:default).id, |
| + | :layout_id => cms_layouts(:default).id, |
| + | :blocks_attributes => [ |
| { :label => 'default_page_text', | |
| :content => 'preview content' } | |
| ] | |
| @@ | @@ -267,10 +267,10 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| def test_update_preview | |
| page = cms_pages(:default) | |
| - | assert_no_difference 'CmsPage.count' do |
| + | assert_no_difference 'Cms::Page.count' do |
| put :update, :preview => 'Preview', :id => page, :cms_page => { | |
| :label => 'Updated Label', | |
| - | :cms_blocks_attributes => [ |
| + | :blocks_attributes => [ |
| { :label => 'default_page_text', | |
| :content => 'preview content', | |
| :id => cms_blocks(:default_page_text).id} | |
| @@ | @@ -284,7 +284,7 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| end | |
| def test_get_new_with_no_layout | |
| - | CmsLayout.destroy_all |
| + | Cms::Layout.destroy_all |
| get :new | |
| assert_response :redirect | |
| assert_redirected_to new_cms_admin_layout_path | |
| @@ | @@ -292,7 +292,7 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| end | |
| def test_get_edit_with_no_layout | |
| - | CmsLayout.destroy_all |
| + | Cms::Layout.destroy_all |
| page = cms_pages(:default) | |
| get :edit, :id => page | |
| assert_response :redirect | |
| @@ | @@ -313,11 +313,11 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase |
| def test_reorder | |
| page_one = cms_pages(:child) | |
| - | page_two = cms_sites(:default).cms_pages.create!( |
| - | :parent => cms_pages(:default), |
| - | :cms_layout => cms_layouts(:default), |
| - | :label => 'test', |
| - | :slug => 'test' |
| + | page_two = cms_sites(:default).pages.create!( |
| + | :parent => cms_pages(:default), |
| + | :layout => cms_layouts(:default), |
| + | :label => 'test', |
| + | :slug => 'test' |
| ) | |
| assert_equal 0, page_one.position | |
| assert_equal 1, page_two.position | |
test/functional/cms_admin/sites_controller_test.rb
+5
-5
| @@ | @@ -10,7 +10,7 @@ class CmsAdmin::SitesControllerTest < ActionController::TestCase |
| end | |
| def test_get_index_with_no_sites | |
| - | CmsSite.delete_all |
| + | Cms::Site.delete_all |
| get :index | |
| assert_response :redirect | |
| assert_redirected_to :action => :new | |
| @@ | @@ -42,19 +42,19 @@ class CmsAdmin::SitesControllerTest < ActionController::TestCase |
| end | |
| def test_creation | |
| - | assert_difference 'CmsSite.count' do |
| + | assert_difference 'Cms::Site.count' do |
| post :create, :cms_site => { | |
| :label => 'Test Site', | |
| :hostname => 'test.site.local' | |
| } | |
| assert_response :redirect | |
| - | assert_redirected_to :action => :edit, :id => CmsSite.last |
| + | assert_redirected_to :action => :edit, :id => Cms::Site.last |
| assert_equal 'Site created', flash[:notice] | |
| end | |
| end | |
| def test_creation_failure | |
| - | assert_no_difference 'CmsSite.count' do |
| + | assert_no_difference 'Cms::Site.count' do |
| post :create, :cms_site => { } | |
| assert_response :success | |
| assert_template :new | |
| @@ | @@ -89,7 +89,7 @@ class CmsAdmin::SitesControllerTest < ActionController::TestCase |
| end | |
| def test_destroy | |
| - | assert_difference 'CmsSite.count', -1 do |
| + | assert_difference 'Cms::Site.count', -1 do |
| delete :destroy, :id => cms_sites(:default) | |
| assert_response :redirect | |
| assert_redirected_to :action => :index | |
test/functional/cms_admin/snippets_controller_test.rb
+6
-6
| @@ | @@ -10,7 +10,7 @@ class CmsAdmin::SnippetsControllerTest < ActionController::TestCase |
| end | |
| def test_get_index_with_no_snippets | |
| - | CmsSnippet.delete_all |
| + | Cms::Snippet.delete_all |
| get :index | |
| assert_response :redirect | |
| assert_redirected_to :action => :new | |
| @@ | @@ -41,22 +41,22 @@ class CmsAdmin::SnippetsControllerTest < ActionController::TestCase |
| end | |
| def test_creation | |
| - | assert_difference 'CmsSnippet.count' do |
| + | assert_difference 'Cms::Snippet.count' do |
| post :create, :cms_snippet => { | |
| :label => 'Test Snippet', | |
| :slug => 'test-snippet', | |
| :content => 'Test Content' | |
| } | |
| assert_response :redirect | |
| - | snippet = CmsSnippet.last |
| - | assert_equal cms_sites(:default), snippet.cms_site |
| + | snippet = Cms::Snippet.last |
| + | assert_equal cms_sites(:default), snippet.site |
| assert_redirected_to :action => :edit, :id => snippet | |
| assert_equal 'Snippet created', flash[:notice] | |
| end | |
| end | |
| def test_creation_failure | |
| - | assert_no_difference 'CmsSnippet.count' do |
| + | assert_no_difference 'Cms::Snippet.count' do |
| post :create, :cms_snippet => { } | |
| assert_response :success | |
| assert_template :new | |
| @@ | @@ -91,7 +91,7 @@ class CmsAdmin::SnippetsControllerTest < ActionController::TestCase |
| end | |
| def test_destroy | |
| - | assert_difference 'CmsSnippet.count', -1 do |
| + | assert_difference 'Cms::Snippet.count', -1 do |
| delete :destroy, :id => cms_snippets(:default) | |
| assert_response :redirect | |
| assert_redirected_to :action => :index | |
test/functional/cms_admin/uploads_controller_test.rb
+4
-4
| @@ | @@ -3,21 +3,21 @@ require File.expand_path('../../test_helper', File.dirname(__FILE__)) |
| class CmsAdmin::UploadsControllerTest < ActionController::TestCase | |
| def test_create | |
| - | assert_difference 'CmsUpload.count', 1 do |
| + | assert_difference 'Cms::Upload.count', 1 do |
| xhr :post, :create, :file => fixture_file_upload('files/valid_image.jpg') | |
| assert_response :success | |
| end | |
| end | |
| - | def test_create_fails |
| - | assert_no_difference 'CmsUpload.count' do |
| + | def test_create_failure |
| + | assert_no_difference 'Cms::Upload.count' do |
| xhr :post, :create, :file => nil | |
| assert_response :bad_request | |
| end | |
| end | |
| def test_destroy | |
| - | assert_difference 'CmsUpload.count', -1 do |
| + | assert_difference 'Cms::Upload.count', -1 do |
| xhr :delete, :destroy, :id => cms_uploads(:default) | |
| assert_response :success | |
| end | |
test/functional/cms_content_controller_test.rb
+11
-11
| @@ | @@ -32,13 +32,13 @@ class CmsContentControllerTest < ActionController::TestCase |
| end | |
| def test_render_page_not_found_with_custom_404 | |
| - | page = cms_sites(:default).cms_pages.create!( |
| + | page = cms_sites(:default).pages.create!( |
| :label => '404', | |
| :slug => '404', | |
| :parent_id => cms_pages(:default).id, | |
| - | :cms_layout_id => cms_layouts(:default).id, |
| + | :layout_id => cms_layouts(:default).id, |
| :is_published => '1', | |
| - | :cms_blocks_attributes => [ |
| + | :blocks_attributes => [ |
| { :label => 'default_page_text', | |
| :type => 'CmsTag::PageText', | |
| :content => 'custom 404 page content' } | |
| @@ | @@ -68,15 +68,15 @@ class CmsContentControllerTest < ActionController::TestCase |
| end | |
| def test_render_page_with_irb_disabled | |
| - | assert ComfortableMexicanSofa.config.disable_irb |
| + | assert_equal false, ComfortableMexicanSofa.config.allow_irb |
| - | irb_page = cms_sites(:default).cms_pages.create!( |
| + | irb_page = cms_sites(:default).pages.create!( |
| :label => 'irb', | |
| :slug => 'irb', | |
| :parent_id => cms_pages(:default).id, | |
| - | :cms_layout_id => cms_layouts(:default).id, |
| + | :layout_id => cms_layouts(:default).id, |
| :is_published => '1', | |
| - | :cms_blocks_attributes => [ |
| + | :blocks_attributes => [ |
| { :label => 'default_page_text', | |
| :content => 'text <%= 2 + 2 %> text' } | |
| ] | |
| @@ | @@ -87,15 +87,15 @@ class CmsContentControllerTest < ActionController::TestCase |
| end | |
| def test_render_page_with_irb_enabled | |
| - | ComfortableMexicanSofa.config.disable_irb = false |
| + | ComfortableMexicanSofa.config.allow_irb = true |
| - | irb_page = cms_sites(:default).cms_pages.create!( |
| + | irb_page = cms_sites(:default).pages.create!( |
| :label => 'irb', | |
| :slug => 'irb', | |
| :parent_id => cms_pages(:default).id, | |
| - | :cms_layout_id => cms_layouts(:default).id, |
| + | :layout_id => cms_layouts(:default).id, |
| :is_published => '1', | |
| - | :cms_blocks_attributes => [ |
| + | :blocks_attributes => [ |
| { :label => 'default_page_text', | |
| :content => 'text <%= 2 + 2 %> text' } | |
| ] | |
test/test_helper.rb
+8
-8
| @@ | @@ -14,14 +14,14 @@ class ActiveSupport::TestCase |
| # resetting default configuration | |
| def reset_config | |
| ComfortableMexicanSofa.configure do |config| | |
| - | config.cms_title = 'ComfortableMexicanSofa MicroCMS' |
| - | config.authentication = 'ComfortableMexicanSofa::HttpAuth' |
| - | config.seed_data_path = nil |
| - | config.admin_route_prefix = 'cms-admin' |
| - | config.admin_route_redirect = "/cms-admin/pages" |
| - | config.auto_manage_sites = true |
| - | config.disable_irb = true |
| - | config.enable_caching = true |
| + | config.cms_title = 'ComfortableMexicanSofa MicroCMS' |
| + | config.authentication = 'ComfortableMexicanSofa::HttpAuth' |
| + | config.seed_data_path = nil |
| + | config.admin_route_prefix = 'cms-admin' |
| + | config.admin_route_redirect = "/cms-admin/pages" |
| + | config.enable_multiple_sites = false |
| + | config.allow_irb = false |
| + | config.enable_caching = true |
| end | |
| ComfortableMexicanSofa::HttpAuth.username = 'username' | |
| ComfortableMexicanSofa::HttpAuth.password = 'password' | |
test/unit/cms_configuration_test.rb
+2
-1
| @@ | @@ -9,7 +9,8 @@ class CmsConfigurationTest < ActiveSupport::TestCase |
| assert_equal nil, config.seed_data_path | |
| assert_equal 'cms-admin', config.admin_route_prefix | |
| assert_equal '/cms-admin/pages', config.admin_route_redirect | |
| - | assert_equal true, config.disable_irb |
| + | assert_equal false, config.enable_multiple_sites |
| + | assert_equal false, config.allow_irb |
| assert_equal true, config.enable_caching | |
| end | |