comfortable_mexican_sofa 2.0.9 → 2.0.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (192) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/comfy/vendor/bootstrap.min.js +3 -3
  3. data/app/assets/stylesheets/comfy/admin/cms/application.sass +1 -2
  4. data/app/assets/stylesheets/comfy/admin/cms/base.sass +12 -13
  5. data/app/assets/stylesheets/comfy/vendor/bootstrap/_alert.scss +3 -1
  6. data/app/assets/stylesheets/comfy/vendor/bootstrap/_button-group.scss +31 -72
  7. data/app/assets/stylesheets/comfy/vendor/bootstrap/_buttons.scss +26 -19
  8. data/app/assets/stylesheets/comfy/vendor/bootstrap/_card.scss +23 -12
  9. data/app/assets/stylesheets/comfy/vendor/bootstrap/_carousel.scss +2 -2
  10. data/app/assets/stylesheets/comfy/vendor/bootstrap/_close.scss +6 -1
  11. data/app/assets/stylesheets/comfy/vendor/bootstrap/_code.scss +4 -12
  12. data/app/assets/stylesheets/comfy/vendor/bootstrap/_custom-forms.scss +124 -84
  13. data/app/assets/stylesheets/comfy/vendor/bootstrap/_dropdown.scss +30 -2
  14. data/app/assets/stylesheets/comfy/vendor/bootstrap/_forms.scss +46 -71
  15. data/app/assets/stylesheets/comfy/vendor/bootstrap/_functions.scss +4 -4
  16. data/app/assets/stylesheets/comfy/vendor/bootstrap/_images.scss +0 -1
  17. data/app/assets/stylesheets/comfy/vendor/bootstrap/_input-group.scss +99 -126
  18. data/app/assets/stylesheets/comfy/vendor/bootstrap/_list-group.scss +2 -1
  19. data/app/assets/stylesheets/comfy/vendor/bootstrap/_modal.scss +24 -9
  20. data/app/assets/stylesheets/comfy/vendor/bootstrap/_nav.scss +2 -2
  21. data/app/assets/stylesheets/comfy/vendor/bootstrap/_navbar.scss +8 -3
  22. data/app/assets/stylesheets/comfy/vendor/bootstrap/_pagination.scss +32 -19
  23. data/app/assets/stylesheets/comfy/vendor/bootstrap/_popover.scss +106 -117
  24. data/app/assets/stylesheets/comfy/vendor/bootstrap/_print.scss +17 -3
  25. data/app/assets/stylesheets/comfy/vendor/bootstrap/_progress.scss +4 -1
  26. data/app/assets/stylesheets/comfy/vendor/bootstrap/_reboot.scss +3 -25
  27. data/app/assets/stylesheets/comfy/vendor/bootstrap/_tables.scss +1 -1
  28. data/app/assets/stylesheets/comfy/vendor/bootstrap/_tooltip.scss +65 -57
  29. data/app/assets/stylesheets/comfy/vendor/bootstrap/_type.scss +2 -2
  30. data/app/assets/stylesheets/comfy/vendor/bootstrap/_variables.scss +174 -108
  31. data/app/assets/stylesheets/comfy/vendor/bootstrap/bootstrap-grid.scss +32 -0
  32. data/app/assets/stylesheets/comfy/vendor/bootstrap/bootstrap-reboot.scss +12 -0
  33. data/app/assets/stylesheets/comfy/vendor/bootstrap/bootstrap.scss +42 -0
  34. data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_background-variant.scss +2 -1
  35. data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_breakpoints.scss +11 -7
  36. data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_buttons.scss +37 -22
  37. data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_caret.scss +30 -0
  38. data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_forms.scss +48 -19
  39. data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_grid-framework.scss +5 -7
  40. data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_hover.scss +24 -46
  41. data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_list-group.scss +10 -13
  42. data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_screen-reader.scss +1 -1
  43. data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_text-hide.scss +1 -0
  44. data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_borders.scss +6 -1
  45. data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_display.scss +10 -28
  46. data/app/controllers/comfy/admin/cms/files_controller.rb +6 -7
  47. data/app/helpers/comfy/admin/cms_helper.rb +5 -4
  48. data/app/models/concerns/comfy/cms/with_categories.rb +20 -9
  49. data/app/views/comfy/admin/cms/categories/_edit.html.haml +3 -3
  50. data/app/views/comfy/admin/cms/categories/_form.html.haml +3 -9
  51. data/app/views/comfy/admin/cms/categories/_index.html.haml +2 -2
  52. data/app/views/comfy/admin/cms/categories/_show.html.haml +4 -3
  53. data/app/views/comfy/admin/cms/categories/create.js.erb +1 -1
  54. data/app/views/comfy/admin/cms/files/_form.html.haml +11 -12
  55. data/app/views/comfy/admin/cms/files/edit.html.haml +2 -2
  56. data/app/views/comfy/admin/cms/files/new.html.haml +2 -2
  57. data/app/views/comfy/admin/cms/fragments/_form_fragment_attachments.html.haml +7 -5
  58. data/app/views/comfy/admin/cms/fragments/_form_fragments.html.haml +1 -1
  59. data/app/views/comfy/admin/cms/layouts/_form.html.haml +3 -2
  60. data/app/views/comfy/admin/cms/layouts/edit.html.haml +1 -1
  61. data/app/views/comfy/admin/cms/layouts/new.html.haml +2 -2
  62. data/app/views/comfy/admin/cms/pages/_form.html.haml +3 -5
  63. data/app/views/comfy/admin/cms/pages/edit.html.haml +1 -1
  64. data/app/views/comfy/admin/cms/pages/new.html.haml +1 -1
  65. data/app/views/comfy/admin/cms/revisions/show.html.haml +2 -2
  66. data/app/views/comfy/admin/cms/sites/_form.html.haml +4 -4
  67. data/app/views/comfy/admin/cms/sites/edit.html.haml +1 -1
  68. data/app/views/comfy/admin/cms/sites/new.html.haml +2 -2
  69. data/app/views/comfy/admin/cms/snippets/_form.html.haml +2 -2
  70. data/app/views/comfy/admin/cms/snippets/edit.html.haml +1 -1
  71. data/app/views/comfy/admin/cms/snippets/new.html.haml +2 -2
  72. data/app/views/comfy/admin/cms/translations/_form.html.haml +5 -7
  73. data/app/views/comfy/admin/cms/translations/edit.html.haml +1 -1
  74. data/app/views/comfy/admin/cms/translations/new.html.haml +2 -2
  75. data/comfortable_mexican_sofa.gemspec +6 -3
  76. data/config/locales/fr.yml +33 -33
  77. data/lib/comfortable_mexican_sofa/content/tags/file.rb +1 -1
  78. data/lib/comfortable_mexican_sofa/content/tags/files.rb +1 -1
  79. data/lib/comfortable_mexican_sofa/form_builder.rb +10 -15
  80. data/lib/comfortable_mexican_sofa/seeds.rb +2 -5
  81. data/lib/comfortable_mexican_sofa/version.rb +1 -1
  82. metadata +9 -116
  83. data/app/assets/stylesheets/comfy/vendor/_bootstrap.scss +0 -42
  84. data/doc/preview.jpg +0 -0
  85. data/test/controllers/comfy/admin/cms/base_controller_test.rb +0 -18
  86. data/test/controllers/comfy/admin/cms/categories_controller_test.rb +0 -74
  87. data/test/controllers/comfy/admin/cms/files_controller_test.rb +0 -242
  88. data/test/controllers/comfy/admin/cms/layouts_controller_test.rb +0 -137
  89. data/test/controllers/comfy/admin/cms/pages_controller_test.rb +0 -580
  90. data/test/controllers/comfy/admin/cms/revisions/layout_controller_test.rb +0 -62
  91. data/test/controllers/comfy/admin/cms/revisions/page_controller_test.rb +0 -87
  92. data/test/controllers/comfy/admin/cms/revisions/snippet_controller_test.rb +0 -60
  93. data/test/controllers/comfy/admin/cms/revisions/translation_controller_test.rb +0 -68
  94. data/test/controllers/comfy/admin/cms/sites_controller_test.rb +0 -106
  95. data/test/controllers/comfy/admin/cms/snippets_controller_test.rb +0 -156
  96. data/test/controllers/comfy/admin/cms/translations_controller_test.rb +0 -182
  97. data/test/controllers/comfy/cms/assets_controller_test.rb +0 -61
  98. data/test/controllers/comfy/cms/content_controller_test.rb +0 -249
  99. data/test/fixtures/active_storage/attachments.yml +0 -9
  100. data/test/fixtures/active_storage/blobs.yml +0 -13
  101. data/test/fixtures/comfy/cms/categories.yml +0 -4
  102. data/test/fixtures/comfy/cms/categorizations.yml +0 -3
  103. data/test/fixtures/comfy/cms/files.yml +0 -5
  104. data/test/fixtures/comfy/cms/fragments.yml +0 -25
  105. data/test/fixtures/comfy/cms/layouts.yml +0 -34
  106. data/test/fixtures/comfy/cms/pages.yml +0 -24
  107. data/test/fixtures/comfy/cms/revisions.yml +0 -29
  108. data/test/fixtures/comfy/cms/sites.yml +0 -5
  109. data/test/fixtures/comfy/cms/snippets.yml +0 -6
  110. data/test/fixtures/comfy/cms/translations.yml +0 -7
  111. data/test/fixtures/files/data.zip +0 -0
  112. data/test/fixtures/files/document.pdf +0 -0
  113. data/test/fixtures/files/image.gif +0 -0
  114. data/test/fixtures/files/image.jpg +0 -0
  115. data/test/fixtures/generators/cms/application.rb +0 -7
  116. data/test/fixtures/generators/cms/routes.rb +0 -5
  117. data/test/fixtures/generators/scaffold/controller.rb +0 -62
  118. data/test/fixtures/generators/scaffold/migration.rb +0 -9
  119. data/test/fixtures/generators/scaffold/model.rb +0 -21
  120. data/test/fixtures/generators/scaffold/routes.rb +0 -6
  121. data/test/fixtures/generators/scaffold/tests/controller.rb +0 -111
  122. data/test/fixtures/generators/scaffold/tests/fixture +0 -2
  123. data/test/fixtures/generators/scaffold/tests/model.rb +0 -24
  124. data/test/fixtures/generators/scaffold/views/_form.haml +0 -5
  125. data/test/fixtures/generators/scaffold/views/edit.haml +0 -5
  126. data/test/fixtures/generators/scaffold/views/index.haml +0 -21
  127. data/test/fixtures/generators/scaffold/views/new.haml +0 -5
  128. data/test/fixtures/generators/scaffold/views/show.haml +0 -4
  129. data/test/fixtures/views/_nav_hook.html.erb +0 -1
  130. data/test/fixtures/views/_nav_hook_2.html.erb +0 -1
  131. data/test/fixtures/views/render_test/_test.html.erb +0 -1
  132. data/test/fixtures/views/render_test/new.html.erb +0 -1
  133. data/test/fixtures/views/render_test/render_layout.html.erb +0 -1
  134. data/test/gemfiles/5.2.gemfile +0 -19
  135. data/test/generators/cms_assets_generator_test.rb +0 -14
  136. data/test/generators/cms_controllers_generator_test.rb +0 -14
  137. data/test/generators/cms_generator_test.rb +0 -26
  138. data/test/generators/cms_models_generator_test.rb +0 -14
  139. data/test/generators/cms_views_generator_test.rb +0 -14
  140. data/test/generators/scaffold_generator_test.rb +0 -32
  141. data/test/helpers/cms_helper_test.rb +0 -106
  142. data/test/integration/access_control_test.rb +0 -179
  143. data/test/integration/i18n_test.rb +0 -38
  144. data/test/integration/meta_variables_test.rb +0 -27
  145. data/test/integration/render_cms_test.rb +0 -255
  146. data/test/integration/routing_test.rb +0 -19
  147. data/test/integration/seeds_test.rb +0 -75
  148. data/test/integration/sites_test.rb +0 -107
  149. data/test/integration/view_hooks_test.rb +0 -47
  150. data/test/lib/configuration_test.rb +0 -38
  151. data/test/lib/content/block_test.rb +0 -26
  152. data/test/lib/content/params_parser_test.rb +0 -126
  153. data/test/lib/content/renderer_test.rb +0 -276
  154. data/test/lib/content/tag_test.rb +0 -58
  155. data/test/lib/content/tags/asset_test.rb +0 -104
  156. data/test/lib/content/tags/checkbox_test.rb +0 -21
  157. data/test/lib/content/tags/date_test.rb +0 -21
  158. data/test/lib/content/tags/datetime_test.rb +0 -21
  159. data/test/lib/content/tags/file_link_test.rb +0 -91
  160. data/test/lib/content/tags/file_test.rb +0 -69
  161. data/test/lib/content/tags/files_test.rb +0 -52
  162. data/test/lib/content/tags/fragment_test.rb +0 -68
  163. data/test/lib/content/tags/helper_test.rb +0 -62
  164. data/test/lib/content/tags/markdown_test.rb +0 -37
  165. data/test/lib/content/tags/number_test.rb +0 -14
  166. data/test/lib/content/tags/partial_test.rb +0 -65
  167. data/test/lib/content/tags/snippet_test.rb +0 -37
  168. data/test/lib/content/tags/template_test.rb +0 -51
  169. data/test/lib/content/tags/text_test.rb +0 -14
  170. data/test/lib/content/tags/textarea_test.rb +0 -14
  171. data/test/lib/content/tags/wysiwyg_test.rb +0 -14
  172. data/test/lib/revisions_test.rb +0 -222
  173. data/test/lib/seeds/files_test.rb +0 -97
  174. data/test/lib/seeds/layouts_test.rb +0 -156
  175. data/test/lib/seeds/pages_test.rb +0 -230
  176. data/test/lib/seeds/snippets_test.rb +0 -99
  177. data/test/lib/seeds_test.rb +0 -51
  178. data/test/models/categorization_test.rb +0 -76
  179. data/test/models/category_test.rb +0 -39
  180. data/test/models/file_test.rb +0 -43
  181. data/test/models/fragment_test.rb +0 -132
  182. data/test/models/layout_test.rb +0 -194
  183. data/test/models/page_test.rb +0 -575
  184. data/test/models/site_test.rb +0 -190
  185. data/test/models/snippet_test.rb +0 -56
  186. data/test/models/translation_test.rb +0 -67
  187. data/test/system/layouts_frontend_test.rb +0 -15
  188. data/test/system/pages_frontend_test.rb +0 -15
  189. data/test/system/sites_frontend_test.rb +0 -11
  190. data/test/system/snippets_frontend_test.rb +0 -15
  191. data/test/tasks/cms_seeds_test.rb +0 -34
  192. data/test/test_helper.rb +0 -201
