nocms-blocks 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (196) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +10 -0
  3. data/README.md +7 -3
  4. data/app/models/no_cms/blocks/block.rb +31 -128
  5. data/app/models/no_cms/blocks/concerns/serializing_fields.rb +386 -0
  6. data/app/models/no_cms/blocks/layout.rb +98 -0
  7. data/app/views/no_cms/blocks/blocks/_default.html.erb +6 -0
  8. data/db/migrate/20150709132202_add_non_translated_fields_info_to_no_cms_blocks_block.rb +5 -0
  9. data/db/migrate/20150710112549_move_layout_from_no_cms_blocks_block_translations_to_no_cms_blocks_blocks.rb +19 -0
  10. data/lib/generators/nocms/templates/config/initializers/nocms/blocks.rb +8 -0
  11. data/lib/no_cms/blocks/version.rb +1 -1
  12. data/spec/dummy/db/development.sqlite3 +0 -0
  13. data/spec/dummy/db/schema.rb +3 -2
  14. data/spec/dummy/db/test.sqlite3 +0 -0
  15. data/spec/dummy/log/development.log +163 -0
  16. data/spec/dummy/log/test.log +94024 -0
  17. data/spec/dummy/public/uploads/test_image/logo/2/logo.png +0 -0
  18. data/spec/dummy/public/uploads/test_image/logo/2/logo2.png +0 -0
  19. data/spec/dummy/public/uploads/test_image/logo/3/logo.png +0 -0
  20. data/spec/dummy/public/uploads/test_image/logo/4/logo.png +0 -0
  21. data/spec/dummy/public/uploads/test_image/logo/5/logo.png +0 -0
  22. data/spec/dummy/public/uploads/test_image/logo/6/logo.png +0 -0
  23. data/spec/dummy/public/uploads/tmp/1436194769-17662-1395/logo.png +0 -0
  24. data/spec/dummy/public/uploads/tmp/1436194769-17662-1590/logo.png +0 -0
  25. data/spec/dummy/public/uploads/tmp/1436194769-17662-1891/logo.png +0 -0
  26. data/spec/dummy/public/uploads/tmp/1436194769-17662-1891/logo2.png +0 -0
  27. data/spec/dummy/public/uploads/tmp/1436194769-17662-2425/logo.png +0 -0
  28. data/spec/dummy/public/uploads/tmp/1436194769-17662-3650/logo.png +0 -0
  29. data/spec/dummy/public/uploads/tmp/1436194769-17662-3867/logo.png +0 -0
  30. data/spec/dummy/public/uploads/tmp/1436194769-17662-3867/logo2.png +0 -0
  31. data/spec/dummy/public/uploads/tmp/1436194769-17662-5629/logo.png +0 -0
  32. data/spec/dummy/public/uploads/tmp/1436194769-17662-5795/logo.png +0 -0
  33. data/spec/dummy/public/uploads/tmp/1436194769-17662-5882/logo.png +0 -0
  34. data/spec/dummy/public/uploads/tmp/1436194769-17662-9375/logo.png +0 -0
  35. data/spec/dummy/public/uploads/tmp/1436194790-17727-0450/logo.png +0 -0
  36. data/spec/dummy/public/uploads/tmp/1436194790-17727-0733/logo.png +0 -0
  37. data/spec/dummy/public/uploads/tmp/1436194790-17727-0733/logo2.png +0 -0
  38. data/spec/dummy/public/uploads/tmp/1436194790-17727-1087/logo.png +0 -0
  39. data/spec/dummy/public/uploads/tmp/1436194790-17727-1087/logo2.png +0 -0
  40. data/spec/dummy/public/uploads/tmp/1436194790-17727-1788/logo.png +0 -0
  41. data/spec/dummy/public/uploads/tmp/1436194790-17727-2101/logo.png +0 -0
  42. data/spec/dummy/public/uploads/tmp/1436194790-17727-4443/logo.png +0 -0
  43. data/spec/dummy/public/uploads/tmp/1436194790-17727-5065/logo.png +0 -0
  44. data/spec/dummy/public/uploads/tmp/1436194790-17727-6456/logo.png +0 -0
  45. data/spec/dummy/public/uploads/tmp/1436194790-17727-8131/logo.png +0 -0
  46. data/spec/dummy/public/uploads/tmp/1436194790-17727-9096/logo.png +0 -0
  47. data/spec/dummy/public/uploads/tmp/1436194856-17785-0815/logo.png +0 -0
  48. data/spec/dummy/public/uploads/tmp/1436194856-17785-4789/logo.png +0 -0
  49. data/spec/dummy/public/uploads/tmp/1436194856-17785-7685/logo.png +0 -0
  50. data/spec/dummy/public/uploads/tmp/1436194857-17785-0259/logo.png +0 -0
  51. data/spec/dummy/public/uploads/tmp/1436194857-17785-0349/logo.png +0 -0
  52. data/spec/dummy/public/uploads/tmp/1436194857-17785-0476/logo.png +0 -0
  53. data/spec/dummy/public/uploads/tmp/1436194857-17785-1997/logo.png +0 -0
  54. data/spec/dummy/public/uploads/tmp/1436194857-17785-3813/logo.png +0 -0
  55. data/spec/dummy/public/uploads/tmp/1436194857-17785-3813/logo2.png +0 -0
  56. data/spec/dummy/public/uploads/tmp/1436194857-17785-4455/logo.png +0 -0
  57. data/spec/dummy/public/uploads/tmp/1436194857-17785-5316/logo.png +0 -0
  58. data/spec/dummy/public/uploads/tmp/1436194857-17785-5316/logo2.png +0 -0
  59. data/spec/dummy/public/uploads/tmp/1436194857-17785-7121/logo.png +0 -0
  60. data/spec/dummy/public/uploads/tmp/1436194857-17785-7447/logo.png +0 -0
  61. data/spec/dummy/public/uploads/tmp/1436194857-17785-7677/logo.png +0 -0
  62. data/spec/dummy/public/uploads/tmp/1436194857-17785-8037/logo.png +0 -0
  63. data/spec/dummy/public/uploads/tmp/1436194857-17785-8791/logo.png +0 -0
  64. data/spec/dummy/public/uploads/tmp/1436194878-17844-1352/logo.png +0 -0
  65. data/spec/dummy/public/uploads/tmp/1436194878-17844-1557/logo.png +0 -0
  66. data/spec/dummy/public/uploads/tmp/1436194878-17844-5177/logo.png +0 -0
  67. data/spec/dummy/public/uploads/tmp/1436194878-17844-5338/logo.png +0 -0
  68. data/spec/dummy/public/uploads/tmp/1436194878-17844-8747/logo.png +0 -0
  69. data/spec/dummy/public/uploads/tmp/1436194879-17844-3191/logo.png +0 -0
  70. data/spec/dummy/public/uploads/tmp/1436194879-17844-3986/logo.png +0 -0
  71. data/spec/dummy/public/uploads/tmp/1436194879-17844-5951/logo.png +0 -0
  72. data/spec/dummy/public/uploads/tmp/1436194879-17844-6104/logo.png +0 -0
  73. data/spec/dummy/public/uploads/tmp/1436194879-17844-7114/logo.png +0 -0
  74. data/spec/dummy/public/uploads/tmp/1436194879-17844-7114/logo2.png +0 -0
  75. data/spec/dummy/public/uploads/tmp/1436194879-17844-7617/logo.png +0 -0
  76. data/spec/dummy/public/uploads/tmp/1436194879-17844-8185/logo.png +0 -0
  77. data/spec/dummy/public/uploads/tmp/1436194879-17844-8495/logo.png +0 -0
  78. data/spec/dummy/public/uploads/tmp/1436194879-17844-8495/logo2.png +0 -0
  79. data/spec/dummy/public/uploads/tmp/1436194879-17844-8991/logo.png +0 -0
  80. data/spec/dummy/public/uploads/tmp/1436194879-17844-9466/logo.png +0 -0
  81. data/spec/dummy/public/uploads/tmp/1436194892-17862-1771/logo.png +0 -0
  82. data/spec/dummy/public/uploads/tmp/1436194926-17904-9747/logo.png +0 -0
  83. data/spec/dummy/public/uploads/tmp/1436195033-17981-2265/logo.png +0 -0
  84. data/spec/dummy/public/uploads/tmp/1436195045-18015-3603/logo.png +0 -0
  85. data/spec/dummy/public/uploads/tmp/1436195085-18055-8412/logo.png +0 -0
  86. data/spec/dummy/public/uploads/tmp/1436195101-18097-0044/logo.png +0 -0
  87. data/spec/dummy/public/uploads/tmp/1436195126-18165-6939/logo.png +0 -0
  88. data/spec/dummy/public/uploads/tmp/1436195152-18225-1850/logo.png +0 -0
  89. data/spec/dummy/public/uploads/tmp/1436195169-18262-2283/logo.png +0 -0
  90. data/spec/dummy/public/uploads/tmp/1436195186-18300-3395/logo.png +0 -0
  91. data/spec/dummy/public/uploads/tmp/1436195205-18336-0453/logo.png +0 -0
  92. data/spec/dummy/public/uploads/tmp/1436195242-18389-3554/logo.png +0 -0
  93. data/spec/dummy/public/uploads/tmp/1436195255-18420-9336/logo.png +0 -0
  94. data/spec/dummy/public/uploads/tmp/1436195745-18605-6163/logo.png +0 -0
  95. data/spec/dummy/public/uploads/tmp/1436195823-18669-7443/logo.png +0 -0
  96. data/spec/dummy/public/uploads/tmp/1436195886-18739-5334/logo.png +0 -0
  97. data/spec/dummy/public/uploads/tmp/1436195900-18776-9749/logo.png +0 -0
  98. data/spec/dummy/public/uploads/tmp/1436195935-18824-1992/logo.png +0 -0
  99. data/spec/dummy/public/uploads/tmp/1436196060-18894-4158/logo.png +0 -0
  100. data/spec/dummy/public/uploads/tmp/1436196106-18943-1035/logo.png +0 -0
  101. data/spec/dummy/public/uploads/tmp/1436196156-18987-1445/logo.png +0 -0
  102. data/spec/dummy/public/uploads/tmp/1436196187-19045-9003/logo.png +0 -0
  103. data/spec/dummy/public/uploads/tmp/1436196275-19125-3257/logo.png +0 -0
  104. data/spec/dummy/public/uploads/tmp/1436196321-19169-5591/logo.png +0 -0
  105. data/spec/dummy/public/uploads/tmp/1436258374-8961-0160/logo.png +0 -0
  106. data/spec/dummy/public/uploads/tmp/1436258374-8961-0565/logo.png +0 -0
  107. data/spec/dummy/public/uploads/tmp/1436258374-8961-1519/logo.png +0 -0
  108. data/spec/dummy/public/uploads/tmp/1436258374-8961-2202/logo.png +0 -0
  109. data/spec/dummy/public/uploads/tmp/1436258374-8961-2400/logo.png +0 -0
  110. data/spec/dummy/public/uploads/tmp/1436258374-8961-2928/logo.png +0 -0
  111. data/spec/dummy/public/uploads/tmp/1436258374-8961-3260/logo.png +0 -0
  112. data/spec/dummy/public/uploads/tmp/1436258374-8961-4333/logo.png +0 -0
  113. data/spec/dummy/public/uploads/tmp/1436258374-8961-5122/logo.png +0 -0
  114. data/spec/dummy/public/uploads/tmp/1436258374-8961-6333/logo.png +0 -0
  115. data/spec/dummy/public/uploads/tmp/1436258374-8961-6333/logo2.png +0 -0
  116. data/spec/dummy/public/uploads/tmp/1436258374-8961-7928/logo.png +0 -0
  117. data/spec/dummy/public/uploads/tmp/1436258374-8961-9359/logo.png +0 -0
  118. data/spec/dummy/public/uploads/tmp/1436258374-8961-9392/logo.png +0 -0
  119. data/spec/dummy/public/uploads/tmp/1436258374-8961-9549/logo.png +0 -0
  120. data/spec/dummy/public/uploads/tmp/1436258374-8961-9549/logo2.png +0 -0
  121. data/spec/dummy/public/uploads/tmp/1436258374-8961-9648/logo.png +0 -0
  122. data/spec/dummy/public/uploads/tmp/1436258382-8967-0797/logo.png +0 -0
  123. data/spec/dummy/public/uploads/tmp/1436258453-9165-7375/logo.png +0 -0
  124. data/spec/dummy/public/uploads/tmp/1436258549-9282-2039/logo.png +0 -0
  125. data/spec/dummy/public/uploads/tmp/1436258623-9355-6670/logo.png +0 -0
  126. data/spec/dummy/public/uploads/tmp/1436258674-9394-2929/logo.png +0 -0
  127. data/spec/dummy/public/uploads/tmp/1436264869-10860-2169/logo.png +0 -0
  128. data/spec/dummy/public/uploads/tmp/1436276653-16968-2375/logo.png +0 -0
  129. data/spec/dummy/public/uploads/tmp/1436276734-17282-9777/logo.png +0 -0
  130. data/spec/dummy/public/uploads/tmp/1436276770-17431-4333/logo.png +0 -0
  131. data/spec/dummy/public/uploads/tmp/1436276781-17463-5971/logo.png +0 -0
  132. data/spec/dummy/public/uploads/tmp/1436276875-17556-1972/logo.png +0 -0
  133. data/spec/dummy/public/uploads/tmp/1436276882-17588-9186/logo.png +0 -0
  134. data/spec/dummy/public/uploads/tmp/1436276896-17657-9942/logo.png +0 -0
  135. data/spec/dummy/public/uploads/tmp/1436277157-17795-9344/logo.png +0 -0
  136. data/spec/dummy/public/uploads/tmp/1436277178-17833-8883/logo.png +0 -0
  137. data/spec/dummy/public/uploads/tmp/1436277781-18431-2830/logo.png +0 -0
  138. data/spec/dummy/public/uploads/tmp/1436278571-18860-1079/logo.png +0 -0
  139. data/spec/dummy/public/uploads/tmp/1436282613-22892-0135/logo.png +0 -0
  140. data/spec/dummy/public/uploads/tmp/1436282638-22953-7833/logo.png +0 -0
  141. data/spec/dummy/public/uploads/tmp/1436282887-23026-0068/logo.png +0 -0
  142. data/spec/dummy/public/uploads/tmp/1436282978-23160-8886/logo.png +0 -0
  143. data/spec/dummy/public/uploads/tmp/1436284256-24634-1740/logo.png +0 -0
  144. data/spec/dummy/public/uploads/tmp/1436284256-24634-3170/logo.png +0 -0
  145. data/spec/dummy/public/uploads/tmp/1436284256-24634-3501/logo.png +0 -0
  146. data/spec/dummy/public/uploads/tmp/1436284256-24634-6393/logo.png +0 -0
  147. data/spec/dummy/public/uploads/tmp/1436284256-24634-6862/logo.png +0 -0
  148. data/spec/dummy/public/uploads/tmp/1436284256-24634-7741/logo.png +0 -0
  149. data/spec/dummy/public/uploads/tmp/1436284256-24634-8051/logo.png +0 -0
  150. data/spec/dummy/public/uploads/tmp/1436284256-24634-8064/logo.png +0 -0
  151. data/spec/dummy/public/uploads/tmp/1436284256-24634-8093/logo.png +0 -0
  152. data/spec/dummy/public/uploads/tmp/1436284256-24634-9497/logo.png +0 -0
  153. data/spec/dummy/public/uploads/tmp/1436553862-9485-0200/logo.png +0 -0
  154. data/spec/dummy/public/uploads/tmp/1436553862-9485-0325/logo.png +0 -0
  155. data/spec/dummy/public/uploads/tmp/1436553862-9485-1380/logo.png +0 -0
  156. data/spec/dummy/public/uploads/tmp/1436553862-9485-4150/logo.png +0 -0
  157. data/spec/dummy/public/uploads/tmp/1436553862-9485-4347/logo.png +0 -0
  158. data/spec/dummy/public/uploads/tmp/1436553862-9485-5072/logo.png +0 -0
  159. data/spec/dummy/public/uploads/tmp/1436553862-9485-5891/logo2.png +0 -0
  160. data/spec/dummy/public/uploads/tmp/1436553862-9485-6304/logo.png +0 -0
  161. data/spec/dummy/public/uploads/tmp/1436553862-9485-6620/logo.png +0 -0
  162. data/spec/dummy/public/uploads/tmp/1436553862-9485-6703/logo.png +0 -0
  163. data/spec/dummy/public/uploads/tmp/1436553862-9485-8254/logo.png +0 -0
  164. data/spec/dummy/public/uploads/tmp/1436553862-9485-8313/logo2.png +0 -0
  165. data/spec/dummy/public/uploads/tmp/1436554155-9646-0021/logo.png +0 -0
  166. data/spec/dummy/public/uploads/tmp/1436554155-9646-1865/logo.png +0 -0
  167. data/spec/dummy/public/uploads/tmp/1436554155-9646-2510/logo.png +0 -0
  168. data/spec/dummy/public/uploads/tmp/1436554155-9646-3771/logo.png +0 -0
  169. data/spec/dummy/public/uploads/tmp/1436554155-9646-4441/logo.png +0 -0
  170. data/spec/dummy/public/uploads/tmp/1436554155-9646-5712/logo.png +0 -0
  171. data/spec/dummy/public/uploads/tmp/1436554155-9646-6456/logo2.png +0 -0
  172. data/spec/dummy/public/uploads/tmp/1436554155-9646-6520/logo.png +0 -0
  173. data/spec/dummy/public/uploads/tmp/1436554155-9646-8183/logo.png +0 -0
  174. data/spec/dummy/public/uploads/tmp/1436554155-9646-8675/logo.png +0 -0
  175. data/spec/dummy/public/uploads/tmp/1436554155-9646-8953/logo.png +0 -0
  176. data/spec/dummy/public/uploads/tmp/1436554155-9646-9271/logo2.png +0 -0
  177. data/spec/dummy/public/uploads/tmp/1436554181-9685-7099/logo.png +0 -0
  178. data/spec/dummy/public/uploads/tmp/1436554233-9708-0769/logo.png +0 -0
  179. data/spec/dummy/public/uploads/tmp/1436554254-9739-7026/logo.png +0 -0
  180. data/spec/dummy/public/uploads/tmp/1436554350-9834-3927/logo.png +0 -0
  181. data/spec/dummy/public/uploads/tmp/1436554416-9875-0666/logo.png +0 -0
  182. data/spec/dummy/public/uploads/tmp/1436554519-9921-2596/logo.png +0 -0
  183. data/spec/dummy/public/uploads/tmp/1436554569-9980-0004/logo.png +0 -0
  184. data/spec/dummy/public/uploads/tmp/1436554694-10292-1775/logo2.png +0 -0
  185. data/spec/dummy/public/uploads/tmp/1436554694-10292-5549/logo2.png +0 -0
  186. data/spec/dummy/public/uploads/tmp/1436554722-10308-2875/logo2.png +0 -0
  187. data/spec/dummy/public/uploads/tmp/1436554732-10340-8854/logo2.png +0 -0
  188. data/spec/dummy/public/uploads/tmp/1436554994-10463-9859/logo2.png +0 -0
  189. data/spec/dummy/public/uploads/tmp/1436555134-10554-3506/logo2.png +0 -0
  190. data/spec/dummy/public/uploads/tmp/1436555227-10604-7612/logo2.png +0 -0
  191. data/spec/dummy/public/uploads/tmp/1436555450-10700-1633/logo2.png +0 -0
  192. data/spec/models/no_cms/blocks/duplicating_blocks_spec.rb +161 -0
  193. data/spec/models/no_cms/blocks/i18n_blocks_spec.rb +101 -0
  194. data/spec/models/no_cms/blocks/layout_spec.rb +125 -0
  195. data/spec/spec_helper.rb +3 -0
  196. metadata +385 -5
