comfortable_mexican_sofa 2.0.2 → 2.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (216) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +95 -4
  3. data/.travis.yml +2 -1
  4. data/CONTRIBUTING.md +8 -5
  5. data/Gemfile +9 -9
  6. data/Rakefile +1 -1
  7. data/app/assets/javascripts/comfy/admin/cms/base.js.coffee +1 -0
  8. data/app/assets/stylesheets/comfy/admin/cms/base.sass +14 -4
  9. data/app/controllers/application_controller.rb +2 -2
  10. data/app/controllers/comfy/admin/base_controller.rb +1 -1
  11. data/app/controllers/comfy/admin/cms/base_controller.rb +7 -6
  12. data/app/controllers/comfy/admin/cms/categories_controller.rb +2 -1
  13. data/app/controllers/comfy/admin/cms/files_controller.rb +32 -29
  14. data/app/controllers/comfy/admin/cms/layouts_controller.rb +10 -9
  15. data/app/controllers/comfy/admin/cms/pages_controller.rb +31 -27
  16. data/app/controllers/comfy/admin/cms/revisions/base_controller.rb +5 -4
  17. data/app/controllers/comfy/admin/cms/revisions/layout_controller.rb +2 -1
  18. data/app/controllers/comfy/admin/cms/revisions/page_controller.rb +9 -3
  19. data/app/controllers/comfy/admin/cms/revisions/snippet_controller.rb +2 -1
  20. data/app/controllers/comfy/admin/cms/revisions/translation_controller.rb +9 -3
  21. data/app/controllers/comfy/admin/cms/sites_controller.rb +10 -9
  22. data/app/controllers/comfy/admin/cms/snippets_controller.rb +10 -9
  23. data/app/controllers/comfy/admin/cms/translations_controller.rb +15 -14
  24. data/app/controllers/comfy/cms/assets_controller.rb +4 -3
  25. data/app/controllers/comfy/cms/base_controller.rb +12 -11
  26. data/app/controllers/comfy/cms/content_controller.rb +8 -7
  27. data/app/controllers/concerns/comfy/paginate.rb +2 -1
  28. data/app/helpers/comfy/cms_helper.rb +6 -3
  29. data/app/models/comfy/cms/categorization.rb +2 -1
  30. data/app/models/comfy/cms/category.rb +3 -2
  31. data/app/models/comfy/cms/file.rb +9 -7
  32. data/app/models/comfy/cms/fragment.rb +8 -6
  33. data/app/models/comfy/cms/layout.rb +24 -24
  34. data/app/models/comfy/cms/page.rb +51 -32
  35. data/app/models/comfy/cms/revision.rb +2 -1
  36. data/app/models/comfy/cms/site.rb +27 -26
  37. data/app/models/comfy/cms/snippet.rb +7 -5
  38. data/app/models/comfy/cms/translation.rb +6 -4
  39. data/app/models/concerns/comfy/cms/with_categories.rb +9 -7
  40. data/app/models/concerns/comfy/cms/with_fragments.rb +15 -13
  41. data/app/views/comfy/admin/cms/categories/_categories.html.haml +1 -1
  42. data/app/views/comfy/admin/cms/files/_file.html.haml +3 -3
  43. data/app/views/comfy/admin/cms/files/_modal.html.haml +2 -2
  44. data/app/views/comfy/admin/cms/{pages/_fragment_attachments.html.haml → fragments/_form_fragment_attachments.html.haml} +0 -0
  45. data/app/views/comfy/admin/cms/{pages → fragments}/_form_fragments.html.haml +0 -0
  46. data/app/views/comfy/admin/cms/layouts/_index_branch.html.haml +2 -2
  47. data/app/views/comfy/admin/cms/pages/_form.html.haml +7 -7
  48. data/app/views/comfy/admin/cms/pages/_index_branch.html.haml +16 -15
  49. data/app/views/comfy/admin/cms/pages/form_fragments.js.erb +1 -1
  50. data/app/views/comfy/admin/cms/pages/toggle_branch.js.erb +1 -1
  51. data/app/views/comfy/admin/cms/snippets/index.html.haml +3 -3
  52. data/app/views/comfy/admin/cms/translations/_form.html.haml +1 -1
  53. data/app/views/comfy/admin/cms/translations/form_fragments.js.erb +1 -1
  54. data/app/views/layouts/comfy/admin/cms/_body.html.haml +1 -4
  55. data/app/views/layouts/comfy/admin/cms.html.haml +1 -1
  56. data/bin/bundle +3 -0
  57. data/bin/rails +4 -0
  58. data/bin/rake +4 -0
  59. data/bin/setup +36 -0
  60. data/bin/update +31 -0
  61. data/bin/yarn +11 -0
  62. data/comfortable_mexican_sofa.gemspec +14 -14
  63. data/config/application.rb +4 -3
  64. data/config/boot.rb +3 -3
  65. data/config/cms_routes.rb +1 -1
  66. data/config/environment.rb +1 -1
  67. data/config/environments/development.rb +2 -2
  68. data/config/environments/test.rb +1 -1
  69. data/config/initializers/comfortable_mexican_sofa.rb +2 -5
  70. data/config/locales/cs.yml +2 -1
  71. data/config/locales/da.yml +2 -1
  72. data/config/locales/de.yml +2 -1
  73. data/config/locales/en.yml +2 -1
  74. data/config/locales/es.yml +2 -1
  75. data/config/locales/fr.yml +2 -1
  76. data/config/locales/it.yml +2 -1
  77. data/config/locales/ja.yml +2 -1
  78. data/config/locales/nb.yml +2 -1
  79. data/config/locales/nl.yml +2 -1
  80. data/config/locales/pl.yml +2 -1
  81. data/config/locales/pt-BR.yml +2 -1
  82. data/config/locales/ru.yml +2 -1
  83. data/config/locales/sk.yml +2 -1
  84. data/config/locales/sv.yml +2 -1
  85. data/config/locales/tr.yml +2 -1
  86. data/config/locales/uk.yml +2 -1
  87. data/config/locales/zh-CN.yml +2 -1
  88. data/config/locales/zh-TW.yml +2 -1
  89. data/config.ru +1 -1
  90. data/lib/comfortable_mexican_sofa/access_control/admin_authentication.rb +2 -1
  91. data/lib/comfortable_mexican_sofa/access_control/admin_authorization.rb +2 -0
  92. data/lib/comfortable_mexican_sofa/access_control/public_authentication.rb +3 -1
  93. data/lib/comfortable_mexican_sofa/access_control/public_authorization.rb +2 -0
  94. data/lib/comfortable_mexican_sofa/configuration.rb +27 -29
  95. data/lib/comfortable_mexican_sofa/content/block.rb +2 -1
  96. data/lib/comfortable_mexican_sofa/content/params_parser.rb +22 -21
  97. data/lib/comfortable_mexican_sofa/content/renderer.rb +10 -8
  98. data/lib/comfortable_mexican_sofa/content/tag.rb +1 -0
  99. data/lib/comfortable_mexican_sofa/content/tags/asset.rb +4 -3
  100. data/lib/comfortable_mexican_sofa/content/tags/checkbox.rb +3 -2
  101. data/lib/comfortable_mexican_sofa/content/tags/date.rb +4 -3
  102. data/lib/comfortable_mexican_sofa/content/tags/datetime.rb +4 -3
  103. data/lib/comfortable_mexican_sofa/content/tags/file.rb +15 -13
  104. data/lib/comfortable_mexican_sofa/content/tags/file_link.rb +8 -7
  105. data/lib/comfortable_mexican_sofa/content/tags/files.rb +15 -13
  106. data/lib/comfortable_mexican_sofa/content/tags/fragment.rb +7 -6
  107. data/lib/comfortable_mexican_sofa/content/tags/helper.rb +2 -1
  108. data/lib/comfortable_mexican_sofa/content/tags/markdown.rb +5 -4
  109. data/lib/comfortable_mexican_sofa/content/tags/number.rb +4 -3
  110. data/lib/comfortable_mexican_sofa/content/tags/partial.rb +1 -0
  111. data/lib/comfortable_mexican_sofa/content/tags/snippet.rb +3 -2
  112. data/lib/comfortable_mexican_sofa/content/tags/template.rb +1 -0
  113. data/lib/comfortable_mexican_sofa/content/tags/text.rb +4 -3
  114. data/lib/comfortable_mexican_sofa/content/tags/textarea.rb +4 -3
  115. data/lib/comfortable_mexican_sofa/content/tags/wysiwyg.rb +4 -3
  116. data/lib/comfortable_mexican_sofa/content.rb +21 -21
  117. data/lib/comfortable_mexican_sofa/engine.rb +17 -15
  118. data/lib/comfortable_mexican_sofa/error.rb +12 -6
  119. data/lib/comfortable_mexican_sofa/extensions/acts_as_tree.rb +17 -11
  120. data/lib/comfortable_mexican_sofa/extensions/has_revisions.rb +14 -13
  121. data/lib/comfortable_mexican_sofa/form_builder.rb +2 -2
  122. data/lib/comfortable_mexican_sofa/render_methods.rb +74 -76
  123. data/lib/comfortable_mexican_sofa/routes/cms.rb +4 -4
  124. data/lib/comfortable_mexican_sofa/routes/cms_admin.rb +2 -1
  125. data/lib/comfortable_mexican_sofa/routing.rb +4 -2
  126. data/lib/comfortable_mexican_sofa/seeds/file/exporter.rb +7 -6
  127. data/lib/comfortable_mexican_sofa/seeds/file/importer.rb +9 -9
  128. data/lib/comfortable_mexican_sofa/seeds/layout/exporter.rb +8 -7
  129. data/lib/comfortable_mexican_sofa/seeds/layout/importer.rb +11 -10
  130. data/lib/comfortable_mexican_sofa/seeds/page/exporter.rb +25 -23
  131. data/lib/comfortable_mexican_sofa/seeds/page/importer.rb +47 -43
  132. data/lib/comfortable_mexican_sofa/seeds/snippet/exporter.rb +7 -6
  133. data/lib/comfortable_mexican_sofa/seeds/snippet/importer.rb +7 -6
  134. data/lib/comfortable_mexican_sofa/seeds.rb +16 -9
  135. data/lib/comfortable_mexican_sofa/version.rb +4 -2
  136. data/lib/comfortable_mexican_sofa/view_hooks.rb +10 -9
  137. data/lib/comfortable_mexican_sofa.rb +30 -30
  138. data/lib/generators/comfy/cms/assets_generator.rb +6 -4
  139. data/lib/generators/comfy/cms/cms_generator.rb +14 -14
  140. data/lib/generators/comfy/cms/controllers_generator.rb +5 -3
  141. data/lib/generators/comfy/cms/models_generator.rb +5 -3
  142. data/lib/generators/comfy/cms/views_generator.rb +5 -3
  143. data/lib/generators/comfy/scaffold/scaffold_generator.rb +19 -18
  144. data/lib/tasks/cms_seeds.rake +4 -5
  145. data/test/controllers/comfy/admin/cms/base_controller_test.rb +4 -3
  146. data/test/controllers/comfy/admin/cms/categories_controller_test.rb +19 -18
  147. data/test/controllers/comfy/admin/cms/files_controller_test.rb +19 -19
  148. data/test/controllers/comfy/admin/cms/layouts_controller_test.rb +33 -32
  149. data/test/controllers/comfy/admin/cms/pages_controller_test.rb +99 -98
  150. data/test/controllers/comfy/admin/cms/revisions/layout_controller_test.rb +9 -9
  151. data/test/controllers/comfy/admin/cms/revisions/page_controller_test.rb +6 -6
  152. data/test/controllers/comfy/admin/cms/revisions/snippet_controller_test.rb +9 -8
  153. data/test/controllers/comfy/admin/cms/revisions/translation_controller_test.rb +6 -7
  154. data/test/controllers/comfy/admin/cms/sites_controller_test.rb +31 -30
  155. data/test/controllers/comfy/admin/cms/snippets_controller_test.rb +38 -37
  156. data/test/controllers/comfy/admin/cms/translations_controller_test.rb +21 -20
  157. data/test/controllers/comfy/cms/assets_controller_test.rb +14 -13
  158. data/test/controllers/comfy/cms/content_controller_test.rb +58 -57
  159. data/test/gemfiles/Gemfile.rails.5.2 +5 -4
  160. data/test/generators/cms_assets_generator_test.rb +6 -4
  161. data/test/generators/cms_controllers_generator_test.rb +7 -5
  162. data/test/generators/cms_generator_test.rb +12 -10
  163. data/test/generators/cms_models_generator_test.rb +7 -5
  164. data/test/generators/cms_views_generator_test.rb +6 -4
  165. data/test/generators/scaffold_generator_test.rb +18 -16
  166. data/test/helpers/cms_helper_test.rb +5 -2
  167. data/test/integration/access_control_test.rb +29 -20
  168. data/test/integration/i18n_test.rb +8 -7
  169. data/test/integration/js_variables_test.rb +2 -1
  170. data/test/integration/render_cms_test.rb +93 -88
  171. data/test/integration/routing_test.rb +4 -3
  172. data/test/integration/seeds_test.rb +21 -22
  173. data/test/integration/sites_test.rb +26 -25
  174. data/test/integration/view_hooks_test.rb +15 -14
  175. data/test/lib/configuration_test.rb +13 -15
  176. data/test/lib/content/block_test.rb +1 -1
  177. data/test/lib/content/params_parser_test.rb +11 -10
  178. data/test/lib/content/renderer_test.rb +16 -11
  179. data/test/lib/content/tag_test.rb +7 -3
  180. data/test/lib/content/tags/asset_test.rb +4 -3
  181. data/test/lib/content/tags/checkbox_test.rb +2 -1
  182. data/test/lib/content/tags/date_test.rb +2 -1
  183. data/test/lib/content/tags/datetime_test.rb +2 -1
  184. data/test/lib/content/tags/file_link_test.rb +3 -2
  185. data/test/lib/content/tags/file_test.rb +3 -2
  186. data/test/lib/content/tags/files_test.rb +4 -3
  187. data/test/lib/content/tags/fragment_test.rb +2 -1
  188. data/test/lib/content/tags/helper_test.rb +4 -3
  189. data/test/lib/content/tags/markdown_test.rb +2 -1
  190. data/test/lib/content/tags/number_test.rb +2 -1
  191. data/test/lib/content/tags/partial_test.rb +4 -3
  192. data/test/lib/content/tags/snippet_test.rb +2 -1
  193. data/test/lib/content/tags/template_test.rb +2 -1
  194. data/test/lib/content/tags/text_test.rb +2 -1
  195. data/test/lib/content/tags/textarea_test.rb +2 -1
  196. data/test/lib/content/tags/wysiwyg_test.rb +2 -1
  197. data/test/lib/revisions_test.rb +44 -42
  198. data/test/lib/seeds/files_test.rb +30 -29
  199. data/test/lib/seeds/layouts_test.rb +13 -12
  200. data/test/lib/seeds/pages_test.rb +32 -29
  201. data/test/lib/seeds/snippets_test.rb +21 -20
  202. data/test/lib/seeds_test.rb +9 -8
  203. data/test/models/categorization_test.rb +10 -9
  204. data/test/models/category_test.rb +1 -1
  205. data/test/models/file_test.rb +1 -1
  206. data/test/models/fragment_test.rb +11 -10
  207. data/test/models/layout_test.rb +71 -70
  208. data/test/models/page_test.rb +170 -159
  209. data/test/models/site_test.rb +17 -16
  210. data/test/models/snippet_test.rb +1 -0
  211. data/test/models/translation_test.rb +2 -1
  212. data/test/tasks/cms_seeds_test.rb +3 -2
  213. data/test/test_helper.rb +42 -40
  214. metadata +55 -51
  215. data/.rubocop_todo.yml +0 -974
  216. data/script/rails +0 -6