@@ -1,42 +0,0 @@
1
- /*!
2
- * Bootstrap v4.0.0-beta.2 (https://getbootstrap.com)
3
- * Copyright 2011-2017 The Bootstrap Authors
4
- * Copyright 2011-2017 Twitter, Inc.
5
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
6
- */
7
-
8
- @import "bootstrap/functions";
9
- @import "bootstrap/variables";
10
- @import "bootstrap/mixins";
11
- @import "bootstrap/root";
12
- @import "bootstrap/print";
13
- @import "bootstrap/reboot";
14
- @import "bootstrap/type";
15
- @import "bootstrap/images";
16
- @import "bootstrap/code";
17
- @import "bootstrap/grid";
18
- @import "bootstrap/tables";
19
- @import "bootstrap/forms";
20
- @import "bootstrap/buttons";
21
- @import "bootstrap/transitions";
22
- @import "bootstrap/dropdown";
23
- @import "bootstrap/button-group";
24
- @import "bootstrap/input-group";
25
- @import "bootstrap/custom-forms";
26
- @import "bootstrap/nav";
27
- @import "bootstrap/navbar";
28
- @import "bootstrap/card";
29
- @import "bootstrap/breadcrumb";
30
- @import "bootstrap/pagination";
31
- @import "bootstrap/badge";
32
- @import "bootstrap/jumbotron";
33
- @import "bootstrap/alert";
34
- @import "bootstrap/progress";
35
- @import "bootstrap/media";
36
- @import "bootstrap/list-group";
37
- @import "bootstrap/close";
38
- @import "bootstrap/modal";
39
- @import "bootstrap/tooltip";
40
- @import "bootstrap/popover";
41
- @import "bootstrap/carousel";
42
- @import "bootstrap/utilities";
Binary file
@@ -1,18 +0,0 @@
1
- require_relative "../../../../test_helper"
2
-
3
- class Comfy::Admin::Cms::BaseControllerTest < ActionDispatch::IntegrationTest
4
-
5
- def test_get_jump
6
- r :get, comfy_admin_cms_path
7
- assert_response :redirect
8
- assert_redirected_to comfy_admin_cms_site_pages_path(comfy_cms_sites(:default))
9
- end
10
-
11
- def test_get_jump_with_redirect_setting
12
- ComfortableMexicanSofa.config.admin_route_redirect = "/cms-admin/sites"
13
- r :get, comfy_admin_cms_path
14
- assert_response :redirect
15
- assert_redirected_to "/cms-admin/sites"
16
- end
17
-
18
- end
@@ -1,74 +0,0 @@
1
- require_relative "../../../../test_helper"
2
-
3
- class Comfy::Admin::Cms::CategoriesControllerTest < ActionDispatch::IntegrationTest
4
-
5
- def setup
6
- @site = comfy_cms_sites(:default)
7
- end
8
-
9
- def test_get_edit
10
- r :get, edit_comfy_admin_cms_site_category_path(site_id: @site, id: comfy_cms_categories(:default)), xhr: true
11
- assert_response :success
12
- assert_template :edit
13
- assert assigns(:category)
14
- end
15
-
16
- def test_get_edit_failure
17
- r :get, edit_comfy_admin_cms_site_category_path(site_id: @site, id: "invalid"), xhr: true
18
- assert_response :success
19
- assert response.body.blank?
20
- end
21
-
22
- def test_creation
23
- assert_difference "Comfy::Cms::Category.count" do
24
- r :post, comfy_admin_cms_site_categories_path(site_id: @site), xhr: true, params: { category: {
25
- label: "Test Label",
26
- categorized_type: "Comfy::Cms::Snippet"
27
- } }
28
- assert_response :success
29
- assert_template :create
30
- assert assigns(:category)
31
- end
32
- end
33
-
34
- def test_creation_failure
35
- assert_no_difference "Comfy::Cms::Category.count" do
36
- r :post, comfy_admin_cms_site_categories_path(site_id: @site), xhr: true, params: { category: {} }
37
- assert_response :success
38
- assert response.body.blank?
39
- end
40
- end
41
-
42
- def test_update
43
- category = comfy_cms_categories(:default)
44
- r :put, comfy_admin_cms_site_category_path(site_id: @site, id: category), xhr: true, params: { category: {
45
- label: "Updated Label"
46
- } }
47
- assert_response :success
48
- assert_template :update
49
- assert assigns(:category)
50
- category.reload
51
- assert_equal "Updated Label", category.label
52
- end
53
-
54
- def test_update_failure
55
- category = comfy_cms_categories(:default)
56
- r :put, comfy_admin_cms_site_category_path(site_id: @site, id: category), xhr: true, params: { category: {
57
- label: ""
58
- } }
59
- assert_response :success
60
- assert response.body.blank?
61
- category.reload
62
- assert_not_equal "", category.label
63
- end
64
-
65
- def test_destroy
66
- assert_difference "Comfy::Cms::Category.count", -1 do
67
- r :delete, comfy_admin_cms_site_category_path(site_id: @site, id: comfy_cms_categories(:default)), xhr: true
68
- assert assigns(:category)
69
- assert_response :success
70
- assert_template :destroy
71
- end
72
- end
73
-
74
- end
@@ -1,242 +0,0 @@
1
- require_relative "../../../../test_helper"
2
-
3
- class Comfy::Admin::Cms::FilesControllerTest < ActionDispatch::IntegrationTest
4
-
5
- def setup
6
- @site = comfy_cms_sites(:default)
7
- @file = comfy_cms_files(:default)
8
- end
9
-
10
- def test_get_index
11
- @site.files.create!(
12
- label: "other",
13
- file: fixture_file_upload("files/image.jpg", "image/jpeg")
14
- )
15
-
16
- r :get, comfy_admin_cms_site_files_path(site_id: @site)
17
- assert_response :success
18
- assert assigns(:files)
19
- assert_template :index
20
- end
21
-
22
- def test_get_index_with_category
23
- category = comfy_cms_categories(:default)
24
- r :get, comfy_admin_cms_site_files_path(site_id: @site), params: {
25
- categories: category.label
26
- }
27
- assert_response :success
28
- assert assigns(:files)
29
- assert_equal 1, assigns(:files).count
30
- assert assigns(:files).first.categories.member? category
31
- end
32
-
33
- def test_get_index_with_category_invalid
34
- r :get, comfy_admin_cms_site_files_path(site_id: @site), params: {
35
- categories: "invalid"
36
- }
37
- assert_response :success
38
- assert assigns(:files)
39
- assert_equal 0, assigns(:files).count
40
- end
41
-
42
- def test_get_index_with_redactor_images
43
- r :get, comfy_admin_cms_site_files_path(site_id: @site), params: {
44
- source: "redactor", type: "image"
45
- }
46
- assert_response :success
47
-
48
- assert_equal [{
49
- "thumb" => url_for(@file.attachment.variant(Comfy::Cms::File::VARIANT_SIZE[:redactor])),
50
- "image" => url_for(@file.attachment),
51
- "title" => @file.label
52
- }], JSON.parse(response.body)
53
- end
54
-
55
- def test_get_index_with_redactor_files
56
- r :get, comfy_admin_cms_site_files_path(site_id: @site), params: {
57
- source: "redactor", type: "file"
58
- }
59
- assert_response :success
60
-
61
- assert_equal [{
62
- "title" => @file.label,
63
- "name" => @file.attachment.filename.to_s,
64
- "link" => url_for(@file.attachment),
65
- "size" => "12.1 KB"
66
- }], JSON.parse(response.body)
67
- end
68
-
69
- def test_get_new
70
- r :get, new_comfy_admin_cms_site_file_path(site_id: @site)
71
- assert_response :success
72
- assert assigns(:file)
73
- assert_template :new
74
- assert_select "form[action='/admin/sites/#{@site.id}/files'][enctype='multipart/form-data']"
75
- end
76
-
77
- def test_get_edit
78
- r :get, edit_comfy_admin_cms_site_file_path(site_id: @site, id: @file)
79
- assert_response :success
80
- assert assigns(:file)
81
- assert_template :edit
82
- assert_select "form[action='/admin/sites/#{@site.id}/files/#{@file.id}']"
83
- end
84
-
85
- def test_get_edit_failure
86
- r :get, edit_comfy_admin_cms_site_file_path(site_id: @site, id: "invalid")
87
- assert_response :redirect
88
- assert_redirected_to action: :index
89
- assert_equal "File not found", flash[:danger]
90
- end
91
-
92
- def test_create
93
- models = [Comfy::Cms::File, Comfy::Cms::Categorization, ActiveStorage::Attachment]
94
- assert_count_difference models do
95
- r :post, comfy_admin_cms_site_files_path(site_id: @site), params: { file: {
96
- label: "Test File",
97
- description: "Test Description",
98
- file: fixture_file_upload("files/image.jpg", "image/jpeg"),
99
- category_ids: { comfy_cms_categories(:default).id => "1" }
100
- } }
101
- assert_response :redirect
102
- file = Comfy::Cms::File.last
103
- assert_equal comfy_cms_sites(:default), file.site
104
- assert_equal "Test File", file.label
105
- assert_equal "Test Description", file.description
106
- assert_redirected_to action: :edit, id: file
107
- assert_equal "Files uploaded", flash[:success]
108
- end
109
- end
110
-
111
- def test_create_failure
112
- assert_count_no_difference Comfy::Cms::File do
113
- r :post, comfy_admin_cms_site_files_path(site_id: @site), params: { file: {} }
114
- assert_response :success
115
- assert_template :new
116
- assert_equal "Failed to upload files", flash[:danger]
117
- end
118
- end
119
-
120
- def test_create_as_plupload
121
- assert_count_difference [Comfy::Cms::File, ActiveStorage::Attachment] do
122
- r :post, comfy_admin_cms_site_files_path(site_id: @site), params: {
123
- source: "plupload",
124
- file: {
125
- file: fixture_file_upload("files/image.jpg", "image/jpeg")
126
- }
127
- }
128
- assert_response :success
129
- assert_no_select "body"
130
- assert_select "li[data-id='#{Comfy::Cms::File.last.id}']"
131
- end
132
- end
133
-
134
- def test_create_as_plupload_failure
135
- assert_count_no_difference Comfy::Cms::File do
136
- r :post, comfy_admin_cms_site_files_path(site_id: @site), params: {
137
- source: "plupload",
138
- file: {}
139
- }
140
- assert_response :unprocessable_entity
141
- end
142
- end
143
-
144
- def test_create_as_redactor
145
- assert_count_difference [Comfy::Cms::File, ActiveStorage::Attachment, Comfy::Cms::Categorization] do
146
- r :post, comfy_admin_cms_site_files_path(site_id: @site), params: {
147
- source: "redactor",
148
- file: fixture_file_upload("files/image.jpg", "image/jpeg")
149
- }
150
- assert_response :success
151
-
152
- file = Comfy::Cms::File.last
153
- assert_equal ({
154
- "filelink" => url_for(file.attachment),
155
- "filename" => file.attachment.filename
156
- }), JSON.parse(response.body)
157
-
158
- category = Comfy::Cms::Category.last
159
- assert_equal "wysiwyg", category.label
160
- assert_equal [category], file.categories
161
- end
162
- end
163
-
164
- def test_create_as_redactor_failure
165
- assert_count_no_difference Comfy::Cms::File do
166
- r :post, comfy_admin_cms_site_files_path(site_id: @site), params: {
167
- source: "redactor",
168
- file: {}
169
- }
170
- assert_response :unprocessable_entity
171
- end
172
- end
173
-
174
- def test_create_as_plupload_with_selected_category
175
- category = comfy_cms_categories(:default)
176
-
177
- assert_count_difference [Comfy::Cms::File, ActiveStorage::Attachment] do
178
- r :post, comfy_admin_cms_site_files_path(site_id: @site), params: {
179
- category: [category.label],
180
- source: "plupload",
181
- file: {
182
- file: fixture_file_upload("files/image.jpg", "image/jpeg")
183
- }
184
- }
185
- assert_response :success
186
-
187
- file = Comfy::Cms::File.last
188
- assert_equal [category], file.categories
189
- end
190
- end
191
-
192
- def test_update
193
- r :put, comfy_admin_cms_site_file_path(site_id: @site, id: @file), params: { file: {
194
- label: "Updated File",
195
- description: "Updated Description",
196
- file: fixture_file_upload("files/image.jpg", "image/jpeg")
197
- } }
198
- assert_response :redirect
199
- assert_redirected_to action: :edit, site_id: @site, id: @file
200
- assert_equal "File updated", flash[:success]
201
- @file.reload
202
- assert_equal "Updated File", @file.label
203
- assert_equal "Updated Description", @file.description
204
- assert_equal "image.jpg", @file.attachment.filename.to_s
205
- end
206
-
207
- def test_destroy
208
- assert_count_difference [Comfy::Cms::File, ActiveStorage::Attachment], -1 do
209
- r :delete, comfy_admin_cms_site_file_path(site_id: @site, id: @file)
210
- assert_response :redirect
211
- assert_redirected_to action: :index
212
- assert_equal "File deleted", flash[:success]
213
- end
214
- end
215
-
216
- def test_destroy_as_xhr
217
- assert_count_difference [Comfy::Cms::File], -1 do
218
- r :delete, comfy_admin_cms_site_file_path(site_id: @site, id: @file), xhr: true
219
- assert_response :success
220
- end
221
- end
222
-
223
- def test_reorder
224
- file_one = @file
225
- file_two = @site.files.create(
226
- file: fixture_file_upload("files/image.jpg", "image/jpeg")
227
- )
228
- assert_equal 0, file_one.position
229
- assert_equal 1, file_two.position
230
-
231
- r :put, reorder_comfy_admin_cms_site_files_path(site_id: @site), params: {
232
- order: [file_two.id, file_one.id]
233
- }
234
- assert_response :success
235
- file_one.reload
236
- file_two.reload
237
-
238
- assert_equal 1, file_one.position
239
- assert_equal 0, file_two.position
240
- end
241
-
242
- end
@@ -1,137 +0,0 @@
1
- require_relative "../../../../test_helper"
2
-
3
- class Comfy::Admin::Cms::LayoutsControllerTest < ActionDispatch::IntegrationTest
4
-
5
- setup do
6
- @site = comfy_cms_sites(:default)
7
- end
8
-
9
- def test_get_index
10
- @site.layouts.create!(identifier: "other")
11
-
12
- r :get, comfy_admin_cms_site_layouts_path(site_id: @site)
13
- assert_response :success
14
- assert assigns(:layouts)
15
- assert_template :index
16
- end
17
-
18
- def test_get_index_with_no_layouts
19
- Comfy::Cms::Layout.delete_all
20
- r :get, comfy_admin_cms_site_layouts_path(site_id: @site)
21
- assert_response :redirect
22
- assert_redirected_to action: :new
23
- end
24
-
25
- def test_get_new
26
- r :get, new_comfy_admin_cms_site_layout_path(site_id: @site)
27
- assert_response :success
28
- assert assigns(:layout)
29
- assert_equal "{{ cms:wysiwyg content }}", assigns(:layout).content
30
- assert_template :new
31
- assert_select "form[action='/admin/sites/#{@site.id}/layouts']"
32
- end
33
-
34
- def test_get_new_with_parent
35
- layout = comfy_cms_layouts(:default)
36
- layout.update_column(:app_layout, "application")
37
- r :get, new_comfy_admin_cms_site_layout_path(site_id: @site), params: { parent_id: layout.id }
38
- assert_response :success
39
- assert_equal layout.app_layout, assigns(:layout).app_layout
40
- end
41
-
42
- def test_get_edit
43
- layout = comfy_cms_layouts(:default)
44
- r :get, edit_comfy_admin_cms_site_layout_path(site_id: @site, id: layout)
45
- assert_response :success
46
- assert assigns(:layout)
47
- assert_template :edit
48
- assert_select "form[action='/admin/sites/#{layout.site.id}/layouts/#{layout.id}']"
49
- end
50
-
51
- def test_get_edit_failure
52
- r :get, edit_comfy_admin_cms_site_layout_path(site_id: @site, id: "invalid")
53
- assert_response :redirect
54
- assert_redirected_to action: :index
55
- assert_equal "Layout not found", flash[:danger]
56
- end
57
-
58
- def test_creation
59
- assert_difference "Comfy::Cms::Layout.count" do
60
- r :post, comfy_admin_cms_site_layouts_path(site_id: @site), params: { layout: {
61
- label: "Test Layout",
62
- identifier: "test",
63
- content: "Test {{cms:page:content}}"
64
- } }
65
- assert_response :redirect
66
- layout = Comfy::Cms::Layout.last
67
- assert_equal @site, layout.site
68
- assert_redirected_to action: :edit, site_id: layout.site, id: layout
69
- assert_equal "Layout created", flash[:success]
70
- end
71
- end
72
-
73
- def test_creation_failure
74
- assert_no_difference "Comfy::Cms::Layout.count" do
75
- r :post, comfy_admin_cms_site_layouts_path(site_id: @site), params: { layout: {} }
76
- assert_response :success
77
- assert_template :new
78
- assert_equal "Failed to create layout", flash[:danger]
79
- end
80
- end
81
-
82
- def test_update
83
- layout = comfy_cms_layouts(:default)
84
- r :put, comfy_admin_cms_site_layout_path(site_id: @site, id: layout), params: { layout: {
85
- label: "New Label",
86
- content: "New {{cms:page:content}}"
87
- } }
88
- assert_response :redirect
89
- assert_redirected_to action: :edit, site_id: layout.site, id: layout
90
- assert_equal "Layout updated", flash[:success]
91
- layout.reload
92
- assert_equal "New Label", layout.label
93
- assert_equal "New {{cms:page:content}}", layout.content
94
- end
95
-
96
- def test_update_failure
97
- layout = comfy_cms_layouts(:default)
98
- r :put, comfy_admin_cms_site_layout_path(site_id: @site, id: layout), params: { layout: {
99
- identifier: ""
100
- } }
101
- assert_response :success
102
- assert_template :edit
103
- layout.reload
104
- assert_not_equal "", layout.identifier
105
- assert_equal "Failed to update layout", flash[:danger]
106
- end
107
-
108
- def test_destroy
109
- assert_difference "Comfy::Cms::Layout.count", -1 do
110
- r :delete, comfy_admin_cms_site_layout_path(site_id: @site, id: comfy_cms_layouts(:default))
111
- assert_response :redirect
112
- assert_redirected_to action: :index
113
- assert_equal "Layout deleted", flash[:success]
114
- end
115
- end
116
-
117
- def test_reorder
118
- layout_one = comfy_cms_layouts(:default)
119
- layout_two = @site.layouts.create!(
120
- label: "test",
121
- identifier: "test"
122
- )
123
- assert_equal 0, layout_one.position
124
- assert_equal 1, layout_two.position
125
-
126
- r :put, reorder_comfy_admin_cms_site_layouts_path(site_id: @site), params: {
127
- order: [layout_two.id, layout_one.id]
128
- }
129
- assert_response :success
130
- layout_one.reload
131
- layout_two.reload
132
-
133
- assert_equal 1, layout_one.position
134
- assert_equal 0, layout_two.position
135
- end
136
-
137
- end