@@ -0,0 +1,101 @@
1
+ require 'spec_helper'
2
+
3
+ describe NoCms::Blocks::Block do
4
+
5
+ context "when loading simple translated fields" do
6
+ let(:block_title_es) { Faker::Lorem.sentence }
7
+ let(:block_title_en) { Faker::Lorem.sentence }
8
+ let!(:block) { NoCms::Blocks::Block.create! layout: 'title-long_text',
9
+ translations_attributes: [
10
+ { locale: 'es', title: block_title_es },
11
+ { locale: 'en', title: block_title_en }
12
+ ]
13
+ }
14
+
15
+ before(:all) do
16
+ NoCms::Blocks.configure do |config|
17
+ config.block_layouts = {
18
+ 'title-long_text' => {
19
+ template: 'title-long_text',
20
+ fields: {
21
+ title: :string,
22
+ body: :text
23
+ }
24
+ }
25
+ }
26
+ end
27
+ end
28
+
29
+ subject { NoCms::Blocks::Block.find block.id }
30
+
31
+ it "should have retrieve the right text for each language" do
32
+ I18n.with_locale(:es) { expect(subject.title).to eq block_title_es }
33
+ I18n.with_locale(:en) { expect(subject.title).to eq block_title_en }
34
+ end
35
+
36
+ end
37
+
38
+ context "when we have some untranslated fields" do
39
+ let(:block_title) { Faker::Lorem.sentence }
40
+ let(:block_body_es) { Faker::Lorem.paragraph }
41
+ let(:block_body_en) { Faker::Lorem.paragraph }
42
+
43
+ let(:logo_attributes) { attributes_for(:test_image) }
44
+ let(:background_attributes_es) { attributes_for(:test_image) }
45
+ let(:background_attributes_en) { attributes_for(:test_image) }
46
+
47
+ let!(:block) { NoCms::Blocks::Block.create! title: block_title,
48
+ logo: logo_attributes,
49
+ layout: 'title-long_text',
50
+ translations_attributes: [
51
+ { locale: 'es', body: block_body_es, background: background_attributes_es },
52
+ { locale: 'en', body: block_body_en, background: background_attributes_en }
53
+ ]
54
+ }
55
+
56
+ before(:all) do
57
+ NoCms::Blocks.configure do |config|
58
+ config.block_layouts = {
59
+ 'title-long_text' => {
60
+ template: 'title-long_text',
61
+ fields: {
62
+ title: { type: :string, translated: false },
63
+ body: :text,
64
+ logo: { type: TestImage, translated: false },
65
+ background: { type: TestImage, translated: true },
66
+ }
67
+ }
68
+ }
69
+ end
70
+ end
71
+
72
+ subject { NoCms::Blocks::Block.find block.id }
73
+
74
+ it "should retrieve the same unstranslated attribute for each language" do
75
+ I18n.with_locale(:es) { expect(subject.title).to eq block_title }
76
+ I18n.with_locale(:en) { expect(subject.title).to eq block_title }
77
+ end
78
+
79
+ it "should retrieve the right translated attribute for each language" do
80
+ I18n.with_locale(:es) { expect(subject.body).to eq block_body_es }
81
+ I18n.with_locale(:en) { expect(subject.body).to eq block_body_en }
82
+ end
83
+
84
+ it "should only create 3 images (2 translated and 1 not translated)" do
85
+ expect(TestImage.count).to eq 3
86
+ end
87
+
88
+ it "should retrieve untranslated attached object" do
89
+ logo_es = I18n.with_locale(:es) { subject.logo }
90
+ logo_en = I18n.with_locale(:en) { subject.logo }
91
+ expect(logo_es).to eq logo_en
92
+ end
93
+
94
+ it "should retrieve untranslated attached object" do
95
+ background_es = I18n.with_locale(:es) { subject.background }
96
+ background_en = I18n.with_locale(:en) { subject.background }
97
+ expect(background_es).to_not eq background_en
98
+ end
99
+
100
+ end
101
+ end
@@ -0,0 +1,125 @@
1
+ require 'spec_helper'
2
+
3
+ describe NoCms::Blocks::Layout do
4
+
5
+ context "when looking for a layout" do
6
+
7
+ before do
8
+ NoCms::Blocks.configure do |config|
9
+ config.block_layouts = {
10
+ 'title-long_text' => {
11
+ template: 'title-long_text',
12
+ fields: {
13
+ title: :string,
14
+ body: :text
15
+ }
16
+ }
17
+ }
18
+ end
19
+ end
20
+
21
+ it "should find the declared layouts" do
22
+ expect(NoCms::Blocks::Layout.find('title-long_text')).to_not be_nil
23
+ end
24
+
25
+ it "should not find undeclared layouts" do
26
+ expect(NoCms::Blocks::Layout.find('this-layout-is-not-real')).to be_nil
27
+ end
28
+
29
+ end
30
+
31
+ context "when the layout has configuration" do
32
+ before do
33
+ NoCms::Blocks.configure do |config|
34
+ config.block_layouts = {
35
+ 'title-long_text' => {
36
+ template: block_template,
37
+ fields: {
38
+ title: title_configuration[:type],
39
+ column: column_configuration,
40
+ body: body_configuration
41
+ },
42
+ allow_nested_blocks: block_allow_nested_blocks,
43
+ nest_levels: block_nest_levels,
44
+ cache_enabled: block_cache_enabled
45
+ }
46
+ }
47
+ end
48
+ end
49
+
50
+ let(:block_template) { 'title-long_text' }
51
+ let(:block_allow_nested_blocks) { true }
52
+ let(:block_nest_levels) { [0,1] }
53
+ let(:block_cache_enabled) { true }
54
+ let(:title_configuration) { { type: :string } }
55
+ let(:column_configuration) { { type: :string, translated: false } }
56
+ let(:body_configuration) { { type: :text, duplicate: :nullify } }
57
+
58
+ subject { NoCms::Blocks::Layout.find('title-long_text') }
59
+
60
+ it "should recover the configuration for quickly configured fields" do
61
+ expect(subject.fields[:title]).to eq NoCms::Blocks::Layout::DEFAULT_FIELD_CONFIGURATION.merge(title_configuration)
62
+ end
63
+
64
+ it "should recover the configuration for verbosing configured fields" do
65
+ expect(subject.fields[:body]).to eq NoCms::Blocks::Layout::DEFAULT_FIELD_CONFIGURATION.merge(body_configuration)
66
+ end
67
+
68
+ it "should recover the configuration for a field that overwrites some default configuration" do
69
+ expect(subject.fields[:body]).to eq NoCms::Blocks::Layout::DEFAULT_FIELD_CONFIGURATION.merge(body_configuration)
70
+ expect(subject.fields[:column]).to eq NoCms::Blocks::Layout::DEFAULT_FIELD_CONFIGURATION.merge(column_configuration)
71
+ end
72
+
73
+ it "should recover the template from the configuration" do
74
+ expect(subject.template).to eq block_template
75
+ end
76
+
77
+ it "should recover the 'allow_nested_blocks' from the configuration" do
78
+ expect(subject.allow_nested_blocks).to eq block_allow_nested_blocks
79
+ end
80
+
81
+ it "should recover the nest levels from the configuration" do
82
+ expect(subject.nest_levels).to eq block_nest_levels
83
+ end
84
+
85
+ it "should recover the 'cache enabled' setting from the configuration" do
86
+ expect(subject.cache_enabled).to eq block_cache_enabled
87
+ end
88
+ end
89
+
90
+ context "when config is empty" do
91
+
92
+ before do
93
+ NoCms::Blocks.configure do |config|
94
+ config.block_layouts = {
95
+ 'title-long_text' => {
96
+ }
97
+ }
98
+ end
99
+ end
100
+
101
+ subject { NoCms::Blocks::Layout.find('title-long_text') }
102
+
103
+ it "should recover no fields" do
104
+ expect(subject.fields).to be_empty
105
+ end
106
+
107
+ it "should recover no template" do
108
+ expect(subject.template).to be_nil
109
+ end
110
+
111
+ it "should recover default 'allow_nested_blocks' setting " do
112
+ expect(subject).to_not be_allow_nested_blocks
113
+ end
114
+
115
+ it "should recover no nest levels" do
116
+ expect(subject.nest_levels).to be_empty
117
+ end
118
+
119
+ it "should recover the global 'cache enabled' setting" do
120
+ expect(subject.cache_enabled).to eq NoCms::Blocks.cache_enabled
121
+ end
122
+
123
+ end
124
+
125
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,8 +1,11 @@
1
+ require 'simplecov'
2
+
1
3
  # This file is copied to spec/ when you run 'rails generate rspec:install'
