tb_cms 1.2.3 → 1.3.beta1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +1 -1
  3. data/app/assets/javascripts/admin/cms/menu_items.js +39 -17
  4. data/app/assets/stylesheets/admin/cms/application.css +11 -0
  5. data/app/controllers/admin/menu_items_controller.rb +103 -113
  6. data/app/controllers/admin/menus_controller.rb +52 -53
  7. data/app/controllers/admin/pages_controller.rb +107 -111
  8. data/app/controllers/admin/snippets_controller.rb +16 -16
  9. data/app/controllers/cms/sitemaps_controller.rb +5 -5
  10. data/app/controllers/pages_controller.rb +30 -34
  11. data/app/helpers/cms/application_helper.rb +184 -212
  12. data/app/models/concerns/cms_deprecated_multisite.rb +3 -3
  13. data/app/models/spud_menu.rb +4 -4
  14. data/app/models/spud_menu_item.rb +58 -61
  15. data/app/models/spud_page.rb +63 -67
  16. data/app/models/spud_page_partial.rb +42 -44
  17. data/app/models/spud_page_partial_revision.rb +3 -3
  18. data/app/models/spud_snippet.rb +7 -7
  19. data/app/views/admin/menu_items/index.html.erb +1 -1
  20. data/lib/generators/spud/cms/layout_generator.rb +8 -8
  21. data/lib/spud_cms/configuration.rb +10 -10
  22. data/lib/spud_cms/engine.rb +28 -28
  23. data/lib/spud_cms/liquid_snippet.rb +5 -7
  24. data/lib/spud_cms/page_route.rb +1 -1
  25. data/lib/spud_cms/template_parser.rb +35 -40
  26. data/lib/spud_cms/test_files.rb +6 -6
  27. data/lib/spud_cms/version.rb +3 -3
  28. data/spec/controllers/admin/menu_items_controller_spec.rb +54 -56
  29. data/spec/controllers/admin/menus_controller_spec.rb +31 -37
  30. data/spec/controllers/admin/pages_controller_spec.rb +31 -36
  31. data/spec/controllers/admin/snippets_controller_spec.rb +1 -1
  32. data/spec/controllers/pages_controller_spec.rb +21 -21
  33. data/spec/dummy/config/application.rb +3 -4
  34. data/spec/dummy/config/boot.rb +1 -1
  35. data/spec/dummy/config/environments/production.rb +1 -1
  36. data/spec/dummy/config/environments/test.rb +3 -3
  37. data/spec/dummy/config.ru +1 -1
  38. data/spec/dummy/db/migrate/20141231214447_create_spud_users.tb_core.rb +12 -12
  39. data/spec/dummy/db/migrate/20141231214448_add_time_zone_to_spud_user.tb_core.rb +0 -1
  40. data/spec/dummy/db/migrate/20141231214449_add_scope_to_spud_admin_permissions.tb_core.rb +0 -1
  41. data/spec/dummy/db/migrate/20141231214452_create_spud_permissions.tb_core.rb +3 -3
  42. data/spec/dummy/db/migrate/20141231214453_create_spud_role_permissions.tb_core.rb +2 -2
  43. data/spec/dummy/db/migrate/20141231214455_create_spud_permalinks.tb_permalinks.rb +1 -1
  44. data/spec/dummy/db/migrate/20141231214456_add_site_id_to_spud_permalinks.tb_permalinks.rb +1 -1
  45. data/spec/dummy/db/migrate/20141231214457_modify_site_id_for_spud_permalinks.tb_permalinks.rb +4 -4
  46. data/spec/dummy/db/migrate/20141231214459_create_spud_pages.tb_cms.rb +1 -1
  47. data/spec/dummy/db/migrate/20141231214461_create_spud_menu_items.tb_cms.rb +3 -3
  48. data/spec/dummy/db/migrate/20141231214463_create_spud_page_partials.tb_cms.rb +1 -1
  49. data/spec/dummy/db/migrate/20141231214464_add_visibility_to_spud_pages.tb_cms.rb +2 -2
  50. data/spec/dummy/db/migrate/20141231214466_add_use_custom_url_name_to_spud_pages.tb_cms.rb +1 -1
  51. data/spec/dummy/db/migrate/20141231214468_add_menu_id_to_spud_menu_items.tb_cms.rb +1 -1
  52. data/spec/dummy/db/migrate/20141231214469_add_classes_to_spud_menu_items.tb_cms.rb +0 -1
  53. data/spec/dummy/db/migrate/20141231214470_add_site_id_to_spud_pages.tb_cms.rb +2 -2
  54. data/spec/dummy/db/migrate/20141231214471_add_site_id_to_spud_templates.tb_cms.rb +2 -2
  55. data/spec/dummy/db/migrate/20141231214472_add_site_id_to_spud_menus.tb_cms.rb +2 -2
  56. data/spec/dummy/db/migrate/20141231214473_create_spud_page_partial_revisions.tb_cms.rb +1 -1
  57. data/spec/dummy/db/migrate/20141231214475_modify_site_id_for_spud_pages.tb_cms.rb +8 -8
  58. data/spec/dummy/db/migrate/20141231214478_create_spud_page_liquid_tags.tb_cms.rb +1 -1
  59. data/spec/dummy/db/migrate/20141231214479_create_spud_snippets.tb_cms.rb +1 -2
  60. data/spec/dummy/db/migrate/20141231214480_change_liquid_tags_to_polymorphic.tb_cms.rb +2 -2
  61. data/spec/dummy/db/migrate/20141231214481_drop_spud_page_liquid_tags.tb_cms.rb +6 -8
  62. data/spec/dummy/db/migrate/20150108164814_remove_site_id_from_cms_tables.tb_cms.rb +1 -0
  63. data/spec/dummy/db/migrate/20150911185843_add_requires_password_change_to_spud_users.tb_core.rb +1 -1
  64. data/spec/dummy/db/migrate/20160215180157_create_tb_redirects.tb_redirects.rb +3 -3
  65. data/spec/dummy/db/schema.rb +142 -153
  66. data/spec/dummy/script/rails +2 -2
  67. data/spec/helpers/cms/application_helper_spec.rb +39 -41
  68. data/spec/models/spud_menu_item_spec.rb +13 -13
  69. data/spec/models/spud_page_partial_revision_spec.rb +1 -1
  70. data/spec/models/spud_page_partial_spec.rb +19 -20
  71. data/spec/models/spud_page_spec.rb +90 -91
  72. data/spec/models/spud_snippet_spec.rb +1 -1
  73. data/spec/rails_helper.rb +12 -6
  74. data/spec/spec_helper.rb +42 -44
  75. metadata +64 -38
  76. data/spec/authlogic_helper.rb +0 -2
