comfortable_mexican_sofa 1.12.2 → 1.12.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/comfortable_mexican_sofa/admin/application.js +1 -1
  3. data/app/assets/javascripts/comfortable_mexican_sofa/application.js.coffee +50 -57
  4. data/app/assets/javascripts/comfortable_mexican_sofa/cms/files.js.coffee +29 -0
  5. data/app/assets/javascripts/comfortable_mexican_sofa/cms/uploader.js.coffee +139 -0
  6. data/app/assets/stylesheets/comfortable_mexican_sofa/admin/application.css +1 -1
  7. data/app/assets/stylesheets/comfortable_mexican_sofa/application.css.sass +1 -0
  8. data/app/assets/stylesheets/comfortable_mexican_sofa/base.css.sass +67 -84
  9. data/app/controllers/comfy/admin/cms/base_controller.rb +11 -8
  10. data/app/controllers/comfy/admin/cms/categories_controller.rb +10 -9
  11. data/app/controllers/comfy/admin/cms/files_controller.rb +38 -69
  12. data/app/controllers/comfy/admin/cms/layouts_controller.rb +4 -3
  13. data/app/controllers/comfy/admin/cms/pages_controller.rb +17 -11
  14. data/app/controllers/comfy/admin/cms/revisions_controller.rb +10 -9
  15. data/app/controllers/comfy/admin/cms/sites_controller.rb +2 -1
  16. data/app/controllers/comfy/admin/cms/snippets_controller.rb +3 -2
  17. data/app/controllers/comfy/cms/assets_controller.rb +17 -9
  18. data/app/controllers/comfy/cms/content_controller.rb +20 -14
  19. data/app/models/comfy/cms/file.rb +16 -15
  20. data/app/models/comfy/cms/page.rb +2 -1
  21. data/app/models/comfy/cms/site.rb +5 -0
  22. data/app/views/comfy/admin/cms/files/_file.html.haml +26 -13
  23. data/app/views/comfy/admin/cms/files/_form.html.haml +8 -5
  24. data/app/views/comfy/admin/cms/files/_modal.html.haml +4 -0
  25. data/app/views/comfy/admin/cms/files/create.js.erb +1 -0
  26. data/app/views/comfy/admin/cms/files/destroy.js.coffee +2 -2
  27. data/app/views/comfy/admin/cms/files/index.html.haml +33 -31
  28. data/app/views/comfy/admin/cms/layouts/_form.html.haml +2 -5
  29. data/app/views/comfy/admin/cms/pages/_form.html.haml +7 -8
  30. data/app/views/comfy/admin/cms/pages/_form_blocks.html.haml +3 -3
  31. data/app/views/comfy/admin/cms/sites/_form.html.haml +2 -2
  32. data/app/views/comfy/admin/cms/sites/index.html.haml +1 -2
  33. data/app/views/comfy/admin/cms/snippets/_form.html.haml +5 -8
  34. data/app/views/kaminari/comfy/_paginator.html.haml +10 -11
  35. data/app/views/layouts/comfy/admin/cms.html.haml +3 -2
  36. data/app/views/layouts/comfy/admin/cms/_body.html.haml +8 -7
  37. data/app/views/layouts/comfy/admin/cms/{_center.html.haml → _flash.html.haml} +0 -3
  38. data/app/views/layouts/comfy/admin/cms/_footer_js.html.haml +0 -4
  39. data/app/views/layouts/comfy/admin/cms/_left.html.haml +10 -5
  40. data/comfortable_mexican_sofa.gemspec +9 -8
  41. data/config/cms_routes.rb +2 -2
  42. data/config/initializers/comfortable_mexican_sofa.rb +31 -13
  43. data/config/initializers/plupload.rb +9 -0
  44. data/config/locales/en.yml +18 -16
  45. data/db/upgrade_migrations/08_upgrade_to_1_12_0.rb +3 -0
  46. data/lib/comfortable_mexican_sofa.rb +6 -5
  47. data/lib/comfortable_mexican_sofa/access_control/admin_authentication.rb +20 -0
  48. data/lib/comfortable_mexican_sofa/access_control/admin_authorization.rb +8 -0
  49. data/lib/comfortable_mexican_sofa/access_control/public_authentication.rb +8 -0
  50. data/lib/comfortable_mexican_sofa/configuration.rb +11 -3
  51. data/lib/comfortable_mexican_sofa/engine.rb +1 -0
  52. data/lib/comfortable_mexican_sofa/fixture.rb +7 -5
  53. data/lib/comfortable_mexican_sofa/fixture/category.rb +10 -3
  54. data/lib/comfortable_mexican_sofa/form_builder.rb +1 -1
  55. data/lib/comfortable_mexican_sofa/routes/cms.rb +3 -0
  56. data/lib/comfortable_mexican_sofa/version.rb +1 -1
  57. data/lib/generators/comfy/cms/assets_generator.rb +15 -0
  58. data/lib/generators/comfy/cms/cms_generator.rb +19 -12
  59. data/lib/generators/comfy/cms/controllers_generator.rb +13 -0
  60. data/lib/generators/comfy/cms/models_generator.rb +13 -0
  61. data/lib/generators/comfy/cms/views_generator.rb +13 -0
  62. data/test/controllers/comfy/admin/cms/files_controller_test.rb +22 -95
  63. data/test/controllers/comfy/admin/cms/layouts_controller_test.rb +9 -10
  64. data/test/controllers/comfy/admin/cms/pages_controller_test.rb +26 -27
  65. data/test/controllers/comfy/admin/cms/snippets_controller_test.rb +7 -8
  66. data/test/controllers/comfy/cms/content_controller_test.rb +30 -4
  67. data/test/gemfiles/Gemfile.rails.4.0 +3 -2
  68. data/test/gemfiles/Gemfile.rails.4.1 +3 -2
  69. data/test/gemfiles/Gemfile.rails.master +3 -2
  70. data/test/generators/cms_assets_generator_test.rb +13 -0
  71. data/test/generators/cms_controllers_generator_test.rb +12 -0
  72. data/test/generators/cms_generator_test.rb +10 -8
  73. data/test/generators/cms_models_generator_test.rb +12 -0
  74. data/test/generators/cms_views_generator_test.rb +12 -0
  75. data/test/generators/scaffold_generator_test.rb +6 -7
  76. data/test/integration/access_control_test.rb +141 -0
  77. data/test/integration/routing_test.rb +19 -0
  78. data/test/lib/configuration_test.rb +8 -7
  79. data/test/lib/fixtures/categories_test.rb +1 -0
  80. data/test/lib/fixtures/files_test.rb +5 -0
  81. data/test/lib/fixtures/pages_test.rb +17 -1
  82. data/test/lib/fixtures/snippets_test.rb +5 -0
  83. data/test/models/page_test.rb +6 -0
  84. data/test/models/site_test.rb +9 -0
  85. data/test/test_helper.rb +28 -19
  86. metadata +82 -48
  87. data/app/views/comfy/admin/cms/files/_index.html.haml +0 -11
  88. data/lib/comfortable_mexican_sofa/authentication/dummy_auth.rb +0 -8
  89. data/lib/comfortable_mexican_sofa/authentication/http_auth.rb +0 -25
  90. data/test/integration/authentication_test.rb +0 -48