2
4
  ENV["RAILS_ENV"] ||= 'test'
3
5
  require File.expand_path("../dummy/config/environment", __FILE__)
4
6
  require 'rspec/rails'
5
7
  require 'capybara/rspec'
8
+ require 'pry'
6
9
 
7
10
  # Requires supporting ruby files with custom matchers and macros, etc, in
8
11
  # spec/support/ and its subdirectories. Files matching `spec/**/*_spec.rb` are
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nocms-blocks
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rodrigo Garcia Suarez
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2015-06-30 00:00:00.000000000 Z
15
+ date: 2015-08-19 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: rails
@@ -35,19 +35,39 @@ dependencies:
35
35
  - !ruby/object:Gem::Version
36
36
  version: 4.2.3
37
37
  - !ruby/object:Gem::Dependency
38
- name: awesome_nested_set
38
+ name: globalize
39
39
  requirement: !ruby/object:Gem::Requirement
40
40
  requirements:
41
41
  - - ">="
42
42
  - !ruby/object:Gem::Version
43
- version: 3.0.0.rc.6
43
+ version: 4.0.0
44
+ - - "<"
45
+ - !ruby/object:Gem::Version
46
+ version: '5.1'
44
47
  type: :runtime
45
48
  prerelease: false
46
49
  version_requirements: !ruby/object:Gem::Requirement