@@ -1,5 +1,5 @@
1
1
  module Spud
2
- module Cms
3
- VERSION = "1.2.3"
4
- end
2
+ module Cms
3
+ VERSION = '1.3.beta1'.freeze
4
+ end
5
5
  end
@@ -1,128 +1,126 @@
1
1
  require 'rails_helper'
2
2
 
3
- describe Admin::MenuItemsController, :type => :controller do
3
+ describe Admin::MenuItemsController, type: :controller do
4
4
  before(:each) do
5
- activate_authlogic
6
- u = SpudUser.new(:login => "testuser",:email => "test@testuser.com",:password => "test",:password_confirmation => "test")
7
- u.super_admin = true
8
- u.save
9
- @user = SpudUserSession.create(u)
10
- @menu = FactoryGirl.create(:spud_menu)
5
+ activate_session(admin: true)
11
6
  end
12
7
 
8
+ let (:menu) do
9
+ FactoryGirl.create(:spud_menu)
10
+ end
13
11
 
14
12
  describe 'index' do
15
- it "should return an array of menus" do
16
- 2.times {|x| s = FactoryGirl.create(:spud_menu_item,:spud_menu_id => @menu.id,:parent_id => @menu.id)}
17
- get :index,:menu_id =>@menu.id
13
+ it 'should return an array of menus' do
14
+ 2.times { |_x| s = FactoryGirl.create(:spud_menu_item, spud_menu_id: menu.id, parent_id: menu.id) }
15
+ get :index, params: { menu_id: menu.id }
18
16
 
19
17
  expect(assigns(:menu_items).count).to be > 1
20
18
  end
21
- it "should redirect if the menu is not found" do
22
- get :index,:menu_id => @menu.id + 1
19
+ it 'should redirect if the menu is not found' do
20
+ get :index, params: { menu_id: menu.id + 1 }
23
21
  expect(response).to redirect_to admin_menus_url
24
22
  end
25
23
  end
26
24
 
27
25
  describe 'new' do
28
- it "should assign a new menu" do
29
- get :new,:menu_id =>@menu.id
26
+ it 'should assign a new menu' do
27
+ get :new, params: { menu_id: menu.id }
30
28
  expect(assigns(:menu_item)).to_not be_blank
31
29
  expect(response).to be_success
32
30
  end
33
31
  end
34
32
 
35
33
  describe 'create' do