@@ -1,4 +1,4 @@
1
- require_relative '../test_helper'
1
+ require_relative "../test_helper"
2
2
 
3
3
  class RevisionsTest < ActiveSupport::TestCase
4
4
 
@@ -11,39 +11,39 @@ class RevisionsTest < ActiveSupport::TestCase
11
11
 
12
12
  def test_fixtures_validity
13
13
  assert_equal ({
14
- 'content' => 'revision {{cms:fragment content}}',
15
- 'css' => 'revision css',
16
- 'js' => 'revision js' }), comfy_cms_revisions(:layout).data
14
+ "content" => "revision {{cms:fragment content}}",
15
+ "css" => "revision css",
16
+ "js" => "revision js" }), comfy_cms_revisions(:layout).data
17
17
 
18
- assert_equal ({'fragments_attributes' => [
19
- {'identifier' => 'content', 'content' => 'old content'},
20
- {'identifier' => 'title', 'content' => 'old title'}
21
- ]}), comfy_cms_revisions(:page).data
18
+ assert_equal ({ "fragments_attributes" => [
19
+ { "identifier" => "content", "content" => "old content" },
20
+ { "identifier" => "title", "content" => "old title" }
21
+ ] }), comfy_cms_revisions(:page).data
22
22
 
23
23
  assert_equal ({
24
- 'content' => 'revision content'
24
+ "content" => "revision content"
25
25
  }), comfy_cms_revisions(:snippet).data