47
50
  requirements:
48
51
  - - ">="
49
52
  - !ruby/object:Gem::Version
50
- version: 3.0.0.rc.6
53
+ version: 4.0.0
54
+ - - "<"
55
+ - !ruby/object:Gem::Version
56
+ version: '5.1'
57
+ - !ruby/object:Gem::Dependency
58
+ name: awesome_nested_set
59
+ requirement: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: 3.0.0
64
+ type: :runtime
65
+ prerelease: false
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - "~>"
69
+ - !ruby/object:Gem::Version
70
+ version: 3.0.0
51
71
  - !ruby/object:Gem::Dependency
52
72
  name: sqlite3
53
73
  requirement: !ruby/object:Gem::Requirement
@@ -81,7 +101,9 @@ files:
81
101
  - app/helpers/no_cms/blocks/application_helper.rb
82
102
  - app/helpers/no_cms/blocks/blocks_helper.rb
83
103
  - app/models/no_cms/blocks/block.rb
104
+ - app/models/no_cms/blocks/concerns/serializing_fields.rb
84
105
  - app/models/no_cms/blocks/concerns/translation_scopes.rb
106
+ - app/models/no_cms/blocks/layout.rb
85
107
  - app/views/layouts/no_cms/blocks/application.html.erb
86
108
  - app/views/no_cms/admin/blocks/blocks/_default.html.erb
87
109
  - app/views/no_cms/admin/blocks/blocks/_form.html.erb
@@ -93,6 +115,8 @@ files:
93
115
  - db/migrate/20140405135410_create_no_cms_blocks_blocks.rb
94
116
  - db/migrate/20140405150944_add_awesome_nested_set_to_no_cms_blocks.rb
95
117
  - db/migrate/20140618150651_add_position_to_no_cms_blocks_block.rb
118
+ - db/migrate/20150709132202_add_non_translated_fields_info_to_no_cms_blocks_block.rb
119
+ - db/migrate/20150710112549_move_layout_from_no_cms_blocks_block_translations_to_no_cms_blocks_blocks.rb
96
120
  - lib/generators/nocms/blocks_generator.rb
97
121
  - lib/generators/nocms/templates/config/initializers/nocms/blocks.rb
98
122
  - lib/no_cms/blocks/configuration.rb
@@ -146,11 +170,189 @@ files:
146
170
  - spec/dummy/public/favicon.ico
147
171
  - spec/dummy/public/uploads/test_image/logo/1/logo.png
148
172
  - spec/dummy/public/uploads/test_image/logo/1/logo2.png