36
- it "should create a new menu item with a valid form submission" do
37
- expect {
38
- post :create,:menu_id => @menu.id, :spud_menu_item => FactoryGirl.attributes_for(:spud_menu_item,:parent_id => nil).reject{|k,v| k == 'id' || k == :spud_menu_id}
39
- }.to change(SpudMenuItem,:count).by(1)
34
+ it 'should create a new menu item with a valid form submission' do
35
+ expect do
36
+ post :create, params: { menu_id: menu.id, spud_menu_item: FactoryGirl.attributes_for(:spud_menu_item, parent_id: nil).reject { |k, _v| k == 'id' || k == :spud_menu_id } }
37
+ end.to change(SpudMenuItem, :count).by(1)
40
38
  expect(response).to be_redirect
41
39
  end
42
40
 
43
- it "should not create a menu item with an invalid form entry" do
44
- yamldata = FactoryGirl.attributes_for(:spud_menu_item,:name => nil).reject{|k,v| k == 'id' || k == :spud_menu_id}
41
+ it 'should not create a menu item with an invalid form entry' do
42
+ yamldata = FactoryGirl.attributes_for(:spud_menu_item, name: nil).reject { |k, _v| k == 'id' || k == :spud_menu_id }
45
43
 
46
- expect {
47
- post :create,:menu_id => @menu.id, :spud_menu_item => FactoryGirl.attributes_for(:spud_menu_item,:name => nil,:parent_id => nil).reject{|k,v| k == 'id' || k == :spud_menu_id}
48
- }.to_not change(SpudMenuItem,:count)
44
+ expect do
45
+ post :create, params: { menu_id: menu.id, spud_menu_item: FactoryGirl.attributes_for(:spud_menu_item, name: nil, parent_id: nil).reject { |k, _v| k == 'id' || k == :spud_menu_id } }
46
+ end.to_not change(SpudMenuItem, :count)
49
47
  end
50
48
 
51
- it "should autoset order if not specified" do
52
- menuitem = FactoryGirl.create(:spud_menu_item,:parent_id => @menu.id)
49
+ it 'should autoset order if not specified' do
50
+ menuitem = FactoryGirl.create(:spud_menu_item, parent_id: menu.id)
53
51
 
54
- post :create,:menu_id => @menu.id, :spud_menu_item => FactoryGirl.attributes_for(:spud_menu_item,:menu_order => nil,:parent_id => nil).reject{|k,v| k == 'id' || k == :spud_menu_id}
52
+ post :create, params: { menu_id: menu.id, spud_menu_item: FactoryGirl.attributes_for(:spud_menu_item, menu_order: nil, parent_id: nil).reject { |k, _v| k == 'id' || k == :spud_menu_id } }
55
53
  expect(assigns(:menu_item).menu_order).to eq(1)
56
54
  end
57
55
 
58
- it "should assign the menu name based on page name if left blank" do
56
+ it 'should assign the menu name based on page name if left blank' do
59
57
  page = FactoryGirl.create(:spud_page)
60
- post :create,:menu_id => @menu.id, :spud_menu_item => FactoryGirl.attributes_for(:spud_menu_item,:name => nil,:spud_page_id => page.id).reject{|k,v| k == 'id' || k == :spud_menu_id}
58
+ post :create, params: { menu_id: menu.id, spud_menu_item: FactoryGirl.attributes_for(:spud_menu_item, name: nil, spud_page_id: page.id).reject { |k, _v| k == 'id' || k == :spud_menu_id } }
61
59
  expect(assigns(:menu_item).name).to eq(page.name)
62
60
  end
63
61
 
64
- it "should set the parent to a submenu if specified" do
65
- menuitem = FactoryGirl.create(:spud_menu_item,:parent_id => @menu.id)
66
- post :create,:menu_id => @menu.id, :spud_menu_item => FactoryGirl.attributes_for(:spud_menu_item,:parent_id => menuitem.id).reject{|k,v| k == 'id' || k == :spud_menu_id}
62
+ it 'should set the parent to a submenu if specified' do
63
+ menuitem = FactoryGirl.create(:spud_menu_item, parent_id: menu.id)
64
+ post :create, params: { menu_id: menu.id, spud_menu_item: FactoryGirl.attributes_for(:spud_menu_item, parent_id: menuitem.id).reject { |k, _v| k == 'id' || k == :spud_menu_id } }
67
65
  expect(assigns(:menu_item).parent).to eq(menuitem)
68
66
  end
69
67
  end
70
68
 
71
69
  describe 'edit' do
72
- it "should respond with menu item by id" do
70
+ it 'should respond with menu item by id' do
73
71
  menu1 = FactoryGirl.create(:spud_menu_item)
74
72
  menu2 = FactoryGirl.create(:spud_menu_item)