26
26
  end
27
27
 
28
28
  def test_init_for_layouts
29
- assert_equal ['content', 'css', 'js'], @layout.revision_fields
29
+ assert_equal %w[content css js], @layout.revision_fields
30
30
  end
31
31
 
32
32
  def test_init_for_pages
33
- assert_equal ['fragments_attributes'], @page.revision_fields
33
+ assert_equal ["fragments_attributes"], @page.revision_fields
34
34
  end
35
35
 
36
36
  def test_init_for_snippets
37
- assert_equal ['content'], @snippet.revision_fields
37
+ assert_equal ["content"], @snippet.revision_fields
38
38
  end
39
39
 
40
40
  def test_creation_for_layout
41
- old_attributes = @layout.attributes.slice('content', 'css', 'js')
41
+ old_attributes = @layout.attributes.slice("content", "css", "js")
42
42
 
43
- assert_difference -> {@layout.revisions.count} do
43
+ assert_difference -> { @layout.revisions.count } do
44
44
  @layout.update_attributes!(
45
- content: 'new {{cms:fragment content}}',
46
- js: 'new js'
45
+ content: "new {{cms:fragment content}}",
46
+ js: "new js"
47
47
  )
48
48
  @layout.reload
49
49
  assert_equal 2, @layout.revisions.count