173
+ - spec/dummy/public/uploads/test_image/logo/2/logo.png
174
+ - spec/dummy/public/uploads/test_image/logo/2/logo2.png
175
+ - spec/dummy/public/uploads/test_image/logo/3/logo.png
176
+ - spec/dummy/public/uploads/test_image/logo/4/logo.png
177
+ - spec/dummy/public/uploads/test_image/logo/5/logo.png
178
+ - spec/dummy/public/uploads/test_image/logo/6/logo.png
179
+ - spec/dummy/public/uploads/tmp/1436194769-17662-1395/logo.png
180
+ - spec/dummy/public/uploads/tmp/1436194769-17662-1590/logo.png
181
+ - spec/dummy/public/uploads/tmp/1436194769-17662-1891/logo.png
182
+ - spec/dummy/public/uploads/tmp/1436194769-17662-1891/logo2.png
183
+ - spec/dummy/public/uploads/tmp/1436194769-17662-2425/logo.png
184
+ - spec/dummy/public/uploads/tmp/1436194769-17662-3650/logo.png
185
+ - spec/dummy/public/uploads/tmp/1436194769-17662-3867/logo.png
186
+ - spec/dummy/public/uploads/tmp/1436194769-17662-3867/logo2.png
187
+ - spec/dummy/public/uploads/tmp/1436194769-17662-5629/logo.png
188
+ - spec/dummy/public/uploads/tmp/1436194769-17662-5795/logo.png
189
+ - spec/dummy/public/uploads/tmp/1436194769-17662-5882/logo.png
190
+ - spec/dummy/public/uploads/tmp/1436194769-17662-9375/logo.png
191
+ - spec/dummy/public/uploads/tmp/1436194790-17727-0450/logo.png
192
+ - spec/dummy/public/uploads/tmp/1436194790-17727-0733/logo.png
193
+ - spec/dummy/public/uploads/tmp/1436194790-17727-0733/logo2.png
194
+ - spec/dummy/public/uploads/tmp/1436194790-17727-1087/logo.png
195
+ - spec/dummy/public/uploads/tmp/1436194790-17727-1087/logo2.png
196
+ - spec/dummy/public/uploads/tmp/1436194790-17727-1788/logo.png
197
+ - spec/dummy/public/uploads/tmp/1436194790-17727-2101/logo.png
198
+ - spec/dummy/public/uploads/tmp/1436194790-17727-4443/logo.png
199
+ - spec/dummy/public/uploads/tmp/1436194790-17727-5065/logo.png
200
+ - spec/dummy/public/uploads/tmp/1436194790-17727-6456/logo.png
201
+ - spec/dummy/public/uploads/tmp/1436194790-17727-8131/logo.png
202
+ - spec/dummy/public/uploads/tmp/1436194790-17727-9096/logo.png
203
+ - spec/dummy/public/uploads/tmp/1436194856-17785-0815/logo.png
204
+ - spec/dummy/public/uploads/tmp/1436194856-17785-4789/logo.png
205
+ - spec/dummy/public/uploads/tmp/1436194856-17785-7685/logo.png
206
+ - spec/dummy/public/uploads/tmp/1436194857-17785-0259/logo.png
207
+ - spec/dummy/public/uploads/tmp/1436194857-17785-0349/logo.png
208
+ - spec/dummy/public/uploads/tmp/1436194857-17785-0476/logo.png
209
+ - spec/dummy/public/uploads/tmp/1436194857-17785-1997/logo.png
210
+ - spec/dummy/public/uploads/tmp/1436194857-17785-3813/logo.png
211
+ - spec/dummy/public/uploads/tmp/1436194857-17785-3813/logo2.png
212
+ - spec/dummy/public/uploads/tmp/1436194857-17785-4455/logo.png
213
+ - spec/dummy/public/uploads/tmp/1436194857-17785-5316/logo.png
214
+ - spec/dummy/public/uploads/tmp/1436194857-17785-5316/logo2.png
215
+ - spec/dummy/public/uploads/tmp/1436194857-17785-7121/logo.png
216
+ - spec/dummy/public/uploads/tmp/1436194857-17785-7447/logo.png
217
+ - spec/dummy/public/uploads/tmp/1436194857-17785-7677/logo.png
218
+ - spec/dummy/public/uploads/tmp/1436194857-17785-8037/logo.png
219
+ - spec/dummy/public/uploads/tmp/1436194857-17785-8791/logo.png
220
+ - spec/dummy/public/uploads/tmp/1436194878-17844-1352/logo.png
221
+ - spec/dummy/public/uploads/tmp/1436194878-17844-1557/logo.png
222
+ - spec/dummy/public/uploads/tmp/1436194878-17844-5177/logo.png
223
+ - spec/dummy/public/uploads/tmp/1436194878-17844-5338/logo.png
224
+ - spec/dummy/public/uploads/tmp/1436194878-17844-8747/logo.png
225
+ - spec/dummy/public/uploads/tmp/1436194879-17844-3191/logo.png
226
+ - spec/dummy/public/uploads/tmp/1436194879-17844-3986/logo.png
227
+ - spec/dummy/public/uploads/tmp/1436194879-17844-5951/logo.png
228
+ - spec/dummy/public/uploads/tmp/1436194879-17844-6104/logo.png
229
+ - spec/dummy/public/uploads/tmp/1436194879-17844-7114/logo.png
230
+ - spec/dummy/public/uploads/tmp/1436194879-17844-7114/logo2.png
231
+ - spec/dummy/public/uploads/tmp/1436194879-17844-7617/logo.png
232
+ - spec/dummy/public/uploads/tmp/1436194879-17844-8185/logo.png
233
+ - spec/dummy/public/uploads/tmp/1436194879-17844-8495/logo.png
234
+ - spec/dummy/public/uploads/tmp/1436194879-17844-8495/logo2.png
235
+ - spec/dummy/public/uploads/tmp/1436194879-17844-8991/logo.png
236
+ - spec/dummy/public/uploads/tmp/1436194879-17844-9466/logo.png
237
+ - spec/dummy/public/uploads/tmp/1436194892-17862-1771/logo.png
238
+ - spec/dummy/public/uploads/tmp/1436194926-17904-9747/logo.png
239
+ - spec/dummy/public/uploads/tmp/1436195033-17981-2265/logo.png
240
+ - spec/dummy/public/uploads/tmp/1436195045-18015-3603/logo.png
241
+ - spec/dummy/public/uploads/tmp/1436195085-18055-8412/logo.png
242
+ - spec/dummy/public/uploads/tmp/1436195101-18097-0044/logo.png
243
+ - spec/dummy/public/uploads/tmp/1436195126-18165-6939/logo.png
244
+ - spec/dummy/public/uploads/tmp/1436195152-18225-1850/logo.png
245
+ - spec/dummy/public/uploads/tmp/1436195169-18262-2283/logo.png
246
+ - spec/dummy/public/uploads/tmp/1436195186-18300-3395/logo.png
247
+ - spec/dummy/public/uploads/tmp/1436195205-18336-0453/logo.png
248
+ - spec/dummy/public/uploads/tmp/1436195242-18389-3554/logo.png
249
+ - spec/dummy/public/uploads/tmp/1436195255-18420-9336/logo.png
250
+ - spec/dummy/public/uploads/tmp/1436195745-18605-6163/logo.png
251
+ - spec/dummy/public/uploads/tmp/1436195823-18669-7443/logo.png
252
+ - spec/dummy/public/uploads/tmp/1436195886-18739-5334/logo.png
253
+ - spec/dummy/public/uploads/tmp/1436195900-18776-9749/logo.png
254
+ - spec/dummy/public/uploads/tmp/1436195935-18824-1992/logo.png
255
+ - spec/dummy/public/uploads/tmp/1436196060-18894-4158/logo.png
256
+ - spec/dummy/public/uploads/tmp/1436196106-18943-1035/logo.png
257
+ - spec/dummy/public/uploads/tmp/1436196156-18987-1445/logo.png
258
+ - spec/dummy/public/uploads/tmp/1436196187-19045-9003/logo.png
259
+ - spec/dummy/public/uploads/tmp/1436196275-19125-3257/logo.png
260
+ - spec/dummy/public/uploads/tmp/1436196321-19169-5591/logo.png
261
+ - spec/dummy/public/uploads/tmp/1436258374-8961-0160/logo.png
262
+ - spec/dummy/public/uploads/tmp/1436258374-8961-0565/logo.png
263
+ - spec/dummy/public/uploads/tmp/1436258374-8961-1519/logo.png
264
+ - spec/dummy/public/uploads/tmp/1436258374-8961-2202/logo.png
265
+ - spec/dummy/public/uploads/tmp/1436258374-8961-2400/logo.png
266
+ - spec/dummy/public/uploads/tmp/1436258374-8961-2928/logo.png
267
+ - spec/dummy/public/uploads/tmp/1436258374-8961-3260/logo.png
268
+ - spec/dummy/public/uploads/tmp/1436258374-8961-4333/logo.png
269
+ - spec/dummy/public/uploads/tmp/1436258374-8961-5122/logo.png
270
+ - spec/dummy/public/uploads/tmp/1436258374-8961-6333/logo.png
271
+ - spec/dummy/public/uploads/tmp/1436258374-8961-6333/logo2.png
272
+ - spec/dummy/public/uploads/tmp/1436258374-8961-7928/logo.png
273
+ - spec/dummy/public/uploads/tmp/1436258374-8961-9359/logo.png
274
+ - spec/dummy/public/uploads/tmp/1436258374-8961-9392/logo.png
275
+ - spec/dummy/public/uploads/tmp/1436258374-8961-9549/logo.png
276
+ - spec/dummy/public/uploads/tmp/1436258374-8961-9549/logo2.png
277
+ - spec/dummy/public/uploads/tmp/1436258374-8961-9648/logo.png
278
+ - spec/dummy/public/uploads/tmp/1436258382-8967-0797/logo.png
279
+ - spec/dummy/public/uploads/tmp/1436258453-9165-7375/logo.png
280
+ - spec/dummy/public/uploads/tmp/1436258549-9282-2039/logo.png
281
+ - spec/dummy/public/uploads/tmp/1436258623-9355-6670/logo.png
282
+ - spec/dummy/public/uploads/tmp/1436258674-9394-2929/logo.png
283
+ - spec/dummy/public/uploads/tmp/1436264869-10860-2169/logo.png
284
+ - spec/dummy/public/uploads/tmp/1436276653-16968-2375/logo.png
285
+ - spec/dummy/public/uploads/tmp/1436276734-17282-9777/logo.png
286
+ - spec/dummy/public/uploads/tmp/1436276770-17431-4333/logo.png
287
+ - spec/dummy/public/uploads/tmp/1436276781-17463-5971/logo.png
288
+ - spec/dummy/public/uploads/tmp/1436276875-17556-1972/logo.png
289
+ - spec/dummy/public/uploads/tmp/1436276882-17588-9186/logo.png
290
+ - spec/dummy/public/uploads/tmp/1436276896-17657-9942/logo.png
291
+ - spec/dummy/public/uploads/tmp/1436277157-17795-9344/logo.png
292
+ - spec/dummy/public/uploads/tmp/1436277178-17833-8883/logo.png
293
+ - spec/dummy/public/uploads/tmp/1436277781-18431-2830/logo.png
294
+ - spec/dummy/public/uploads/tmp/1436278571-18860-1079/logo.png
295
+ - spec/dummy/public/uploads/tmp/1436282613-22892-0135/logo.png
296
+ - spec/dummy/public/uploads/tmp/1436282638-22953-7833/logo.png
297
+ - spec/dummy/public/uploads/tmp/1436282887-23026-0068/logo.png
298
+ - spec/dummy/public/uploads/tmp/1436282978-23160-8886/logo.png
299
+ - spec/dummy/public/uploads/tmp/1436284256-24634-1740/logo.png
300
+ - spec/dummy/public/uploads/tmp/1436284256-24634-3170/logo.png
301
+ - spec/dummy/public/uploads/tmp/1436284256-24634-3501/logo.png
302
+ - spec/dummy/public/uploads/tmp/1436284256-24634-6393/logo.png
303
+ - spec/dummy/public/uploads/tmp/1436284256-24634-6862/logo.png
304
+ - spec/dummy/public/uploads/tmp/1436284256-24634-7741/logo.png
305
+ - spec/dummy/public/uploads/tmp/1436284256-24634-8051/logo.png
306
+ - spec/dummy/public/uploads/tmp/1436284256-24634-8064/logo.png
307
+ - spec/dummy/public/uploads/tmp/1436284256-24634-8093/logo.png
308
+ - spec/dummy/public/uploads/tmp/1436284256-24634-9497/logo.png
309
+ - spec/dummy/public/uploads/tmp/1436553862-9485-0200/logo.png
310
+ - spec/dummy/public/uploads/tmp/1436553862-9485-0325/logo.png
311
+ - spec/dummy/public/uploads/tmp/1436553862-9485-1380/logo.png
312
+ - spec/dummy/public/uploads/tmp/1436553862-9485-4150/logo.png
313
+ - spec/dummy/public/uploads/tmp/1436553862-9485-4347/logo.png
314
+ - spec/dummy/public/uploads/tmp/1436553862-9485-5072/logo.png
315
+ - spec/dummy/public/uploads/tmp/1436553862-9485-5891/logo2.png
316
+ - spec/dummy/public/uploads/tmp/1436553862-9485-6304/logo.png
317
+ - spec/dummy/public/uploads/tmp/1436553862-9485-6620/logo.png
318
+ - spec/dummy/public/uploads/tmp/1436553862-9485-6703/logo.png
319
+ - spec/dummy/public/uploads/tmp/1436553862-9485-8254/logo.png
320
+ - spec/dummy/public/uploads/tmp/1436553862-9485-8313/logo2.png
321
+ - spec/dummy/public/uploads/tmp/1436554155-9646-0021/logo.png
322
+ - spec/dummy/public/uploads/tmp/1436554155-9646-1865/logo.png
323
+ - spec/dummy/public/uploads/tmp/1436554155-9646-2510/logo.png
324
+ - spec/dummy/public/uploads/tmp/1436554155-9646-3771/logo.png
325
+ - spec/dummy/public/uploads/tmp/1436554155-9646-4441/logo.png
326
+ - spec/dummy/public/uploads/tmp/1436554155-9646-5712/logo.png
327
+ - spec/dummy/public/uploads/tmp/1436554155-9646-6456/logo2.png
328
+ - spec/dummy/public/uploads/tmp/1436554155-9646-6520/logo.png
329
+ - spec/dummy/public/uploads/tmp/1436554155-9646-8183/logo.png
330
+ - spec/dummy/public/uploads/tmp/1436554155-9646-8675/logo.png
331
+ - spec/dummy/public/uploads/tmp/1436554155-9646-8953/logo.png
332
+ - spec/dummy/public/uploads/tmp/1436554155-9646-9271/logo2.png
333
+ - spec/dummy/public/uploads/tmp/1436554181-9685-7099/logo.png
334
+ - spec/dummy/public/uploads/tmp/1436554233-9708-0769/logo.png
335
+ - spec/dummy/public/uploads/tmp/1436554254-9739-7026/logo.png
336
+ - spec/dummy/public/uploads/tmp/1436554350-9834-3927/logo.png
337
+ - spec/dummy/public/uploads/tmp/1436554416-9875-0666/logo.png
338
+ - spec/dummy/public/uploads/tmp/1436554519-9921-2596/logo.png
339
+ - spec/dummy/public/uploads/tmp/1436554569-9980-0004/logo.png
340
+ - spec/dummy/public/uploads/tmp/1436554694-10292-1775/logo2.png
341
+ - spec/dummy/public/uploads/tmp/1436554694-10292-5549/logo2.png
342
+ - spec/dummy/public/uploads/tmp/1436554722-10308-2875/logo2.png
343
+ - spec/dummy/public/uploads/tmp/1436554732-10340-8854/logo2.png
344
+ - spec/dummy/public/uploads/tmp/1436554994-10463-9859/logo2.png
345
+ - spec/dummy/public/uploads/tmp/1436555134-10554-3506/logo2.png
346
+ - spec/dummy/public/uploads/tmp/1436555227-10604-7612/logo2.png
347
+ - spec/dummy/public/uploads/tmp/1436555450-10700-1633/logo2.png
149
348
  - spec/factories/no_cms/blocks/block.rb