75
- get :edit, :menu_id => @menu.id,:id => menu2.id
73
+ get :edit, params: { menu_id: menu.id, id: menu2.id }
76
74
  expect(assigns(:menu_item)).to eq(menu2)
77
75
  end
78
76
 
79
- it "should redirect_to index if menu item not found" do
80
- get :edit,:menu_id => @menu.id,:id => "345"
81
- expect(response).to redirect_to admin_menu_menu_items_url(:menu_id => @menu.id)
77
+ it 'should redirect_to index if menu item not found' do
78
+ get :edit, params: { menu_id: menu.id, id: '345' }
79
+ expect(response).to redirect_to admin_menu_menu_items_url(menu_id: menu.id)
82
80
  end
83
81
  end
84
82
 
85
83
  describe 'update' do
86
- it "should update the name when the name attribute is changed" do
84
+ it 'should update the name when the name attribute is changed' do
87
85
  menu_item = FactoryGirl.create(:spud_menu_item)
88
86
  new_name = 'MyMenu'
89
- expect {
90
- put :update,:menu_id => @menu.id,:id => menu_item.id, :spud_menu_item => menu_item.attributes.merge!(:name => new_name,:parent_id => nil).reject{|k,v| k.to_sym == :spud_menu_id || k == 'id' || k.to_sym == :updated_at || k.to_sym == :created_at}
87
+ expect do
88
+ put :update, params: { menu_id: menu.id, id: menu_item.id, spud_menu_item: menu_item.attributes.merge!(name: new_name, parent_id: nil).reject { |k, _v| k.to_sym == :spud_menu_id || k == 'id' || k.to_sym == :updated_at || k.to_sym == :created_at } }
91
89
  menu_item.reload
92
- }.to change(menu_item,:name).to(new_name)
90
+ end.to change(menu_item, :name).to(new_name)
93
91
  end
94
- it "should assign a menu to a submenu if parentid is defined" do
92
+ it 'should assign a menu to a submenu if parentid is defined' do
95
93
  menu_item1 = FactoryGirl.create(:spud_menu_item)
96
94
  menu_item = FactoryGirl.create(:spud_menu_item)
97
95
 
98
- expect {
99
- put :update,:menu_id => @menu.id,:id => menu_item.id, :spud_menu_item => menu_item.attributes.merge!(:parent_id => menu_item1.id).reject{|k,v| k.to_sym == :spud_menu_id || k == 'id' || k.to_sym == :updated_at || k.to_sym == :created_at}
96
+ expect do
97
+ put :update, params: { menu_id: menu.id, id: menu_item.id, spud_menu_item: menu_item.attributes.merge!(parent_id: menu_item1.id).reject { |k, _v| k.to_sym == :spud_menu_id || k == 'id' || k.to_sym == :updated_at || k.to_sym == :created_at } }
100
98
  menu_item.reload
101
- }.to change(menu_item,:parent).to(menu_item1)
99
+ end.to change(menu_item, :parent).to(menu_item1)
102
100
  end
103
101
  end
104
102
 
105
103
  describe 'destroy' do
106
- it "should destroy the menu item" do
107
- menu_item = FactoryGirl.create(:spud_menu_item,:parent_id => @menu.id)
108
- expect {
109
- delete :destroy,:menu_id => @menu.id,:id => menu_item.id
110
- }.to change(SpudMenuItem,:count).by(-1)
104
+ it 'should destroy the menu item' do
105
+ menu_item = FactoryGirl.create(:spud_menu_item, parent_id: menu.id)
106
+ expect do
107
+ delete :destroy, params: { menu_id: menu.id, id: menu_item.id }
108
+ end.to change(SpudMenuItem, :count).by(-1)
111
109
  end
112
110
  end
113
111
 
114
112
  describe 'update_sort' do
115
- it "should update all menu items menu_order fields" do
116
- ordered_arr = Array.new(5)
113
+ it 'should update all menu items menu_order fields' do
114
+ ordered_arr = Array.new(5)
117
115
  ordered_arr.each_with_index do |item, index|
118
- item = FactoryGirl.create(:spud_menu_item,:parent_id => @menu.id, :menu_order => index)
119
- ordered_arr[index] = item.id.to_s
116
+ item = FactoryGirl.create(:spud_menu_item, parent_id: menu.id, menu_order: index)
117
+ ordered_arr[index] = item.id.to_s
120
118
  end
121
119
  new_order_arr = ordered_arr.shuffle
122
- put :update_sort, :menu_id => @menu.id,:id => ordered_arr[0], :order => new_order_arr
120
+ put :update_sort, params: { menu_id: menu.id, id: ordered_arr[0], order: new_order_arr }
123
121
  new_order_arr.each_with_index do |item, index|