@@ -8,35 +8,35 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
8
8
  assert assigns(:pages)
9
9
  assert_template :index
10
10
  end
11
-
11
+
12
12
  def test_get_index_with_no_pages
13
13
  Comfy::Cms::Page.delete_all
14
14
  get :index, :site_id => comfy_cms_sites(:default)
15
15
  assert_response :redirect
16
16
  assert_redirected_to :action => :new
17
17
  end
18
-
18
+
19
19
  def test_get_index_with_category
20
20
  category = comfy_cms_sites(:default).categories.create!(
21
21
  :label => 'Test Category',
22
22
  :categorized_type => 'Comfy::Cms::Page'
23
23
  )
24
24
  category.categorizations.create!(:categorized => comfy_cms_pages(:child))
25
-
25
+
26
26
  get :index, :site_id => comfy_cms_sites(:default), :category => category.label
27
27
  assert_response :success
28
28
  assert assigns(:pages)
29
29
  assert_equal 1, assigns(:pages).count
30
30
  assert assigns(:pages).first.categories.member? category
31
31
  end
32
-
32
+
33
33
  def test_get_index_with_category_invalid
34
34
  get :index, :site_id => comfy_cms_sites(:default), :category => 'invalid'
35
35
  assert_response :success
36
36
  assert assigns(:pages)