@@ -53,17 +53,17 @@ class RevisionsTest < ActiveSupport::TestCase
53
53
  end
54
54
 
55
55
  def test_creation_for_layout_ignore
56
- assert_no_difference -> {@layout.revisions.count} do
56
+ assert_no_difference -> { @layout.revisions.count } do
57
57
  @layout.update_attributes(label: "new label")
58
58
  end
59
59
  end
60
60
 
61
61
  def test_creation_for_page
62
- assert_difference -> {@page.revisions.count} do
62
+ assert_difference -> { @page.revisions.count } do
63
63
  @page.update_attributes!(
64
64
  fragments_attributes: [
65
- { identifier: 'content',
66
- content: 'new content' }
65
+ { identifier: "content",
66
+ content: "new content" }
67
67
  ]
68
68
  )
69
69
  @page.reload
@@ -91,21 +91,22 @@ class RevisionsTest < ActiveSupport::TestCase
91
91
  tag: "text",
92
92
  content: "content",
93
93
  datetime: nil,
94
- boolean: false }]
94
+ boolean: false }
95
+ ]
95
96
  }), revision.data
96
97
  end
97
98
  end
98
99
 
99
100
  def test_creation_for_page_ignore
100
- assert_no_difference -> {@page.revisions.count} do
101
+ assert_no_difference -> { @page.revisions.count } do
101
102
  @page.update_attributes(label: "new label")
102
103
  end
103
104
  end
104
105
 
105
106
  def test_creation_for_snippet
106
- old_attributes = @snippet.attributes.slice('content')
107
+ old_attributes = @snippet.attributes.slice("content")
107
108
 
108
- assert_difference -> {@snippet.revisions.count} do
109
+ assert_difference -> { @snippet.revisions.count } do
109
110
  @snippet.update_attributes(content: "new content")
110
111
  @snippet.reload
111
112
  assert_equal 2, @snippet.revisions.count
@@ -115,18 +116,18 @@ class RevisionsTest < ActiveSupport::TestCase
115
116
  end
116
117
 
117
118
  def test_creation_for_snippet_ignore
118
- assert_no_difference -> {@snippet.revisions.count} do
119
+ assert_no_difference -> { @snippet.revisions.count } do
119
120
  @snippet.update_attributes(label: "new label")
120
121
  end
121
122
  end
122
123
 
123
124
  def test_creation_for_new_record
124
- assert_difference 'Comfy::Cms::Snippet.count' do
125
- assert_no_difference 'Comfy::Cms::Revision.count' do
125
+ assert_difference "Comfy::Cms::Snippet.count" do
126
+ assert_no_difference "Comfy::Cms::Revision.count" do
126
127
  snippet = @site.snippets.create!(
127
- label: 'test snippet',
128
- identifier: 'test_snippet',
129
- content: 'test content'
128
+ label: "test snippet",
129
+ identifier: "test_snippet",
130
+ content: "test content"
130
131
  )
131
132
  assert_equal 0, snippet.revisions.count
132
133
  end
@@ -136,19 +137,19 @@ class RevisionsTest < ActiveSupport::TestCase
136
137
  def test_restore_from_revision_for_layout
137
138
  revision = comfy_cms_revisions(:layout)
138
139
 
139
- assert_difference -> {@layout.revisions.count} do
140
+ assert_difference -> { @layout.revisions.count } do
140
141
  @layout.restore_from_revision(revision)
141
142
  @layout.reload
142
- assert_equal 'revision {{cms:fragment content}}', @layout.content
143
- assert_equal 'revision css', @layout.css
144
- assert_equal 'revision js', @layout.js
143
+ assert_equal "revision {{cms:fragment content}}", @layout.content
144
+ assert_equal "revision css", @layout.css
145
+ assert_equal "revision js", @layout.js
145
146
  end
146
147
  end
147
148
 
148
149
  def test_restore_from_revision_for_page
149
150
  revision = comfy_cms_revisions(:page)
150
151
 
151
- assert_difference -> {@page.revisions.count} do
152
+ assert_difference -> { @page.revisions.count } do
152
153
  @page.restore_from_revision(revision)
153
154
  @page.reload
154
155
 
@@ -157,7 +158,7 @@ class RevisionsTest < ActiveSupport::TestCase
157
158
  tag: "checkbox",
158
159
  content: nil,
159
160
  datetime: nil,