124
- expect(@menu.spud_menu_items.find_by_id(item.to_i).menu_order).to be(index)
125
- end
122
+ expect(menu.spud_menu_items.find_by(id: item.to_i).menu_order).to be(index)
123
+ end
126
124
  end
127
125
  end
128
126
  end
@@ -1,17 +1,12 @@
1
1
  require 'rails_helper'
2
2
 
3
- describe Admin::MenusController, :type => :controller do
3
+ describe Admin::MenusController, type: :controller do
4
4
  before(:each) do
5
- activate_authlogic
6
- u = SpudUser.new(:login => "testuser",:email => "test@testuser.com",:password => "test",:password_confirmation => "test")
7
- u.super_admin = true
8
- u.save
9
- @user = SpudUserSession.create(u)
5
+ activate_session(admin: true)
10
6
  end
11
7
 
12
-
13
8
  describe 'index' do
14
- it "should return an array of menus" do
9
+ it 'should return an array of menus' do
15
10
  2.times { FactoryGirl.create(:spud_menu) }
16
11
  get :index
17
12
 
@@ -21,7 +16,7 @@ describe Admin::MenusController, :type => :controller do
21
16
  end
22
17
 
23
18
  describe 'new' do
24
- it "should response with new menu" do
19
+ it 'should response with new menu' do
25
20
  get :new
26
21
  expect(assigns(:menu)).to_not be_blank
27
22
  expect(response).to be_success
@@ -29,69 +24,68 @@ describe Admin::MenusController, :type => :controller do
29
24
  end
30
25
 
31
26
  describe 'create' do
32
- it "should create a new menu with a valid form submission" do
33
- expect {
34
- post :create, :spud_menu => FactoryGirl.attributes_for(:spud_menu).reject{|k,v| k == 'id'}
35
- }.to change(SpudMenu,:count).by(1)
27
+ it 'should create a new menu with a valid form submission' do
28
+ expect do
29
+ post :create, params: { spud_menu: FactoryGirl.attributes_for(:spud_menu).reject { |k, _v| k == 'id' } }
30
+ end.to change(SpudMenu, :count).by(1)
36
31
  expect(response).to be_redirect
37
32
  end
38
33
 
39
- it "should not create a menu with an invalid form entry" do
40
- expect {
41
- post :create, :spud_menu => FactoryGirl.attributes_for(:spud_menu,:name => nil).reject{|k,v| k == 'id'}
42
- }.to_not change(SpudMenu,:count)
43
-
34
+ it 'should not create a menu with an invalid form entry' do
35
+ expect do
36
+ post :create, params: { spud_menu: FactoryGirl.attributes_for(:spud_menu, name: nil).reject { |k, _v| k == 'id' } }
37
+ end.to_not change(SpudMenu, :count)
44
38
 
45
39
  end
46
40
  end
47
41
 
48
42
  describe 'edit' do
49
- it "should response with menu by id" do
43
+ it 'should response with menu by id' do
50
44
  menu1 = FactoryGirl.create(:spud_menu)
51
45
  menu2 = FactoryGirl.create(:spud_menu)
52
- get :edit,:id => menu2.id
46
+ get :edit, params: { id: menu2.id }
53
47
  expect(assigns(:menu)).to eq(menu2)
54
48
  end
55
- it "should redirect to index if menu not found" do
56
- get :edit,:id => 3
49
+ it 'should redirect to index if menu not found' do
50
+ get :edit, params: { id: 3 }
57
51
  expect(response).to redirect_to admin_menus_url
58
52
  end
59
53
 
60
54
  end
61
55
 
62
56
  describe 'update' do
63
- it "should update the name when the name attribute is changed" do
57
+ it 'should update the name when the name attribute is changed' do
64
58
  menu = FactoryGirl.create(:spud_menu)
65
59
  new_name = 'MyMenu'
66
- expect {
67
- put :update,:id => menu.id, :spud_menu => menu.attributes.merge!(:name => new_name).reject{|k,v| k == 'id'}
60
+ expect do
61
+ put :update, params: { id: menu.id, spud_menu: menu.attributes.merge!(name: new_name).reject { |k, _v| k == 'id' } }
68
62
  menu.reload
69
- }.to change(menu,:name).to(new_name)
63
+ end.to change(menu, :name).to(new_name)
70
64
 
71
65
  end
72
66
 
73
- it "should redirect to the admin menus after a successful update" do
67
+ it 'should redirect to the admin menus after a successful update' do
74
68
  menu = FactoryGirl.create(:spud_menu)
75
- put :update,:id => menu.id,:spud_menu => menu.attributes.merge!(:name => "MyMenu").reject{|k,v| k == 'id'}
69
+ put :update, params: { id: menu.id, spud_menu: menu.attributes.merge!(name: 'MyMenu').reject { |k, _v| k == 'id' } }
76
70
 