150
349
  - spec/factories/test_image.rb
151
350
  - spec/fixtures/images/logo.png
152
351
  - spec/fixtures/images/logo2.png
153
352
  - spec/models/no_cms/blocks/block_spec.rb
353
+ - spec/models/no_cms/blocks/duplicating_blocks_spec.rb
354
+ - spec/models/no_cms/blocks/i18n_blocks_spec.rb
355
+ - spec/models/no_cms/blocks/layout_spec.rb
154
356
  - spec/requests/no_cms/blocks/blocks_spec.rb
155
357
  - spec/spec_helper.rb
156
358
  - spec/support/concerns/model_with_has_many_relationship.rb
@@ -179,7 +381,10 @@ signing_key:
179
381
  specification_version: 4
180
382
  summary: Engine of configurable content blocks CMS agnostic (NoCMS).
181
383
  test_files:
384
+ - spec/models/no_cms/blocks/layout_spec.rb
182
385
  - spec/models/no_cms/blocks/block_spec.rb
386
+ - spec/models/no_cms/blocks/duplicating_blocks_spec.rb
387
+ - spec/models/no_cms/blocks/i18n_blocks_spec.rb
183
388
  - spec/fixtures/images/logo2.png
184
389
  - spec/fixtures/images/logo.png
185
390
  - spec/support/concerns/model_with_required_attributes.rb
@@ -187,8 +392,183 @@ test_files:
187
392
  - spec/spec_helper.rb