160
- boolean:true },
161
+ boolean: true },
161
162
  { identifier: "file",
162
163
  tag: "file",
163
164
  content: nil,
@@ -185,17 +186,17 @@ class RevisionsTest < ActiveSupport::TestCase
185
186
  def test_restore_from_revision_for_snippet
186
187
  revision = comfy_cms_revisions(:snippet)
187
188
 
188
- assert_difference -> {@snippet.revisions.count} do
189
+ assert_difference -> { @snippet.revisions.count } do
189
190
  @snippet.restore_from_revision(revision)
190
191
  @snippet.reload
191
- assert_equal 'revision content', @snippet.content
192
+ assert_equal "revision content", @snippet.content
192
193
  end
193
194
  end
194
195
 
195
196
  def test_restore_from_revision_with_wrong_revision_type
196
197
  revision = comfy_cms_revisions(:layout)
197
198
 
198
- assert_no_difference -> {@snippet.revisions.count} do
199
+ assert_no_difference -> { @snippet.revisions.count } do
199
200
  @snippet.restore_from_revision(revision)
200
201
  @snippet.reload
201
202
  assert_equal "snippet content", @snippet.content
@@ -208,13 +209,14 @@ class RevisionsTest < ActiveSupport::TestCase
208
209
 
209
210
  assert_equal 1, @snippet.revisions.count
210
211
 
211
- assert_no_difference -> {@snippet.revisions.count} do
212
- @snippet.update_attributes(content: 'new content')
212
+ assert_no_difference -> { @snippet.revisions.count } do
213
+ @snippet.update_attributes(content: "new content")
213
214
  assert_nil Comfy::Cms::Revision.find_by_id(revision.id)
214
215
 
215
216
  @snippet.reload
216
217
  revision = @snippet.revisions.last
217
- assert_equal ({"content" => "snippet content"}), revision.data
218
+ assert_equal ({ "content" => "snippet content" }), revision.data
218
219
  end
219
220
  end
221
+
220
222
  end
@@ -1,4 +1,4 @@
1
- require_relative '../../test_helper'
1
+ require_relative "../../test_helper"
2
2
 
3
3
  class SeedsFilesTest < ActiveSupport::TestCase
4
4
 
@@ -10,7 +10,7 @@ class SeedsFilesTest < ActiveSupport::TestCase
10
10
  Comfy::Cms::File.delete_all
11
11
 
12
12
  assert_count_difference [Comfy::Cms::File] do
13
- ComfortableMexicanSofa::Seeds::File::Importer.new('sample-site', 'default-site').import!
13
+ ComfortableMexicanSofa::Seeds::File::Importer.new("sample-site", "default-site").import!
14
14
  end
15
15
 
16
16
  assert file = Comfy::Cms::File.last
@@ -21,76 +21,77 @@ class SeedsFilesTest < ActiveSupport::TestCase
21
21
  assert_equal "Seed File Description", file.description
22
22
 
23
23
  assert_equal 2, file.categories.count
24
- assert_equal %w(category_a category_b), file.categories.map{|c| c.label}
24
+ assert_equal %w[category_a category_b], file.categories.map(&:label)
25
25
  end
26
26
 
27
27
  def test_update
28
28
  file = comfy_cms_files(:default)
29
29
  file.update_column(:updated_at, 10.years.ago)
30
- assert_equal 'default.jpg', file.attachment.filename.to_s
31
- assert_equal 'default file', file.label
32
- assert_equal 'default description', file.description
30
+ assert_equal "default.jpg", file.attachment.filename.to_s
31
+ assert_equal "default file", file.label
32
+ assert_equal "default description", file.description
33
33
 
34
34
  assert_count_no_difference [Comfy::Cms::File] do
35
- ComfortableMexicanSofa::Seeds::File::Importer.new('sample-site', 'default-site').import!
35
+ ComfortableMexicanSofa::Seeds::File::Importer.new("sample-site", "default-site").import!
36
36
  file.reload
37
- assert_equal 'default.jpg', file.attachment.filename.to_s
38
- assert_equal 'Seed File', file.label
39
- assert_equal 'Seed File Description', file.description
37
+ assert_equal "default.jpg", file.attachment.filename.to_s
38
+ assert_equal "Seed File", file.label
39
+ assert_equal "Seed File Description", file.description
40
40
  end
41
41
  end
42
42
 
43
43
  def test_update_ignore
44
44
  file = comfy_cms_files(:default)
45
- file_path = File.join(ComfortableMexicanSofa.config.seeds_path, 'sample-site', 'files', 'default.jpg')
46
- attr_path = File.join(ComfortableMexicanSofa.config.seeds_path, 'sample-site', 'files', '_default.jpg.yml')
45
+ file_path = File.join(ComfortableMexicanSofa.config.seeds_path, "sample-site", "files", "default.jpg")
46
+ attr_path = File.join(ComfortableMexicanSofa.config.seeds_path, "sample-site", "files", "_default.jpg.yml")
47
47
 
48
48
  assert file.updated_at >= File.mtime(file_path)
49
49
  assert file.updated_at >= File.mtime(attr_path)
50
50
 
51
- ComfortableMexicanSofa::Seeds::File::Importer.new('sample-site', 'default-site').import!
51
+ ComfortableMexicanSofa::Seeds::File::Importer.new("sample-site", "default-site").import!
52
52
  file.reload
53
- assert_equal 'default.jpg', file.attachment.filename.to_s
54
- assert_equal 'default file', file.label
55
- assert_equal 'default description', file.description
53
+ assert_equal "default.jpg", file.attachment.filename.to_s
54
+ assert_equal "default file", file.label
55
+ assert_equal "default description", file.description
56
56
  end
57
57
 
58
58
  def test_delete
59
59
  old_file = comfy_cms_files(:default)
60
- active_storage_blobs(:default).update_column(:filename, 'old')
60
+ active_storage_blobs(:default).update_column(:filename, "old")
61
61
 
62
62
  assert_count_no_difference [Comfy::Cms::File] do
63
- ComfortableMexicanSofa::Seeds::File::Importer.new('sample-site', 'default-site').import!
63
+ ComfortableMexicanSofa::Seeds::File::Importer.new("sample-site", "default-site").import!
64
64
  assert file = Comfy::Cms::File.last
65
- assert_equal 'default.jpg', file.attachment.filename.to_s
66
- assert_equal 'Seed File', file.label
67
- assert_equal 'Seed File Description', file.description
65
+ assert_equal "default.jpg", file.attachment.filename.to_s
66
+ assert_equal "Seed File", file.label
67
+ assert_equal "Seed File Description", file.description
68
68
 
69
69
  assert Comfy::Cms::File.where(id: old_file.id).blank?
70
70
  end
71
71
  end
72
72
 
73
73
  def test_export
74
- host_path = File.join(ComfortableMexicanSofa.config.seeds_path, 'test-site')
75
- attr_path = File.join(host_path, 'files/_default.jpg.yml')
76
- file_path = File.join(host_path, 'files/default.jpg')
74
+ host_path = File.join(ComfortableMexicanSofa.config.seeds_path, "test-site")
75
+ attr_path = File.join(host_path, "files/_default.jpg.yml")
76
+ file_path = File.join(host_path, "files/default.jpg")
77
77
 
78
78
  # We don't have saved file, so lets fake that
79
79
  ActiveStorage::Blob.any_instance.stubs(:download).returns(
80
- File.read(File.join(Rails.root, 'db/cms_seeds/sample-site/files/default.jpg'))
80
+ File.read(File.join(Rails.root, "db/cms_seeds/sample-site/files/default.jpg"))
81
81
  )
82
82
 
83
- ComfortableMexicanSofa::Seeds::File::Exporter.new('default-site', 'test-site').export!
83
+ ComfortableMexicanSofa::Seeds::File::Exporter.new("default-site", "test-site").export!
84
84
 
85
85
  assert File.exist?(attr_path)
86
86
  assert File.exist?(file_path)
87
87
  assert_equal ({
88
- 'label' => 'default file',
89
- 'description' => 'default description',
90
- 'categories' => ['Default']
88
+ "label" => "default file",
89
+ "description" => "default description",
90
+ "categories" => ["Default"]
91
91
  }), YAML.load_file(attr_path)
92
92
 
93
93
  ensure
94
94
  FileUtils.rm_rf(host_path)
95
95
  end
96
+
96
97
  end
@@ -1,4 +1,4 @@
1
- require_relative '../../test_helper'
1
+ require_relative "../../test_helper"
2
2
 
3
3
  class SeedsLayoutsTest < ActiveSupport::TestCase
4
4
 
@@ -22,8 +22,8 @@ class SeedsLayoutsTest < ActiveSupport::TestCase
22
22
  def test_creation
23
23
  Comfy::Cms::Layout.delete_all
24
24
 
25
- assert_difference 'Comfy::Cms::Layout.count', 2 do
26
- ComfortableMexicanSofa::Seeds::Layout::Importer.new('sample-site', 'default-site').import!
25
+ assert_difference "Comfy::Cms::Layout.count", 2 do
26
+ ComfortableMexicanSofa::Seeds::Layout::Importer.new("sample-site", "default-site").import!
27
27
  end
28
28
 
29
29
  assert layout = Comfy::Cms::Layout.where(identifier: "default").first
@@ -49,10 +49,10 @@ class SeedsLayoutsTest < ActiveSupport::TestCase
49
49
  child_layout.update_column(:updated_at, 10.years.ago)
50
50
 
51
51
  assert_count_difference [Comfy::Cms::Layout], -1 do
52
- ComfortableMexicanSofa::Seeds::Layout::Importer.new('sample-site', 'default-site').import!
52
+ ComfortableMexicanSofa::Seeds::Layout::Importer.new("sample-site", "default-site").import!
53
53
 
54
54
  layout.reload
55
- assert_equal 'Default Seed Layout', layout.label
55
+ assert_equal "Default Seed Layout", layout.label
56
56
  assert_equal DEFAULT_HTML, layout.content
57
57
  assert_equal "body{color: red}\n", layout.css
58
58
  assert_equal "// default js\n\n", layout.js
@@ -72,18 +72,18 @@ class SeedsLayoutsTest < ActiveSupport::TestCase
72
72
 
73
73
  def test_update_ignore
74
74
  layout = comfy_cms_layouts(:default)
75
- layout_path = File.join(ComfortableMexicanSofa.config.seeds_path, 'sample-site', 'layouts', 'default')
76
- content_file_path = File.join(layout_path, 'content.html')
75
+ layout_path = File.join(ComfortableMexicanSofa.config.seeds_path, "sample-site", "layouts", "default")
76
+ content_file_path = File.join(layout_path, "content.html")
77
77
 
78
78
  assert layout.updated_at >= File.mtime(content_file_path)
79
79
 
80
- ComfortableMexicanSofa::Seeds::Layout::Importer.new('sample-site', 'default-site').import!
80
+ ComfortableMexicanSofa::Seeds::Layout::Importer.new("sample-site", "default-site").import!
81
81
  layout.reload
82
- assert_equal 'default', layout.identifier
83
- assert_equal 'Default Layout', layout.label
82
+ assert_equal "default", layout.identifier
83
+ assert_equal "Default Layout", layout.label
84
84
  assert_equal "{{cms:text content}}", layout.content
85
- assert_equal 'default_css', layout.css
86
- assert_equal 'default_js', layout.js
85
+ assert_equal "default_css", layout.css
86
+ assert_equal "default_js", layout.js
87
87
  end
88
88
 
89
89
  def test_export
@@ -152,4 +152,5 @@ class SeedsLayoutsTest < ActiveSupport::TestCase
152
152
  ensure
153
153
  FileUtils.rm_rf(host_path)
154
154
  end
155
+
155
156
  end
@@ -1,4 +1,4 @@
1
- require_relative '../../test_helper'
1
+ require_relative "../../test_helper"
2
2
 
3
3
  class SeedsPagesTest < ActiveSupport::TestCase
4
4
 
@@ -13,14 +13,14 @@ class SeedsPagesTest < ActiveSupport::TestCase
13
13
 
14
14
  assert_count_difference "Comfy::Cms::Page", 3 do
15
15
  assert_count_difference "Comfy::Cms::Translation", 2 do
16
- ComfortableMexicanSofa::Seeds::Page::Importer.new('sample-site', 'default-site').import!
16
+ ComfortableMexicanSofa::Seeds::Page::Importer.new("sample-site", "default-site").import!
17
17
  end
18
18
  end
19
19
 
20
20
  assert page = Comfy::Cms::Page.find_by(full_path: "/")
21
21
 
22
22
  assert_equal @layout, page.layout
23
- assert_equal 'index', page.slug
23
+ assert_equal "index", page.slug
24
24
 
25
25
  assert_equal "Home Seed Page", page.label
26
26
  assert_equal 69, page.position
@@ -52,7 +52,7 @@ class SeedsPagesTest < ActiveSupport::TestCase
52
52
  tag: "files",
53
53
  content: nil,
54
54
  datetime: nil,
55
- boolean: false}
55
+ boolean: false }
56
56
  ], page.fragments_attributes