77
- expect(response).to redirect_to(admin_menu_menu_items_url(:menu_id => menu.id))
71
+ expect(response).to redirect_to(admin_menu_menu_items_url(menu_id: menu.id))
78
72
  end
79
73
  end
80
74
 
81
75
  describe 'destroy' do
82
- it "should destroy the menu" do
76
+ it 'should destroy the menu' do
83
77
  menu = FactoryGirl.create(:spud_menu)
84
- expect {
85
- delete :destroy, :id => menu.id
86
- }.to change(SpudMenu,:count).by(-1)
78
+ expect do
79
+ delete :destroy, params: { id: menu.id }
80
+ end.to change(SpudMenu, :count).by(-1)
87
81
  expect(response).to be_redirect
88
82
  end
89
83
 
90
- it "should not destroy the menu with a wrong id" do
84
+ it 'should not destroy the menu with a wrong id' do
91
85
  menu = FactoryGirl.create(:spud_menu)
92
- expect {
93
- delete :destroy,:id => "23532"
94
- }.to_not change(SpudMenu,:count)
86
+ expect do
87
+ delete :destroy, params: { id: '23532' }
88
+ end.to_not change(SpudMenu, :count)
95
89
  expect(response).to be_redirect
96
90
  end
97
91
 
@@ -1,25 +1,21 @@
1
1
  require 'rails_helper'
2
2
 
3
- describe Admin::PagesController, :type => :controller do
3
+ describe Admin::PagesController, type: :controller do
4
4
  before(:each) do
5
- activate_authlogic
6
- u = SpudUser.new(:login => "testuser",:email => "test@testuser.com",:password => "test",:password_confirmation => "test")
7
- u.super_admin = true
8
- u.save
9
- @user = SpudUserSession.create(u)
5
+ activate_session(admin: true)
10
6
  end
11
7
 
12
8
  describe 'index' do
13
- it "should return an array of parent pages" do
14
- 2.times {|x| s = FactoryGirl.create(:spud_page)}
9
+ it 'should return an array of parent pages' do
10
+ 2.times { |_x| s = FactoryGirl.create(:spud_page) }
15
11
  get :index
16
12
 
17
13
  expect(assigns(:pages).count).to be > 1
18
14
  end
19
15
 
20
- it "should only return parent pages" do
21
- 2.times {|x| FactoryGirl.create(:spud_page) }
22
- FactoryGirl.create(:spud_page,:spud_page_id => 1)
16
+ it 'should only return parent pages' do
17
+ 2.times { |_x| FactoryGirl.create(:spud_page) }
18
+ FactoryGirl.create(:spud_page, spud_page_id: 1)
23
19
 
24
20
  get :index
25
21
  expect(assigns(:pages).count).to eq(2)
@@ -27,22 +23,22 @@ describe Admin::PagesController, :type => :controller do
27
23
  end
28
24
 
29
25
  describe 'show' do
30
- it "should respond successfully" do
26
+ it 'should respond successfully' do
31
27
  p = FactoryGirl.create(:spud_page)
32
- get :show ,:id => p.id
33
- expect(assigns(:layout)).to render_template(:layout => "layouts/#{Spud::Cms.default_page_layout}")
28
+ get :show, params: { id: p.id }
29
+ expect(assigns(:layout)).to render_template(layout: "layouts/#{Spud::Cms.default_page_layout}")
34
30
  expect(response).to be_success
35
31
  end
36
32
  end
37
33
 
38
34
  describe 'new' do
39
- it "should respond successfully" do
35
+ it 'should respond successfully' do
40
36
  get :new
41
37
 
42
38
  expect(response).to be_success
43
39
  end
44
40
 
45
- it "should build a page object for the form" do
41
+ it 'should build a page object for the form' do
46
42
  get :new
47
43
 
48
44
  expect(assigns(:page)).to_not be_blank
@@ -50,10 +46,10 @@ describe Admin::PagesController, :type => :controller do
50
46
  end
51
47
 
52
48
  describe 'edit' do
53
- context "HTML format" do
54
- it "should load the correct page for the edit form" do
49
+ context 'HTML format' do
50
+ it 'should load the correct page for the edit form' do
55
51
  page = FactoryGirl.create(:spud_page)
56
- get :edit, :id => page.id
52
+ get :edit, params: { id: page.id }
57
53
 
58
54
  expect(assigns(:page).id).to eq(page.id)
59
55
  end
@@ -61,40 +57,39 @@ describe Admin::PagesController, :type => :controller do
61
57
 