37
37
  assert_equal 0, assigns(:pages).count
38
38
  end
39
-
39
+
40
40
  def test_get_index_with_toggle
41
41
  comfy_cms_sites(:default).pages.create!(
42
42
  :label => 'test',
@@ -47,7 +47,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
47
47
  get :index, :site_id => comfy_cms_sites(:default)
48
48
  assert_response :success
49
49
  end
50
-
50
+
51
51
  def test_get_new
52
52
  site = comfy_cms_sites(:default)
53
53
  get :new, :site_id => site
@@ -57,7 +57,6 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
57
57
  assert_template :new
58
58
  assert_select "form[action=/admin/sites/#{site.id}/pages]"
59
59
  assert_select "select[data-url=/admin/sites/#{site.id}/pages/0/form_blocks]"
60
- assert_select "form[action='/admin/sites/#{site.id}/files?ajax=true']"
61
60
  end
62
61
 
63
62
  def test_get_new_with_field_datetime
@@ -91,7 +90,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
91
90
  assert_select "textarea[name='page[blocks_attributes][0][content]'][data-cms-cm-mode='text/html']"
92
91
  assert_select "input[type='hidden'][name='page[blocks_attributes][0][identifier]'][value='test_label']"
93
92
  end
94
-
93
+
95
94
  def test_get_new_with_field_rich_text
96
95
  comfy_cms_layouts(:default).update_columns(:content => '{{cms:field:test_label:rich_text}}')
97
96
  get :new, :site_id => comfy_cms_sites(:default)
@@ -131,7 +130,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
131
130
  assert_select "textarea[name='page[blocks_attributes][0][content]'][data-cms-cm-mode=text/html]"
132
131
  assert_select "input[type='hidden'][name='page[blocks_attributes][0][identifier]'][value='test_label']"
133
132
  end
134
-
133
+
135
134
  def test_get_new_with_page_file
136
135
  comfy_cms_layouts(:default).update_columns(:content => '{{cms:page_file:test_label}}')
137
136
  get :new, :site_id => comfy_cms_sites(:default)
@@ -139,7 +138,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
139
138
  assert_select "input[type='file'][name='page[blocks_attributes][0][content]']"
140
139
  assert_select "input[type='hidden'][name='page[blocks_attributes][0][identifier]'][value='test_label']"
141
140
  end
142
-
141
+
143
142
  def test_get_new_with_page_files
144
143
  comfy_cms_layouts(:default).update_columns(:content => '{{cms:page_files:test_label}}')
145
144
  get :new, :site_id => comfy_cms_sites(:default)
@@ -147,7 +146,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
147
146
  assert_select "input[type='file'][name='page[blocks_attributes][0][content][]'][multiple=multiple]"
148
147
  assert_select "input[type='hidden'][name='page[blocks_attributes][0][identifier]'][value='test_label']"
149
148
  end
150
-
149
+
151
150
  def test_get_new_with_collection
152
151
  snippet = comfy_cms_snippets(:default)
153
152
  comfy_cms_layouts(:default).update_columns(:content => '{{cms:collection:snippet:comfy/cms/snippet}}')
@@ -167,7 +166,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
167
166
  assert_select "textarea[name='page[blocks_attributes][0][content]'][data-cms-rich-text]"
168
167
  assert_select "input[type='hidden'][name='page[blocks_attributes][0][identifier]'][value='test_label']"
169
168
  end
170
-
169
+
171
170
  def test_get_new_with_page_markdown
172
171
  comfy_cms_layouts(:default).update_columns(:content => '{{cms:page:test_label:markdown}}')
173
172
  get :new, :site_id => comfy_cms_sites(:default)
@@ -175,7 +174,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
175
174
  assert_select "textarea[name='page[blocks_attributes][0][content]'][data-cms-cm-mode=text/x-markdown]"
176
175
  assert_select "input[type='hidden'][name='page[blocks_attributes][0][identifier]'][value='test_label']"
177
176
  end
178
-
177
+
179
178
  def test_get_new_with_boolean_field
180
179
  comfy_cms_layouts(:default).update_columns(:content => '{{cms:field:test_label:boolean}}')
181
180
  get :new, :site_id => comfy_cms_sites(:default)
@@ -184,7 +183,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
184
183
  assert_select "input[type='hidden'][name='page[blocks_attributes][0][content]'][value='']"
185
184
  assert_select "input[type='checkbox'][name='page[blocks_attributes][0][content]'][value='1']"
186
185
  end
187
-
186
+
188
187
  def test_get_new_with_several_tag_fields
189
188
  comfy_cms_layouts(:default).update_columns(:content => '{{cms:page:label_a}}{{cms:page:label_b}}')
190
189
  get :new, :site_id => comfy_cms_sites(:default)
@@ -194,18 +193,18 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
194
193
  assert_select "textarea[name='page[blocks_attributes][1][content]']"
195
194
  assert_select "input[type='hidden'][name='page[blocks_attributes][1][identifier]'][value='label_b']"
196
195
  end
197
-
196
+
198
197
  def test_get_new_with_crashy_tag
199
198
  comfy_cms_layouts(:default).update_columns(:content => '{{cms:collection:label:invalid}}')
200
- assert_exception_raised do
199
+ assert_exception_raised do
201
200
  get :new, :site_id => comfy_cms_sites(:default)
202
201
  end
203
-
202
+
204
203
  Rails.stubs(:env => ActiveSupport::StringInquirer.new('production'))
205
204
  get :new, :site_id => comfy_cms_sites(:default)
206
205
  assert_response :success
207
206
  end
208
-
207
+
209
208
  def test_get_new_with_repeated_tag
210
209
  comfy_cms_layouts(:default).update_columns(:content => '{{cms:page:test_label}}{{cms:page:test_label}}')
211
210
  get :new, :site_id => comfy_cms_sites(:default)
@@ -215,7 +214,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
215
214
  assert_select "textarea[name='page[blocks_attributes][1][content]']", 0
216
215
  assert_select "input[type='hidden'][name='page[blocks_attributes][1][identifier]'][value='test_label']", 0
217
216
  end
218
-
217
+
219
218
  def test_get_new_as_child_page
220
219
  get :new, :site_id => comfy_cms_sites(:default), :parent_id => comfy_cms_pages(:default)
221
220
  assert_response :success
@@ -249,21 +248,21 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
249
248
  assert assigns(:page)
250
249
  assert assigns(:page).layout
251
250
  end
252
-
251
+
253
252
  def test_get_edit_with_non_english_locale
254
253
  site = comfy_cms_sites(:default)
255
254
  site.update_columns(:locale => 'es')
256
255
  get :edit, :site_id => site, :id => comfy_cms_pages(:default)
257
256
  assert_response :success
258
257
  end
259
-
258
+
260
259
  def test_get_edit_with_layout_and_no_tags
261
260
  page = comfy_cms_pages(:default)
262
261
  page.layout.update_column(:content, '')
263
262
  get :edit, :site_id => page.site, :id => page
264
263
  assert_response :success
265
264
  end
266
-
265
+
267
266
  def test_creation
268
267
  assert_difference 'Comfy::Cms::Page.count' do
269
268
  assert_difference 'Comfy::Cms::Block.count', 2 do
@@ -287,7 +286,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
287
286
  end
288
287
  end
289
288
  end
290
-
289
+
291
290
  def test_creation_failure
292
291
  assert_no_difference ['Comfy::Cms::Page.count', 'Comfy::Cms::Block.count'] do
293
292
  post :create, :site_id => comfy_cms_sites(:default), :page => {
@@ -321,7 +320,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
321
320
  assert_equal 'Updated Label', page.label
322
321
  end
323
322
  end
324
-
323
+
325
324
  def test_update_with_layout_change
326
325
  page = comfy_cms_pages(:default)
327
326
  assert_difference 'Comfy::Cms::Block.count', 2 do
@@ -392,7 +391,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
392
391
  def test_creation_preview
393
392
  site = comfy_cms_sites(:default)
394
393
  layout = comfy_cms_layouts(:default)
395
-
394
+
396
395
  assert_no_difference 'Comfy::Cms::Page.count' do
397
396
  post :create, :site_id => site, :preview => 'Preview', :page => {
398
397
  :label => 'Test Page',
@@ -407,7 +406,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
407
406
  assert_response :success
408
407
  assert_match /preview content/, response.body
409
408
  assert_equal 'text/html', response.content_type
410
-
409
+
411
410
  assert_equal site, assigns(:cms_site)
412
411
  assert_equal layout, assigns(:cms_layout)
413
412
  assert assigns(:cms_page)
@@ -429,7 +428,7 @@ class Comfy::Admin::Cms::PagesControllerTest < ActionController::TestCase
429
428
  assert_match /preview content/, response.body
430
429
  page.reload
431
430
  assert_not_equal 'Updated Label', page.label
432
-
431
+
433
432
  assert_equal page.site, assigns(:cms_site)
434
433
  assert_equal page.layout, assigns(:cms_layout)
435
434
  assert_equal page, assigns(:cms_page)
@@ -15,18 +15,18 @@ class Comfy::Admin::Cms::SnippetsControllerTest < ActionController::TestCase
15
15
  assert_response :redirect
16
16
  assert_redirected_to :action => :new
17
17
  end
18
-
18
+
19
19
  def test_get_index_with_category
20
20
  category = comfy_cms_sites(:default).categories.create!(:label => 'Test Category', :categorized_type => 'Comfy::Cms::Snippet')
21
21
  category.categorizations.create!(:categorized => comfy_cms_snippets(:default))
22
-
22
+
23
23
  get :index, :site_id => comfy_cms_sites(:default), :category => category.label
24
24
  assert_response :success
25
25
  assert assigns(:snippets)
26
26
  assert_equal 1, assigns(:snippets).count
27
27
  assert assigns(:snippets).first.categories.member? category
28
28
  end
29
-
29
+
30
30
  def test_get_index_with_category_invalid
31
31
  get :index, :site_id => comfy_cms_sites(:default), :category => 'invalid'
32
32
  assert_response :success
@@ -41,7 +41,6 @@ class Comfy::Admin::Cms::SnippetsControllerTest < ActionController::TestCase
41
41
  assert assigns(:snippet)
42
42
  assert_template :new
43
43
  assert_select "form[action=/admin/sites/#{site.id}/snippets]"
44
- assert_select "form[action='/admin/sites/#{site.id}/files?ajax=true']"
45
44
  end
46
45
 
47
46
  def test_get_edit
@@ -52,7 +51,7 @@ class Comfy::Admin::Cms::SnippetsControllerTest < ActionController::TestCase
52
51
  assert_template :edit
53
52
  assert_select "form[action=/admin/sites/#{snippet.site.id}/snippets/#{snippet.id}]"
54
53
  end
55
-
54
+
56
55
  def test_get_edit_with_params
57
56
  snippet = comfy_cms_snippets(:default)
58
57
  get :edit, :site_id => snippet.site, :id => snippet, :snippet => {:label => 'New Label'}
@@ -67,7 +66,7 @@ class Comfy::Admin::Cms::SnippetsControllerTest < ActionController::TestCase
67
66
  assert_redirected_to :action => :index
68
67
  assert_equal 'Snippet not found', flash[:danger]
69
68
  end
70
-
69
+
71
70
  def test_create
72
71
  assert_difference 'Comfy::Cms::Snippet.count' do
73
72
  post :create, :site_id => comfy_cms_sites(:default), :snippet => {
@@ -126,7 +125,7 @@ class Comfy::Admin::Cms::SnippetsControllerTest < ActionController::TestCase
126
125
  assert_equal 'Snippet deleted', flash[:success]
127
126
  end
128
127
  end
129
-
128
+
130
129
  def test_reorder
131
130
  snippet_one = comfy_cms_snippets(:default)
132
131
  snippet_two = comfy_cms_sites(:default).snippets.create!(
@@ -145,4 +144,4 @@ class Comfy::Admin::Cms::SnippetsControllerTest < ActionController::TestCase
145
144
  assert_equal 0, snippet_two.position
146
145
  end
147
146
 
148
- end
147
+ end
@@ -25,13 +25,15 @@ class Comfy::Cms::ContentControllerTest < ActionController::TestCase
25
25
  def test_show_default_html
26
26
  @request.headers["Accept"] = "*/*"
27
27
  get :show, :cms_path => ''
28
+ assert_response :success
28
29
  assert_equal 'text/html', response.content_type
29
30
  end
30
-
31
+
31
32
  def test_show_as_json
32
33
  get :show, :cms_path => '', :format => 'json'
33
34
  assert_response :success
34
-
35
+ assert_equal 'application/json', response.content_type
36
+
35
37
  content = rendered_content_formatter(
36
38
  '
37
39
  layout_content_a
@@ -58,12 +60,36 @@ class Comfy::Cms::ContentControllerTest < ActionController::TestCase
58
60
  assert_equal true, json_response['is_published']
59
61
  end
60
62
 
63
+ def test_show_with_custom_mimetype
64
+ layout = comfy_cms_sites(:default).layouts.create!(
65
+ :label => 'RSS Layout',
66
+ :identifier => 'rss-layout',
67
+ :content => '{{cms:field:mime_type}}{{cms:page:content}}',
68
+ )
69
+ page = comfy_cms_sites(:default).pages.create!(
70
+ :label => 'rss',
71
+ :slug => 'rss',
72
+ :parent_id => comfy_cms_pages(:default).id,
73
+ :layout_id => layout.id,
74
+ :is_published => true,
75
+ :blocks_attributes => [
76
+ { :identifier => 'content',
77
+ :content => 'content' },
78
+ { :identifier => 'mime_type',
79
+ :content => 'application/rss+xml' }
80
+ ]
81
+ )
82
+ get :show, :cms_path => 'rss'
83
+ assert_response :success
84
+ assert_equal 'application/rss+xml', response.content_type
85
+ end
86
+
61
87
  def test_show_with_app_layout
62
88
  comfy_cms_layouts(:default).update_columns(:app_layout => 'comfy/admin/cms')
63
89
  get :show, :cms_path => ''
64
90
  assert_response :success
65
91
  assert assigns(:cms_page)
66
- assert_select "body[class='c-comfy-cms-content a-show']"
92
+ assert_select "body.c-comfy-cms-content.a-show"
67
93
  end
68
94
 
69
95
  def test_show_with_xhr
@@ -71,7 +97,7 @@ class Comfy::Cms::ContentControllerTest < ActionController::TestCase
71
97
  xhr :get, :show, :cms_path => ''
72
98
  assert_response :success
73
99
  assert assigns(:cms_page)
74
- assert_no_select "body[class='c_cms_content a_show']"
100
+ assert_no_select "body.c-comfy-cms-content.a-show"
75
101
  end
76
102
 
77
103
  def test_show_not_found
@@ -13,10 +13,11 @@ gem 'coffee-rails', '>= 3.1.0'
13
13
  gem 'codemirror-rails', '>= 3.0.0'
14
14
  gem 'kaminari', '>= 0.14.0'
15
15
  gem 'tinymce-rails', '>= 4.0.0'
16
- gem 'bootstrap-sass', '~> 3.1.0'
16
+ gem 'bootstrap-sass', '~> 3.2.0'
17
+ gem 'plupload-rails', '~> 1.2.1'
17
18
 
18
19
  group :test do
19
20
  gem 'sqlite3'
20
21
  gem 'coveralls', :require => false
21
22
  gem 'mocha', :require => false
22
- end
23
+ end
@@ -13,10 +13,11 @@ gem 'coffee-rails', '>= 3.1.0'
13
13
  gem 'codemirror-rails', '>= 3.0.0'
14
14
  gem 'kaminari', '>= 0.14.0'
15
15
  gem 'tinymce-rails', '>= 4.0.0'
16
- gem 'bootstrap-sass', '~> 3.1.0'
16
+ gem 'bootstrap-sass', '~> 3.2.0'
17
+ gem 'plupload-rails', '~> 1.2.1'
17
18
 
18
19
  group :test do
19
20
  gem 'sqlite3'
20
21
  gem 'coveralls', :require => false
21
22
  gem 'mocha', :require => false
22
- end
23
+ end
@@ -13,10 +13,11 @@ gem 'coffee-rails', '>= 3.1.0'
13
13
  gem 'codemirror-rails', '>= 3.0.0'
14
14
  gem 'kaminari', '>= 0.14.0'
15
15
  gem 'tinymce-rails', '>= 4.0.0'
16
- gem 'bootstrap-sass', '~> 3.1.0'
16
+ gem 'bootstrap-sass', '~> 3.2.0'
17
+ gem 'plupload-rails', '~> 1.2.1'
17
18
 
18
19
  group :test do
19
20
  gem 'sqlite3'
20
21
  gem 'coveralls', :require => false
21
22
  gem 'mocha', :require => false
22
- end
23
+ end
@@ -0,0 +1,13 @@
1
+ require_relative '../test_helper'
2
+ require_relative '../../lib/generators/comfy/cms/assets_generator'
3
+
4
+ class CmsAssetsGeneratorTest < Rails::Generators::TestCase
5
+ tests Comfy::Generators::Cms::AssetsGenerator
6
+
7
+ def test_generator
8
+ run_generator
9
+ assert_directory 'app/assets/images/comfortable_mexican_sofa'
10
+ assert_directory 'app/assets/javascripts/comfortable_mexican_sofa'
11
+ assert_directory 'app/assets/stylesheets/comfortable_mexican_sofa'
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ require_relative '../test_helper'
2
+ require_relative '../../lib/generators/comfy/cms/controllers_generator'
3
+
4
+ class CmsControllersGeneratorTest < Rails::Generators::TestCase
5
+ tests Comfy::Generators::Cms::ControllersGenerator
6
+
7
+ def test_generator
8
+ run_generator
9
+ assert_directory 'app/controllers/comfy'
10
+ assert_file 'app/controllers/comfy/admin/cms/base_controller.rb'
11
+ end
12
+ end
@@ -3,21 +3,23 @@ require_relative '../../lib/generators/comfy/cms/cms_generator'
3
3
 
4
4
  class CmsGeneratorTest < Rails::Generators::TestCase
5
5
  tests Comfy::Generators::CmsGenerator
6
-
6
+
7
7
  def test_generator
8
8
  run_generator
9
-
9
+
10
10
  assert_migration 'db/migrate/create_cms.rb'
11
-
11
+
12
12
  assert_file 'config/initializers/comfortable_mexican_sofa.rb'
13
-
13
+ assert_file 'config/initializers/mime_types.rb' do |file|
14
+ assert_match "Mime::Type.register 'text/plupload', :plupload", file
15
+ end
16
+
14
17
  assert_file 'config/routes.rb', read_file('cms/routes.rb')
15
-
18
+
16
19
  assert_directory 'db/cms_fixtures'
17
-
20
+
18
21
  assert_file 'app/assets/javascripts/comfortable_mexican_sofa/admin/application.js'
19
-
22
+
20
23
  assert_file 'app/assets/stylesheets/comfortable_mexican_sofa/admin/application.css'
21
24
  end
22
-
23
25
  end
@@ -0,0 +1,12 @@
1
+ require_relative '../test_helper'
2
+ require_relative '../../lib/generators/comfy/cms/models_generator'
3
+
4
+ class CmsModelsGeneratorTest < Rails::Generators::TestCase
5
+ tests Comfy::Generators::Cms::ModelsGenerator
6
+
7
+ def test_generator
8
+ run_generator
9
+ assert_directory 'app/models/comfy'
10
+ assert_file 'app/models/comfy/cms/page.rb'
11
+ end
12
+ end