57
57
 
58
58
  frag = page.fragments.find_by(identifier: "header")
@@ -62,7 +62,7 @@ class SeedsPagesTest < ActiveSupport::TestCase
62
62
  assert_equal 2, frag.attachments.count
63
63
 
64
64
  assert_equal 2, page.categories.count
65
- assert_equal %w(category_a category_b), page.categories.map{|c| c.label}
65
+ assert_equal %w[category_a category_b], page.categories.map(&:label)
66
66
 
67
67
  assert child_page_a = Comfy::Cms::Page.find_by(full_path: "/child_a")
68
68
  assert_equal page, child_page_a.parent
@@ -90,15 +90,15 @@ class SeedsPagesTest < ActiveSupport::TestCase
90
90
  assert_equal "Default Page", @page.label
91
91
 
92
92
  child = comfy_cms_pages(:child)
93
- child.update_column(:slug, 'old')
93
+ child.update_column(:slug, "old")
94
94
 
95
95
  assert_count_difference [Comfy::Cms::Page] do
96
- ComfortableMexicanSofa::Seeds::Page::Importer.new('sample-site', 'default-site').import!
96
+ ComfortableMexicanSofa::Seeds::Page::Importer.new("sample-site", "default-site").import!
97
97
 
98
98
  @page.reload