62
58
  end
63
59
 
64
-
65
60
  describe 'update' do
66
- it "should update the name when the attribute is changed" do
61
+ it 'should update the name when the attribute is changed' do
67
62
  page = FactoryGirl.create(:spud_page)
68
- new_name = "Adam"
69
- expect {
70
- put :update, :id => page.id, :spud_page => page.attributes.merge!(:name => new_name).reject{ |key,value| key == 'id' || key == 'created_at' || key == 'updated_at'}
63
+ new_name = 'Adam'
64
+ expect do
65
+ put :update, params: { id: page.id, spud_page: { name: new_name } }
71
66
  page.reload
72
- }.to change(page, :name).to(new_name)
67
+ end.to change(page, :name).to(new_name)
73
68
  end
74
69
 
75
- it "should redirect to the page root index after a successful update" do
70
+ it 'should redirect to the page root index after a successful update' do
76
71
  page = FactoryGirl.create(:spud_page)
77
- new_name = "Adam"
78
- put :update, :id => page.id, :spud_page => page.attributes.merge!(:name => new_name).reject{ |key,value| key == 'id' || key == 'created_at' || key == 'updated_at'}
72
+ new_name = 'Adam'
73
+ put :update, params: { id: page.id, spud_page: page.attributes.merge!(name: new_name).reject { |key, _value| key == 'id' || key == 'created_at' || key == 'updated_at' } }
79
74
 
80
75
  expect(response).to redirect_to(admin_pages_url)
81
76
  end
82
77
  end
83
78
 
84
79
  describe 'destroy' do
85
- it "should destroy the page" do
80
+ it 'should destroy the page' do
86
81
  page = FactoryGirl.create(:spud_page)
87
- expect {
88
- delete :destroy, :id => page.id
89
- }.to change(SpudPage, :count).by(-1)
82
+ expect do
83
+ delete :destroy, params: { id: page.id }
84
+ end.to change(SpudPage, :count).by(-1)
90
85
  expect(response).to be_redirect
91
86
  end
92
87
 
93
- it "should destroy the user with the wrong id" do
88
+ it 'should destroy the user with the wrong id' do
94
89
  page = FactoryGirl.create(:spud_page)
95
- expect {
96
- delete :destroy, :id => "23532"
97
- }.to_not change(SpudPage, :count)
90
+ expect do
91
+ delete :destroy, params: { id: '23532' }
92
+ end.to_not change(SpudPage, :count)
98
93
  expect(response).to be_redirect
99
94
  end
100
95
  end
@@ -1,5 +1,5 @@
1
1
  require 'rails_helper'
2
2
 
3
- describe Admin::SnippetsController, :type => :controller do
3
+ describe Admin::SnippetsController, type: :controller do
4
4
 
5
5
  end
@@ -1,51 +1,51 @@
1
1
  require 'rails_helper'
2
2
 
3
- describe PagesController, :type => :controller do
3
+ describe PagesController, type: :controller do
4
4
  describe 'show' do
5
5
 
6
- it "should render a page" do
6
+ it 'should render a page' do
7
7
  page = FactoryGirl.create(:spud_page)
8
- get :show ,:id => page.url_name
9
- expect(assigns(:layout)).to render_template(:layout => "layouts/#{Spud::Cms.default_page_layout}")
8
+ get :show, params: { id: page.url_name }
9
+ expect(assigns(:layout)).to render_template(layout: "layouts/#{Spud::Cms.default_page_layout}")
10
10
  expect(response).to be_success
11
11
  end
12
12
 
13
- it "should render home page if id is blank" do
14
- page = FactoryGirl.create(:spud_page,:name => "home")
13
+ it 'should render home page if id is blank' do
14
+ page = FactoryGirl.create(:spud_page, name: 'home')
15
15
  get :show
16
16
  expect(assigns(:page)).to eq(page)
17
17
  expect(response).to be_success
18
18
  end
19
19
 
20
- it "should redirect to new page url from old page url if it was changed" do
21
- page = FactoryGirl.create(:spud_page, :name => "about", :url_name => "about")
22
- page.update(:url_name => "about-us")
20
+ it 'should redirect to new page url from old page url if it was changed' do
21
+ page = FactoryGirl.create(:spud_page, name: 'about', url_name: 'about')
22
+ page.update(url_name: 'about-us')
23
23
  page.save
24
- get :show, :id => "about"
24
+ get :show, params: { id: 'about' }
25
25
 
26
- expect(response).to redirect_to page_url(:id => "about-us")
26
+ expect(response).to redirect_to page_url(id: 'about-us')
27
27
  end
28
28
 