188
393
  - spec/requests/no_cms/blocks/blocks_spec.rb
189
394
  - spec/dummy/public/favicon.ico
395
+ - spec/dummy/public/uploads/tmp/1436282638-22953-7833/logo.png
396
+ - spec/dummy/public/uploads/tmp/1436258374-8961-7928/logo.png
397
+ - spec/dummy/public/uploads/tmp/1436554732-10340-8854/logo2.png
398
+ - spec/dummy/public/uploads/tmp/1436195085-18055-8412/logo.png
399
+ - spec/dummy/public/uploads/tmp/1436194879-17844-9466/logo.png
400
+ - spec/dummy/public/uploads/tmp/1436554569-9980-0004/logo.png
401
+ - spec/dummy/public/uploads/tmp/1436554155-9646-0021/logo.png
402
+ - spec/dummy/public/uploads/tmp/1436277157-17795-9344/logo.png
403
+ - spec/dummy/public/uploads/tmp/1436195900-18776-9749/logo.png
404
+ - spec/dummy/public/uploads/tmp/1436194892-17862-1771/logo.png
405
+ - spec/dummy/public/uploads/tmp/1436194879-17844-7617/logo.png
406
+ - spec/dummy/public/uploads/tmp/1436194857-17785-8037/logo.png
407
+ - spec/dummy/public/uploads/tmp/1436555450-10700-1633/logo2.png
408
+ - spec/dummy/public/uploads/tmp/1436284256-24634-8093/logo.png
409
+ - spec/dummy/public/uploads/tmp/1436258374-8961-1519/logo.png
410
+ - spec/dummy/public/uploads/tmp/1436284256-24634-8064/logo.png
411
+ - spec/dummy/public/uploads/tmp/1436194857-17785-5316/logo2.png
412
+ - spec/dummy/public/uploads/tmp/1436194857-17785-5316/logo.png
413
+ - spec/dummy/public/uploads/tmp/1436554155-9646-1865/logo.png
414
+ - spec/dummy/public/uploads/tmp/1436554233-9708-0769/logo.png
415
+ - spec/dummy/public/uploads/tmp/1436258549-9282-2039/logo.png
416
+ - spec/dummy/public/uploads/tmp/1436194769-17662-1590/logo.png
417
+ - spec/dummy/public/uploads/tmp/1436553862-9485-5072/logo.png
418
+ - spec/dummy/public/uploads/tmp/1436194879-17844-8185/logo.png
419
+ - spec/dummy/public/uploads/tmp/1436194769-17662-5882/logo.png
420
+ - spec/dummy/public/uploads/tmp/1436194769-17662-9375/logo.png
421
+ - spec/dummy/public/uploads/tmp/1436553862-9485-4347/logo.png
422
+ - spec/dummy/public/uploads/tmp/1436258374-8961-6333/logo2.png
423
+ - spec/dummy/public/uploads/tmp/1436258374-8961-6333/logo.png
424
+ - spec/dummy/public/uploads/tmp/1436553862-9485-0325/logo.png
425
+ - spec/dummy/public/uploads/tmp/1436554155-9646-5712/logo.png
426
+ - spec/dummy/public/uploads/tmp/1436276653-16968-2375/logo.png
427
+ - spec/dummy/public/uploads/tmp/1436195033-17981-2265/logo.png
428
+ - spec/dummy/public/uploads/tmp/1436258453-9165-7375/logo.png
429
+ - spec/dummy/public/uploads/tmp/1436194790-17727-4443/logo.png
430
+ - spec/dummy/public/uploads/tmp/1436194879-17844-8495/logo2.png
431
+ - spec/dummy/public/uploads/tmp/1436194879-17844-8495/logo.png
432
+ - spec/dummy/public/uploads/tmp/1436258374-8961-0565/logo.png
433
+ - spec/dummy/public/uploads/tmp/1436194879-17844-3986/logo.png
434
+ - spec/dummy/public/uploads/tmp/1436553862-9485-8313/logo2.png
435
+ - spec/dummy/public/uploads/tmp/1436282978-23160-8886/logo.png
436
+ - spec/dummy/public/uploads/tmp/1436554722-10308-2875/logo2.png
437
+ - spec/dummy/public/uploads/tmp/1436282613-22892-0135/logo.png
438
+ - spec/dummy/public/uploads/tmp/1436276734-17282-9777/logo.png
439
+ - spec/dummy/public/uploads/tmp/1436194857-17785-4455/logo.png
440
+ - spec/dummy/public/uploads/tmp/1436553862-9485-6703/logo.png
441
+ - spec/dummy/public/uploads/tmp/1436554519-9921-2596/logo.png
442
+ - spec/dummy/public/uploads/tmp/1436195242-18389-3554/logo.png
443
+ - spec/dummy/public/uploads/tmp/1436194879-17844-5951/logo.png
444
+ - spec/dummy/public/uploads/tmp/1436258374-8961-9648/logo.png
445
+ - spec/dummy/public/uploads/tmp/1436194769-17662-3650/logo.png
446
+ - spec/dummy/public/uploads/tmp/1436194857-17785-7447/logo.png
447
+ - spec/dummy/public/uploads/tmp/1436194790-17727-2101/logo.png
448
+ - spec/dummy/public/uploads/tmp/1436194769-17662-1891/logo2.png
449
+ - spec/dummy/public/uploads/tmp/1436194769-17662-1891/logo.png
450
+ - spec/dummy/public/uploads/tmp/1436258374-8961-2400/logo.png
451
+ - spec/dummy/public/uploads/tmp/1436196060-18894-4158/logo.png
452
+ - spec/dummy/public/uploads/tmp/1436553862-9485-0200/logo.png
453
+ - spec/dummy/public/uploads/tmp/1436258374-8961-0160/logo.png
454
+ - spec/dummy/public/uploads/tmp/1436276882-17588-9186/logo.png
455
+ - spec/dummy/public/uploads/tmp/1436554416-9875-0666/logo.png
456
+ - spec/dummy/public/uploads/tmp/1436194790-17727-9096/logo.png
457
+ - spec/dummy/public/uploads/tmp/1436194878-17844-5177/logo.png
458
+ - spec/dummy/public/uploads/tmp/1436195886-18739-5334/logo.png
459
+ - spec/dummy/public/uploads/tmp/1436284256-24634-3501/logo.png
460
+ - spec/dummy/public/uploads/tmp/1436195169-18262-2283/logo.png
461
+ - spec/dummy/public/uploads/tmp/1436196156-18987-1445/logo.png
462
+ - spec/dummy/public/uploads/tmp/1436284256-24634-1740/logo.png
463
+ - spec/dummy/public/uploads/tmp/1436194790-17727-0450/logo.png
464
+ - spec/dummy/public/uploads/tmp/1436258374-8961-9359/logo.png
465
+ - spec/dummy/public/uploads/tmp/1436284256-24634-6862/logo.png
466
+ - spec/dummy/public/uploads/tmp/1436194878-17844-5338/logo.png
467
+ - spec/dummy/public/uploads/tmp/1436554350-9834-3927/logo.png
468
+ - spec/dummy/public/uploads/tmp/1436276781-17463-5971/logo.png
469
+ - spec/dummy/public/uploads/tmp/1436258374-8961-4333/logo.png
470
+ - spec/dummy/public/uploads/tmp/1436195045-18015-3603/logo.png
471
+ - spec/dummy/public/uploads/tmp/1436194879-17844-8991/logo.png
472
+ - spec/dummy/public/uploads/tmp/1436194790-17727-8131/logo.png
473
+ - spec/dummy/public/uploads/tmp/1436194790-17727-6456/logo.png
474
+ - spec/dummy/public/uploads/tmp/1436194769-17662-1395/logo.png
475
+ - spec/dummy/public/uploads/tmp/1436278571-18860-1079/logo.png
476
+ - spec/dummy/public/uploads/tmp/1436194790-17727-1788/logo.png
477
+ - spec/dummy/public/uploads/tmp/1436196187-19045-9003/logo.png
478
+ - spec/dummy/public/uploads/tmp/1436553862-9485-4150/logo.png
479
+ - spec/dummy/public/uploads/tmp/1436194856-17785-0815/logo.png
480
+ - spec/dummy/public/uploads/tmp/1436194857-17785-0349/logo.png
481
+ - spec/dummy/public/uploads/tmp/1436194769-17662-5629/logo.png
482
+ - spec/dummy/public/uploads/tmp/1436277178-17833-8883/logo.png
483
+ - spec/dummy/public/uploads/tmp/1436554694-10292-5549/logo2.png
484
+ - spec/dummy/public/uploads/tmp/1436553862-9485-8254/logo.png
485
+ - spec/dummy/public/uploads/tmp/1436194857-17785-1997/logo.png
486
+ - spec/dummy/public/uploads/tmp/1436194878-17844-1557/logo.png
487
+ - spec/dummy/public/uploads/tmp/1436194769-17662-5795/logo.png
488
+ - spec/dummy/public/uploads/tmp/1436258374-8961-2202/logo.png
489
+ - spec/dummy/public/uploads/tmp/1436258374-8961-5122/logo.png
490
+ - spec/dummy/public/uploads/tmp/1436554155-9646-2510/logo.png
491
+ - spec/dummy/public/uploads/tmp/1436258623-9355-6670/logo.png
492
+ - spec/dummy/public/uploads/tmp/1436195186-18300-3395/logo.png
493
+ - spec/dummy/public/uploads/tmp/1436276875-17556-1972/logo.png
494
+ - spec/dummy/public/uploads/tmp/1436194879-17844-6104/logo.png
495
+ - spec/dummy/public/uploads/tmp/1436554155-9646-9271/logo2.png
496
+ - spec/dummy/public/uploads/tmp/1436284256-24634-8051/logo.png
497
+ - spec/dummy/public/uploads/tmp/1436194926-17904-9747/logo.png
498
+ - spec/dummy/public/uploads/tmp/1436194878-17844-8747/logo.png
499
+ - spec/dummy/public/uploads/tmp/1436554155-9646-4441/logo.png
500
+ - spec/dummy/public/uploads/tmp/1436258374-8961-3260/logo.png
501
+ - spec/dummy/public/uploads/tmp/1436554155-9646-8675/logo.png
502
+ - spec/dummy/public/uploads/tmp/1436194790-17727-5065/logo.png
503
+ - spec/dummy/public/uploads/tmp/1436553862-9485-6304/logo.png
504
+ - spec/dummy/public/uploads/tmp/1436554155-9646-6456/logo2.png
505
+ - spec/dummy/public/uploads/tmp/1436194857-17785-7677/logo.png
506
+ - spec/dummy/public/uploads/tmp/1436553862-9485-5891/logo2.png
507
+ - spec/dummy/public/uploads/tmp/1436195935-18824-1992/logo.png
508
+ - spec/dummy/public/uploads/tmp/1436195126-18165-6939/logo.png
509
+ - spec/dummy/public/uploads/tmp/1436258674-9394-2929/logo.png
510
+ - spec/dummy/public/uploads/tmp/1436284256-24634-3170/logo.png
511
+ - spec/dummy/public/uploads/tmp/1436554254-9739-7026/logo.png
512
+ - spec/dummy/public/uploads/tmp/1436194857-17785-3813/logo2.png
513
+ - spec/dummy/public/uploads/tmp/1436194857-17785-3813/logo.png
514
+ - spec/dummy/public/uploads/tmp/1436258374-8961-2928/logo.png
515
+ - spec/dummy/public/uploads/tmp/1436553862-9485-6620/logo.png
516
+ - spec/dummy/public/uploads/tmp/1436194857-17785-8791/logo.png
517
+ - spec/dummy/public/uploads/tmp/1436284256-24634-9497/logo.png
518
+ - spec/dummy/public/uploads/tmp/1436196275-19125-3257/logo.png
519
+ - spec/dummy/public/uploads/tmp/1436554155-9646-6520/logo.png
520
+ - spec/dummy/public/uploads/tmp/1436194857-17785-0259/logo.png
521
+ - spec/dummy/public/uploads/tmp/1436277781-18431-2830/logo.png
522
+ - spec/dummy/public/uploads/tmp/1436258374-8961-9392/logo.png
523
+ - spec/dummy/public/uploads/tmp/1436553862-9485-1380/logo.png
524
+ - spec/dummy/public/uploads/tmp/1436284256-24634-6393/logo.png
525
+ - spec/dummy/public/uploads/tmp/1436194878-17844-1352/logo.png
526
+ - spec/dummy/public/uploads/tmp/1436284256-24634-7741/logo.png
527
+ - spec/dummy/public/uploads/tmp/1436194790-17727-1087/logo2.png
528
+ - spec/dummy/public/uploads/tmp/1436194790-17727-1087/logo.png
529
+ - spec/dummy/public/uploads/tmp/1436196321-19169-5591/logo.png
530
+ - spec/dummy/public/uploads/tmp/1436194879-17844-3191/logo.png
531
+ - spec/dummy/public/uploads/tmp/1436554155-9646-8183/logo.png
532
+ - spec/dummy/public/uploads/tmp/1436194856-17785-7685/logo.png
533
+ - spec/dummy/public/uploads/tmp/1436276896-17657-9942/logo.png
534
+ - spec/dummy/public/uploads/tmp/1436195152-18225-1850/logo.png
535
+ - spec/dummy/public/uploads/tmp/1436258382-8967-0797/logo.png
536
+ - spec/dummy/public/uploads/tmp/1436194879-17844-7114/logo2.png
537
+ - spec/dummy/public/uploads/tmp/1436194879-17844-7114/logo.png
538
+ - spec/dummy/public/uploads/tmp/1436195745-18605-6163/logo.png
539
+ - spec/dummy/public/uploads/tmp/1436196106-18943-1035/logo.png
540
+ - spec/dummy/public/uploads/tmp/1436195101-18097-0044/logo.png
541
+ - spec/dummy/public/uploads/tmp/1436195823-18669-7443/logo.png
542
+ - spec/dummy/public/uploads/tmp/1436554155-9646-3771/logo.png
543
+ - spec/dummy/public/uploads/tmp/1436194769-17662-2425/logo.png
544
+ - spec/dummy/public/uploads/tmp/1436258374-8961-9549/logo2.png
545
+ - spec/dummy/public/uploads/tmp/1436258374-8961-9549/logo.png
546
+ - spec/dummy/public/uploads/tmp/1436195205-18336-0453/logo.png
547
+ - spec/dummy/public/uploads/tmp/1436282887-23026-0068/logo.png
548
+ - spec/dummy/public/uploads/tmp/1436194790-17727-0733/logo2.png
549
+ - spec/dummy/public/uploads/tmp/1436194790-17727-0733/logo.png
550
+ - spec/dummy/public/uploads/tmp/1436276770-17431-4333/logo.png
551
+ - spec/dummy/public/uploads/tmp/1436554994-10463-9859/logo2.png
552
+ - spec/dummy/public/uploads/tmp/1436264869-10860-2169/logo.png
553
+ - spec/dummy/public/uploads/tmp/1436194769-17662-3867/logo2.png
554
+ - spec/dummy/public/uploads/tmp/1436194769-17662-3867/logo.png
555
+ - spec/dummy/public/uploads/tmp/1436554181-9685-7099/logo.png
556
+ - spec/dummy/public/uploads/tmp/1436194857-17785-7121/logo.png
557
+ - spec/dummy/public/uploads/tmp/1436555134-10554-3506/logo2.png
558
+ - spec/dummy/public/uploads/tmp/1436555227-10604-7612/logo2.png
559
+ - spec/dummy/public/uploads/tmp/1436194856-17785-4789/logo.png
560
+ - spec/dummy/public/uploads/tmp/1436195255-18420-9336/logo.png
561
+ - spec/dummy/public/uploads/tmp/1436554155-9646-8953/logo.png
562
+ - spec/dummy/public/uploads/tmp/1436554694-10292-1775/logo2.png
563
+ - spec/dummy/public/uploads/tmp/1436194857-17785-0476/logo.png
564
+ - spec/dummy/public/uploads/test_image/logo/4/logo.png
565
+ - spec/dummy/public/uploads/test_image/logo/6/logo.png
566
+ - spec/dummy/public/uploads/test_image/logo/2/logo2.png
567
+ - spec/dummy/public/uploads/test_image/logo/2/logo.png
190
568
  - spec/dummy/public/uploads/test_image/logo/1/logo2.png
191
569
  - spec/dummy/public/uploads/test_image/logo/1/logo.png
570
+ - spec/dummy/public/uploads/test_image/logo/5/logo.png
571
+ - spec/dummy/public/uploads/test_image/logo/3/logo.png
192
572
  - spec/dummy/public/500.html
193
573
  - spec/dummy/public/422.html
194
574
  - spec/dummy/public/404.html