99
99
  assert_equal "Home Seed Page", @page.label
100
100
 
101
- assert_nil Comfy::Cms::Page.where(slug: 'old').first
101
+ assert_nil Comfy::Cms::Page.where(slug: "old").first
102
102
  end
103
103
  end
104
104
 
@@ -106,46 +106,46 @@ class SeedsPagesTest < ActiveSupport::TestCase
106
106
  Comfy::Cms::Page.destroy_all
107
107
 
108
108
  page = @site.pages.create!(
109
- label: 'Test',
109
+ label: "Test",
110
110
  layout: comfy_cms_layouts(:default),
111
111
  fragments_attributes: [
112
112
  { identifier: "content", content: "test content" }
113
113
  ]
114
114
  )
115
115
 
116
- page_path = File.join(ComfortableMexicanSofa.config.seeds_path, 'sample-site', 'pages', 'index')
116
+ page_path = File.join(ComfortableMexicanSofa.config.seeds_path, "sample-site", "pages", "index")
117
117
  content_path = File.join(page_path, "content.html")
118
118
 
119
119
  assert page.updated_at >= File.mtime(content_path)
120
120
 
121
- ComfortableMexicanSofa::Seeds::Page::Importer.new('sample-site', 'default-site').import!
121
+ ComfortableMexicanSofa::Seeds::Page::Importer.new("sample-site", "default-site").import!
122
122
  page.reload
123
123
 
124
124
  assert_nil page.slug
125
- assert_equal 'Test', page.label
125
+ assert_equal "Test", page.label
126
126
  frag = page.fragments.where(identifier: "content").first
127
- assert_equal 'test content', frag.content
127
+ assert_equal "test content", frag.content
128
128
  end
129
129
 
130
130
  def test_update_removing_deleted_blocks
131
131
  Comfy::Cms::Page.destroy_all
132
132
 
133
133
  page = @site.pages.create!(
134
- label: 'Test',
134
+ label: "Test",
135
135
  layout: comfy_cms_layouts(:default),
136
136
  fragments_attributes: [
137
- { identifier: 'to_delete', content: 'test content' }
137
+ { identifier: "to_delete", content: "test content" }
138
138
  ]
139
139
  )
140
140
  page.update_column(:updated_at, 10.years.ago)
141
141
 
142
- ComfortableMexicanSofa::Seeds::Page::Importer.new('sample-site', 'default-site').import!
142
+ ComfortableMexicanSofa::Seeds::Page::Importer.new("sample-site", "default-site").import!
143
143
  page.reload
144
144
 
145
- frag = page.fragments.where(identifier: 'content').first
145
+ frag = page.fragments.where(identifier: "content").first
146
146
  assert_equal "Home Page Seed Contént\n{{ cms:snippet default }}\n\n", frag.content
147
147
 
148
- refute page.fragments.where(identifier: 'to_delete').first
148
+ refute page.fragments.where(identifier: "to_delete").first
149
149
  end
150
150
 
151
151
  def test_export
@@ -158,19 +158,21 @@ class SeedsPagesTest < ActiveSupport::TestCase
158
158
  categorized: comfy_cms_pages(:default)
159
159
  )
160
160
 
161
- comfy_cms_translations(:default).update_attributes!(fragments_attributes: [{
162
- identifier: "content",
163
- content: "translation content",
164
- tag: "markdown"
165
- }])
161
+ comfy_cms_translations(:default).update_attributes!(fragments_attributes: [
162
+ {
163
+ identifier: "content",
164
+ content: "translation content",
165
+ tag: "markdown"
166
+ }
167
+ ])
166
168
 
167
- host_path = File.join(ComfortableMexicanSofa.config.seeds_path, 'test-site')
168
- page_1_content_path = File.join(host_path, 'pages/index/content.html')
169
- page_1_attachment_path = File.join(host_path, 'pages/index/fragment.jpg')
170
- page_2_content_path = File.join(host_path, 'pages/index/child-page/content.html')
171
- translation_path = File.join(host_path, 'pages/index/content.fr.html')
169
+ host_path = File.join(ComfortableMexicanSofa.config.seeds_path, "test-site")
170
+ page_1_content_path = File.join(host_path, "pages/index/content.html")
171
+ page_1_attachment_path = File.join(host_path, "pages/index/fragment.jpg")
172
+ page_2_content_path = File.join(host_path, "pages/index/child-page/content.html")
173
+ translation_path = File.join(host_path, "pages/index/content.fr.html")
172
174
 