29
- it "should not allow access to private pages when logged out" do
30
- page = FactoryGirl.create(:spud_page,:name => "about",:visibility => 1)
29
+ it 'should not allow access to private pages when logged out' do
30
+ page = FactoryGirl.create(:spud_page, name: 'about', visibility: 1)
31
31
 
32
- get :show, :id => "about"
33
- expect(response).to redirect_to login_path(:return_to => '/about')
32
+ get :show, params: { id: 'about' }
33
+ expect(response).to redirect_to login_path(return_to: '/about')
34
34
  end
35
35
 
36
- describe "authorized login" do
37
- before(:each) do
36
+ describe 'authorized login' do
37
+ before(:each) do
38
38
  activate_authlogic
39
- u = SpudUser.new(:login => "testuser",:email => "test@testuser.com",:password => "test",:password_confirmation => "test")
39
+ u = SpudUser.new(login: 'testuser', email: 'test@testuser.com', password: 'test', password_confirmation: 'test')
40
40
  u.super_admin = true
41
41
  u.save
42
42
  @user = SpudUserSession.create(u)
43
43
  end
44
44
 
45
- it "should allow access to private pages when logged in" do
46
- page = FactoryGirl.create(:spud_page,:name => "about",:visibility => 1)
45
+ it 'should allow access to private pages when logged in' do
46
+ page = FactoryGirl.create(:spud_page, name: 'about', visibility: 1)
47
47
 
48
- get :show, :id => "about"
48
+ get :show, params: { id: 'about' }
49
49
  expect(response).to be_success
50
50
  end
51
51
  end
@@ -3,13 +3,13 @@ require File.expand_path('../boot', __FILE__)
3
3
  require 'rails/all'
4
4
 
5
5
  Bundler.require
6
- require "tb_cms"
6
+ require 'tb_cms'
7
7
 
8
8
  module Dummy
9
9
  class Application < Rails::Application
10
10
 
11
11
  Spud::Core.configure do |config|
12
- config.site_name = "Test Site"
12
+ config.site_name = 'Test Site'
13
13
  end
14
14
 
15
15
  # Settings in config/environments/* take precedence over those specified here.
@@ -36,7 +36,7 @@ module Dummy
36
36
  config.i18n.enforce_available_locales = true
37
37
 
38
38
  # Configure the default encoding used in templates for Ruby 1.9.
39
- config.encoding = "utf-8"
39
+ config.encoding = 'utf-8'
40
40
 
41
41
  # Configure sensitive parameters which will be filtered from the log file.
42
42
  config.filter_parameters += [:password]
@@ -62,4 +62,3 @@ module Dummy
62
62
  config.assets.version = '1.0'
63
63
  end
64
64
  end
65
-
@@ -7,4 +7,4 @@ if File.exist?(gemfile)
7
7
  Bundler.setup
8
8
  end
9
9
 
10
- $:.unshift File.expand_path('../../../../lib', __FILE__)
10
+ $LOAD_PATH.unshift File.expand_path('../../../../lib', __FILE__)
@@ -9,7 +9,7 @@ Dummy::Application.configure do
9
9
  config.action_controller.perform_caching = true
10
10
 
11
11
  # Disable Rails's static asset server (Apache or nginx will already do this)
12
- config.serve_static_files = false
12
+ config.public_file_server.enabled = true
13
13
 
14
14
  # Compress JavaScripts and CSS
15
15
  config.assets.compress = true
@@ -8,8 +8,8 @@ Dummy::Application.configure do
8
8
  config.cache_classes = true
9
9
 
10
10
  # Configure static asset server for tests with Cache-Control for performance
11
- config.serve_static_files = true
12
- config.static_cache_control = "public, max-age=3600"
11
+ config.public_file_server.enabled = true
12
+ config.public_file_server.headers = { 'Cache-Control' => 'public, max-age=3600' }
13
13
 
14
14
  # Deprecated
15
15
  # Log error messages when you accidentally call methods on nil
@@ -28,7 +28,7 @@ Dummy::Application.configure do
28
28
  config.action_dispatch.show_exceptions = false
29
29
 
30
30
  # Disable request forgery protection in test environment
31
- config.action_controller.allow_forgery_protection = false
31
+ config.action_controller.allow_forgery_protection = false
32
32
 
33
33
  # Tell Action Mailer not to deliver emails to the real world.
34
34
  # The :test delivery method accumulates sent emails in the
data/spec/dummy/config.ru CHANGED
@@ -1,4 +1,4 @@
1
1
  # This file is used by Rack-based servers to start the application.
2
2
 
3
- require ::File.expand_path('../config/environment', __FILE__)
3
+ require ::File.expand_path('../config/environment', __FILE__)
4
4
  run Dummy::Application