173
- ComfortableMexicanSofa::Seeds::Page::Exporter.new('default-site', 'test-site').export!
175
+ ComfortableMexicanSofa::Seeds::Page::Exporter.new("default-site", "test-site").export!
174
176
 
175
177
  out = <<-TEXT.strip_heredoc
176
178
  [attributes]
@@ -224,4 +226,5 @@ class SeedsPagesTest < ActiveSupport::TestCase
224
226
  ensure
225
227
  FileUtils.rm_rf(host_path)
226
228
  end
229
+
227
230
  end
@@ -1,4 +1,4 @@
1
- require_relative '../../test_helper'
1
+ require_relative "../../test_helper"
2
2
 
3
3
  class SeedsSnippetsTest < ActiveSupport::TestCase
4
4
 
@@ -11,7 +11,7 @@ class SeedsSnippetsTest < ActiveSupport::TestCase
11
11
  Comfy::Cms::Snippet.delete_all
12
12
 
13
13
  assert_count_difference [Comfy::Cms::Snippet] do
14
- ComfortableMexicanSofa::Seeds::Snippet::Importer.new('sample-site', 'default-site').import!
14
+ ComfortableMexicanSofa::Seeds::Snippet::Importer.new("sample-site", "default-site").import!
15
15
  end
16
16
 
17
17
  snippet = Comfy::Cms::Snippet.last
@@ -20,52 +20,52 @@ class SeedsSnippetsTest < ActiveSupport::TestCase
20
20
  assert_equal "Default Seed Snippet", snippet.label
21
21
  assert_equal "Default Seed Snippet Content\n", snippet.content
22
22
 
23
- assert_equal %w(category_a category_b), snippet.categories.map{|c| c.label}
23
+ assert_equal %w[category_a category_b], snippet.categories.map(&:label)
24
24
  end
25
25
 
26
26
  def test_update
27
27
  @snippet.update_column(:updated_at, 10.years.ago)
28
- assert_equal 'default', @snippet.identifier
29
- assert_equal 'Default Snippet', @snippet.label
30
- assert_equal 'snippet content', @snippet.content
28
+ assert_equal "default", @snippet.identifier
29
+ assert_equal "Default Snippet", @snippet.label
30
+ assert_equal "snippet content", @snippet.content
31
31
 
32
32
  assert_count_no_difference [Comfy::Cms::Snippet] do
33
- ComfortableMexicanSofa::Seeds::Snippet::Importer.new('sample-site', 'default-site').import!
33
+ ComfortableMexicanSofa::Seeds::Snippet::Importer.new("sample-site", "default-site").import!
34
34
  end
35
35
 
36
36
  @snippet.reload
37
- assert_equal 'default', @snippet.identifier
37
+ assert_equal "default", @snippet.identifier
38
38
  assert_equal "Default Seed Snippet", @snippet.label
39
39
  assert_equal "Default Seed Snippet Content\n", @snippet.content
40
40
  end
41
41
 
42
42
  def test_delete
43
43
  old_snippet = @snippet
44
- old_snippet.update_column(:identifier, 'old')
44
+ old_snippet.update_column(:identifier, "old")
45
45
 
46
46
  assert_count_no_difference [Comfy::Cms::Snippet] do
47
- ComfortableMexicanSofa::Seeds::Snippet::Importer.new('sample-site', 'default-site').import!
47
+ ComfortableMexicanSofa::Seeds::Snippet::Importer.new("sample-site", "default-site").import!
48
48
  end
49
49
 
50
50
  assert snippet = Comfy::Cms::Snippet.last
51
- assert_equal 'default', snippet.identifier
52
- assert_equal 'Default Seed Snippet', snippet.label
51
+ assert_equal "default", snippet.identifier
52
+ assert_equal "Default Seed Snippet", snippet.label
53
53
  assert_equal "Default Seed Snippet Content\n", snippet.content
54
54
 
55
55
  assert_nil Comfy::Cms::Snippet.where(id: old_snippet.id).first
56
56
  end
57
57
 
58
58
  def test_update_ignoring
59
- snippet_path = File.join(ComfortableMexicanSofa.config.seeds_path, 'sample-site', 'snippets')
60
- content_path = File.join(snippet_path, 'default.html')
59
+ snippet_path = File.join(ComfortableMexicanSofa.config.seeds_path, "sample-site", "snippets")
60
+ content_path = File.join(snippet_path, "default.html")
61
61
 
62
62
  assert @snippet.updated_at >= File.mtime(content_path)
63
63
 
64
- ComfortableMexicanSofa::Seeds::Snippet::Importer.new('sample-site', 'default-site').import!
64
+ ComfortableMexicanSofa::Seeds::Snippet::Importer.new("sample-site", "default-site").import!
65
65
  @snippet.reload
66
- assert_equal 'default', @snippet.identifier
67
- assert_equal 'Default Snippet', @snippet.label
68
- assert_equal 'snippet content', @snippet.content
66
+ assert_equal "default", @snippet.identifier
67
+ assert_equal "Default Snippet", @snippet.label
68
+ assert_equal "snippet content", @snippet.content
69
69
  end
70
70
 
71
71
  def test_export
@@ -73,10 +73,10 @@ class SeedsSnippetsTest < ActiveSupport::TestCase
73
73
  categorized: @snippet
74
74
  )
75
75
 
76
- host_path = File.join(ComfortableMexicanSofa.config.seeds_path, 'test-site')
76
+ host_path = File.join(ComfortableMexicanSofa.config.seeds_path, "test-site")
77
77
  content_path = File.join(host_path, "snippets/default.html")
78
78
 
79
- ComfortableMexicanSofa::Seeds::Snippet::Exporter.new('default-site', 'test-site').export!
79
+ ComfortableMexicanSofa::Seeds::Snippet::Exporter.new("default-site", "test-site").export!
80
80
 
81
81
  assert File.exist?(content_path)
82
82
  out = <<-TEXT.strip_heredoc
@@ -95,4 +95,5 @@ class SeedsSnippetsTest < ActiveSupport::TestCase
95
95
  ensure
96
96
  FileUtils.rm_rf(host_path)
97
97
  end
98
+
98
99
  end