alchemy_cms 2.2.rc6 → 2.2.rc7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. data/.rspec +0 -1
  2. data/.travis.yml +5 -4
  3. data/Gemfile +7 -8
  4. data/app/controllers/alchemy/admin/pages_controller.rb +1 -2
  5. data/app/controllers/alchemy/admin/resources_controller.rb +1 -1
  6. data/app/controllers/alchemy/base_controller.rb +2 -1
  7. data/app/controllers/alchemy/pages_controller.rb +5 -5
  8. data/app/helpers/alchemy/admin/base_helper.rb +2 -0
  9. data/app/models/alchemy/attachment.rb +2 -1
  10. data/app/models/alchemy/element.rb +12 -16
  11. data/app/models/alchemy/page.rb +8 -4
  12. data/config/locales/alchemy.en.yml +1 -1
  13. data/db/migrate/20101216151419_add_language_id_to_pages.rb +11 -3
  14. data/lib/alchemy/version.rb +1 -1
  15. data/lib/alchemy_cms.rb +2 -2
  16. data/spec/controllers/admin/clipboard_controller_spec.rb +12 -12
  17. data/spec/controllers/admin/contents_controller_spec.rb +3 -3
  18. data/spec/controllers/admin/elements_controller_spec.rb +1 -1
  19. data/spec/controllers/admin/languages_controller_spec.rb +1 -1
  20. data/spec/controllers/admin/pages_controller_spec.rb +33 -1
  21. data/spec/controllers/admin/trash_controller_spec.rb +3 -3
  22. data/spec/controllers/base_controller_spec.rb +3 -3
  23. data/spec/controllers/pages_controller_spec.rb +6 -6
  24. data/spec/dummy/config/database.yml +24 -18
  25. data/spec/dummy/db/schema.rb +1 -1
  26. data/spec/factories.rb +5 -5
  27. data/spec/helpers/admin/contents_helper_spec.rb +1 -1
  28. data/spec/helpers/admin/elements_helper_spec.rb +2 -2
  29. data/spec/helpers/admin/essences_helper_spec.rb +1 -1
  30. data/spec/helpers/elements_helper_spec.rb +35 -35
  31. data/spec/helpers/essences_helper_spec.rb +1 -1
  32. data/spec/helpers/pages_helper_spec.rb +27 -27
  33. data/spec/integration/admin/modules_integration_spec.rb +30 -0
  34. data/spec/integration/admin/pages_controller_spec.rb +7 -7
  35. data/spec/integration/pages_controller_spec.rb +38 -24
  36. data/spec/integration/security_spec.rb +1 -1
  37. data/spec/models/content_spec.rb +5 -5
  38. data/spec/models/element_spec.rb +59 -14
  39. data/spec/models/language_spec.rb +9 -9
  40. data/spec/models/page_spec.rb +66 -42
  41. data/spec/models/user_spec.rb +1 -1
  42. data/spec/page_layout_spec.rb +1 -1
  43. data/spec/spec_helper.rb +2 -2
  44. data/spec/support/alchemy/specs_helpers.rb +1 -1
  45. metadata +36 -34
@@ -7,7 +7,7 @@ describe Alchemy::Page do
7
7
  before(:each) do
8
8
  @rootpage = Alchemy::Page.root
9
9
  @language = Alchemy::Language.get_default
10
- @language_root = Factory(:language_root_page, :name => 'Default Language Root', :language => @language)
10
+ @language_root = FactoryGirl.create(:language_root_page, :name => 'Default Language Root', :language => @language)
11
11
  end
12
12
 
13
13
  describe ".layout_description" do
@@ -36,17 +36,17 @@ describe Alchemy::Page do
36
36
  end
37
37
 
38
38
  it "should return all rss feed elements" do
39
- @page = Factory(:public_page, :page_layout => 'news', :parent_id => @language_root.id, :language => @language)
39
+ @page = FactoryGirl.create(:public_page, :page_layout => 'news', :parent_id => @language_root.id, :language => @language)
40
40
  @page.feed_elements.should == Alchemy::Element.find_all_by_name('news')
41
41
  end
42
42
 
43
43
  context "finding elements" do
44
44
 
45
45
  before(:each) do
46
- @page = Factory(:public_page)
46
+ @page = FactoryGirl.create(:public_page)
47
47
  @non_public_elements = [
48
- Factory(:element, :public => false, :page => @page),
49
- Factory(:element, :public => false, :page => @page)
48
+ FactoryGirl.create(:element, :public => false, :page => @page),
49
+ FactoryGirl.create(:element, :public => false, :page => @page)
50
50
  ]
51
51
  end
52
52
 
@@ -110,27 +110,27 @@ describe Alchemy::Page do
110
110
  context "before/after filter" do
111
111
 
112
112
  it "should automatically set the title from its name" do
113
- page = Factory(:page, :name => 'My Testpage', :language => @language, :parent_id => @language_root.id)
113
+ page = FactoryGirl.create(:page, :name => 'My Testpage', :language => @language, :parent_id => @language_root.id)
114
114
  page.title.should == 'My Testpage'
115
115
  end
116
116
 
117
117
  it "should get a webfriendly urlname" do
118
- page = Factory(:page, :name => 'klingon$&stößel ', :language => @language, :parent_id => @language_root.id)
118
+ page = FactoryGirl.create(:page, :name => 'klingon$&stößel ', :language => @language, :parent_id => @language_root.id)
119
119
  page.urlname.should == 'klingon-stoessel'
120
120
  end
121
121
 
122
122
  it "should generate a three letter urlname from two letter name" do
123
- page = Factory(:page, :name => 'Au', :language => @language, :parent_id => @language_root.id)
123
+ page = FactoryGirl.create(:page, :name => 'Au', :language => @language, :parent_id => @language_root.id)
124
124
  page.urlname.should == '-au'
125
125
  end
126
126
 
127
127
  it "should generate a three letter urlname from two letter name with umlaut" do
128
- page = Factory(:page, :name => 'Aü', :language => @language, :parent_id => @language_root.id)
128
+ page = FactoryGirl.create(:page, :name => 'Aü', :language => @language, :parent_id => @language_root.id)
129
129
  page.urlname.should == 'aue'
130
130
  end
131
131
 
132
132
  it "should generate a three letter urlname from one letter name" do
133
- page = Factory(:page, :name => 'A', :language => @language, :parent_id => @language_root.id)
133
+ page = FactoryGirl.create(:page, :name => 'A', :language => @language, :parent_id => @language_root.id)
134
134
  page.urlname.should == '--a'
135
135
  end
136
136
 
@@ -143,14 +143,14 @@ describe Alchemy::Page do
143
143
  context "before/after filter" do
144
144
 
145
145
  it "should not set the title automatically if the name changed but title is not blank" do
146
- page = Factory(:page, :name => 'My Testpage', :language => @language, :parent_id => @language_root.id)
146
+ page = FactoryGirl.create(:page, :name => 'My Testpage', :language => @language, :parent_id => @language_root.id)
147
147
  page.name = "My Renaming Test"
148
148
  page.save; page.reload
149
149
  page.title.should == "My Testpage"
150
150
  end
151
151
 
152
152
  it "should not automatically set the title if it changed its value" do
153
- page = Factory(:page, :name => 'My Testpage', :language => @language, :parent_id => @language_root.id)
153
+ page = FactoryGirl.create(:page, :name => 'My Testpage', :language => @language, :parent_id => @language_root.id)
154
154
  page.title = "I like SEO"
155
155
  page.save; page.reload
156
156
  page.title.should == "I like SEO"
@@ -163,10 +163,10 @@ describe Alchemy::Page do
163
163
  context "with children" do
164
164
 
165
165
  before(:each) do
166
- @first_child = Factory(:page, :name => "First child", :language => @language, :public => false, :parent_id => @language_root.id)
166
+ @first_child = FactoryGirl.create(:page, :name => "First child", :language => @language, :public => false, :parent_id => @language_root.id)
167
167
  @first_child.move_to_child_of(@language_root)
168
168
 
169
- @first_public_child = Factory(:page, :name => "First public child", :language => @language, :parent_id => @language_root.id, :public => true)
169
+ @first_public_child = FactoryGirl.create(:page, :name => "First public child", :language => @language, :parent_id => @language_root.id, :public => true)
170
170
  @first_public_child.move_to_child_of(@language_root)
171
171
  end
172
172
 
@@ -180,11 +180,35 @@ describe Alchemy::Page do
180
180
 
181
181
  end
182
182
 
183
+ context ".contentpages" do
184
+
185
+ before(:each) do
186
+ @klingonian = FactoryGirl.create(:language)
187
+ @layoutroot = Alchemy::Page.find_or_create_layout_root_for(@klingonian.id)
188
+ @layoutpage = FactoryGirl.create(:public_page, :name => 'layoutpage', :layoutpage => true, :parent_id => @layoutroot.id, :language => @klingonian)
189
+ @klingonian_lang_root = FactoryGirl.create(:language_root_page, :name => 'klingonian_lang_root', :layoutpage => nil, :language => @klingonian)
190
+ @contentpage = FactoryGirl.create(:public_page, :name => 'contentpage', :parent_id => @language_root.id, :language => @language)
191
+ end
192
+
193
+ it "should return a collection of contentpages" do
194
+ Alchemy::Page.contentpages.to_a.should include(@language_root, @klingonian_lang_root, @contentpage)
195
+ end
196
+
197
+ it "should not contain pages with attribute :layoutpage set to true" do
198
+ Alchemy::Page.contentpages.to_a.select { |p| p.layoutpage == true }.should be_empty
199
+ end
200
+
201
+ it "should contain pages with attribute :layoutpage set to nil" do
202
+ Alchemy::Page.contentpages.to_a.select { |p| p.layoutpage == nil }.should include(@klingonian_lang_root)
203
+ end
204
+
205
+ end
206
+
183
207
  context ".public" do
184
208
 
185
209
  it "should return pages that are public" do
186
- Factory(:public_page, :name => 'First Public Child', :parent_id => @language_root.id, :language => @language)
187
- Factory(:public_page, :name => 'Second Public Child', :parent_id => @language_root.id, :language => @language)
210
+ FactoryGirl.create(:public_page, :name => 'First Public Child', :parent_id => @language_root.id, :language => @language)
211
+ FactoryGirl.create(:public_page, :name => 'Second Public Child', :parent_id => @language_root.id, :language => @language)
188
212
  Alchemy::Page.published.should have(3).pages
189
213
  end
190
214
 
@@ -193,22 +217,22 @@ describe Alchemy::Page do
193
217
  context ".not_locked" do
194
218
 
195
219
  it "should return pages that are not blocked by a user at the moment" do
196
- Factory(:public_page, :locked => true, :name => 'First Public Child', :parent_id => @language_root.id, :language => @language)
197
- Factory(:public_page, :name => 'Second Public Child', :parent_id => @language_root.id, :language => @language)
220
+ FactoryGirl.create(:public_page, :locked => true, :name => 'First Public Child', :parent_id => @language_root.id, :language => @language)
221
+ FactoryGirl.create(:public_page, :name => 'Second Public Child', :parent_id => @language_root.id, :language => @language)
198
222
  Alchemy::Page.not_locked.should have(3).pages
199
223
  end
200
224
  end
201
225
 
202
226
  context ".all_locked" do
203
227
  it "should return 1 page that is blocked by a user at the moment" do
204
- Factory(:public_page, :locked => true, :name => 'First Public Child', :parent_id => @language_root.id, :language => @language)
228
+ FactoryGirl.create(:public_page, :locked => true, :name => 'First Public Child', :parent_id => @language_root.id, :language => @language)
205
229
  Alchemy::Page.all_locked.should have(1).pages
206
230
  end
207
231
  end
208
232
 
209
233
  context ".language_roots" do
210
234
  it "should return 1 language_root" do
211
- Factory(:public_page, :name => 'First Public Child', :parent_id => @language_root.id, :language => @language)
235
+ FactoryGirl.create(:public_page, :name => 'First Public Child', :parent_id => @language_root.id, :language => @language)
212
236
  Alchemy::Page.language_roots.should have(1).pages
213
237
  end
214
238
  end
@@ -216,35 +240,35 @@ describe Alchemy::Page do
216
240
 
217
241
  context ".layoutpages" do
218
242
  it "should return 1 layoutpage" do
219
- Factory(:public_page, :layoutpage => true, :name => 'Layoutpage', :parent_id => @rootpage.id, :language => @language)
243
+ FactoryGirl.create(:public_page, :layoutpage => true, :name => 'Layoutpage', :parent_id => @rootpage.id, :language => @language)
220
244
  Alchemy::Page.layoutpages.should have(1).pages
221
245
  end
222
246
  end
223
247
 
224
248
  context ".visible" do
225
249
  it "should return 1 visible page" do
226
- Factory(:public_page, :name => 'First Public Child', :visible => true, :parent_id => @language_root.id, :language => @language)
250
+ FactoryGirl.create(:public_page, :name => 'First Public Child', :visible => true, :parent_id => @language_root.id, :language => @language)
227
251
  Alchemy::Page.visible.should have(1).pages
228
252
  end
229
253
  end
230
254
 
231
255
  context ".accessable" do
232
256
  it "should return 2 accessable pages" do
233
- Factory(:public_page, :name => 'First Public Child', :restricted => true, :parent_id => @language_root.id, :language => @language)
257
+ FactoryGirl.create(:public_page, :name => 'First Public Child', :restricted => true, :parent_id => @language_root.id, :language => @language)
234
258
  Alchemy::Page.accessable.should have(2).pages
235
259
  end
236
260
  end
237
261
 
238
262
  context ".restricted" do
239
263
  it "should return 1 restricted page" do
240
- Factory(:public_page, :name => 'First Public Child', :restricted => true, :parent_id => @language_root.id, :language => @language)
264
+ FactoryGirl.create(:public_page, :name => 'First Public Child', :restricted => true, :parent_id => @language_root.id, :language => @language)
241
265
  Alchemy::Page.restricted.should have(1).pages
242
266
  end
243
267
  end
244
268
 
245
269
  context "#unlock" do
246
270
  it "should set the locked status to false" do
247
- @page = Factory(:public_page, :locked => true)
271
+ @page = FactoryGirl.create(:public_page, :locked => true)
248
272
  @page.unlock
249
273
  @page.locked.should == false
250
274
  end
@@ -253,7 +277,7 @@ describe Alchemy::Page do
253
277
  describe "#cell_definitions" do
254
278
 
255
279
  before(:each) do
256
- @page = Factory.build(:page, :page_layout => 'foo')
280
+ @page = FactoryGirl.build(:page, :page_layout => 'foo')
257
281
  @page.stub!(:layout_description).and_return({'name' => "foo", 'cells' => ["foo_cell"]})
258
282
  @cell_descriptions = [{'name' => "foo_cell", 'elements' => ["1", "2"]}]
259
283
  Alchemy::Cell.stub!(:definitions).and_return(@cell_descriptions)
@@ -274,7 +298,7 @@ describe Alchemy::Page do
274
298
 
275
299
  context "with no elements defined that are not defined in a cell" do
276
300
  it "should not have a cell for 'other elements'" do
277
- @page = Factory.build(:page, :page_layout => 'foo')
301
+ @page = FactoryGirl.build(:page, :page_layout => 'foo')
278
302
  @page.stub!(:layout_description).and_return({'name' => "foo", 'cells' => ["foo_cell"], 'elements' => ["1", "2"]})
279
303
  @cell_descriptions = [{'name' => "foo_cell", 'elements' => ["1", "2"]}]
280
304
  Alchemy::Cell.stub!(:definitions).and_return(@cell_descriptions)
@@ -284,7 +308,7 @@ describe Alchemy::Page do
284
308
 
285
309
  context "with elements defined that are not defined in a cell" do
286
310
  it "should have a cell for 'other elements'" do
287
- @page = Factory.build(:page, :page_layout => 'foo')
311
+ @page = FactoryGirl.build(:page, :page_layout => 'foo')
288
312
  @page.stub!(:layout_description).and_return({'name' => "foo", 'cells' => ["foo_cell"], 'elements' => ["1", "2", "3"]})
289
313
  @cell_descriptions = [{'name' => "foo_cell", 'elements' => ["1", "2"]}]
290
314
  Alchemy::Cell.stub!(:definitions).and_return(@cell_descriptions)
@@ -299,8 +323,8 @@ describe Alchemy::Page do
299
323
  context "with clipboard holding pages having non unique page layout" do
300
324
 
301
325
  it "should return the pages" do
302
- page_1 = Factory(:page, :language => @language)
303
- page_2 = Factory(:page, :language => @language, :name => 'Another page')
326
+ page_1 = FactoryGirl.create(:page, :language => @language)
327
+ page_2 = FactoryGirl.create(:page, :language => @language, :name => 'Another page')
304
328
  clipboard = [
305
329
  {:id => page_1.id, :action => "copy"},
306
330
  {:id => page_2.id, :action => "copy"}
@@ -313,7 +337,7 @@ describe Alchemy::Page do
313
337
  context "with clipboard holding a page having unique page layout" do
314
338
 
315
339
  it "should not return any pages" do
316
- page_1 = Factory(:page, :language => @language, :page_layout => 'contact')
340
+ page_1 = FactoryGirl.create(:page, :language => @language, :page_layout => 'contact')
317
341
  clipboard = [
318
342
  {:id => page_1.id, :action => "copy"}
319
343
  ]
@@ -325,8 +349,8 @@ describe Alchemy::Page do
325
349
  context "with clipboard holding two pages. One having a unique page layout." do
326
350
 
327
351
  it "should return one page" do
328
- page_1 = Factory(:page, :language => @language, :page_layout => 'standard')
329
- page_2 = Factory(:page, :name => 'Another page', :language => @language, :page_layout => 'contact')
352
+ page_1 = FactoryGirl.create(:page, :language => @language, :page_layout => 'standard')
353
+ page_2 = FactoryGirl.create(:page, :name => 'Another page', :language => @language, :page_layout => 'contact')
330
354
  clipboard = [
331
355
  {:id => page_1.id, :action => "copy"},
332
356
  {:id => page_2.id, :action => "copy"}
@@ -342,8 +366,8 @@ describe Alchemy::Page do
342
366
 
343
367
  context "saving a normal content page" do
344
368
  it "should be possible to save when its urlname already exists in the scope of global pages" do
345
- @contentpage = Factory(:page, :urlname => "existing_twice")
346
- @global_with_same_urlname = Factory(:page, :urlname => "existing_twice", :layoutpage => true)
369
+ @contentpage = FactoryGirl.create(:page, :urlname => "existing_twice")
370
+ @global_with_same_urlname = FactoryGirl.create(:page, :urlname => "existing_twice", :layoutpage => true)
347
371
  @contentpage.title = "new Title"
348
372
  @contentpage.save.should == true
349
373
  end
@@ -352,7 +376,7 @@ describe Alchemy::Page do
352
376
  context "creating a normal content page" do
353
377
 
354
378
  before(:each) do
355
- @contentpage = Factory.build(:page, :parent_id => nil, :page_layout => nil)
379
+ @contentpage = FactoryGirl.build(:page, :parent_id => nil, :page_layout => nil)
356
380
  end
357
381
 
358
382
  it "should validate the page_layout" do
@@ -371,7 +395,7 @@ describe Alchemy::Page do
371
395
 
372
396
  before(:each) do
373
397
  Alchemy::Page.delete_all
374
- @rootpage = Factory.build(:page, :parent_id => nil, :page_layout => nil, :name => 'Rootpage')
398
+ @rootpage = FactoryGirl.build(:page, :parent_id => nil, :page_layout => nil, :name => 'Rootpage')
375
399
  end
376
400
 
377
401
  it "should be valid" do
@@ -384,7 +408,7 @@ describe Alchemy::Page do
384
408
  context "saving a systempage" do
385
409
 
386
410
  before(:each) do
387
- @systempage = Factory.build(:systempage)
411
+ @systempage = FactoryGirl.build(:systempage)
388
412
  end
389
413
 
390
414
  it "should not validate the page_layout" do
@@ -401,7 +425,7 @@ describe Alchemy::Page do
401
425
  context "a normal page" do
402
426
 
403
427
  before(:each) do
404
- @page = Factory.build(:page, :language_code => nil, :language => Factory(:language))
428
+ @page = FactoryGirl.build(:page, :language_code => nil, :language => FactoryGirl.create(:language))
405
429
  end
406
430
 
407
431
  it "should get the language code for language" do
@@ -418,7 +442,7 @@ describe Alchemy::Page do
418
442
 
419
443
  before(:each) do
420
444
  @page.save
421
- @child1 = Factory(:page, :name => 'Child 1', :parent_id => @page.id)
445
+ @child1 = FactoryGirl.create(:page, :name => 'Child 1', :parent_id => @page.id)
422
446
  @page.reload
423
447
  @page.restricted = true
424
448
  @page.save
@@ -436,7 +460,7 @@ describe Alchemy::Page do
436
460
  before(:each) do
437
461
  @page.save
438
462
  @page.parent.update_attributes(:restricted => true)
439
- @new_page = Factory(:page, :name => 'New Page', :parent_id => @page.id)
463
+ @new_page = FactoryGirl.create(:page, :name => 'New Page', :parent_id => @page.id)
440
464
  end
441
465
 
442
466
  it "should also be restricted" do
@@ -463,7 +487,7 @@ describe Alchemy::Page do
463
487
  context "a systempage" do
464
488
 
465
489
  before(:each) do
466
- @page = Factory(:systempage)
490
+ @page = FactoryGirl.create(:systempage)
467
491
  end
468
492
 
469
493
  it "should not get the language code for language" do
@@ -3,7 +3,7 @@ require 'spec_helper'
3
3
  describe Alchemy::User do
4
4
 
5
5
  it "should have a role" do
6
- @user = Factory.build(:user)
6
+ @user = FactoryGirl.build(:user)
7
7
  @user.save_without_session_maintenance
8
8
  @user.role.should_not be_nil
9
9
  end
@@ -29,7 +29,7 @@ describe Alchemy::PageLayout do
29
29
  end
30
30
 
31
31
  it "should not display hidden page layouts" do
32
- Alchemy::PageLayout.selectable_layouts(Factory(:language)).each { |e| e["hide"].should_not == true }
32
+ Alchemy::PageLayout.selectable_layouts(FactoryGirl.create(:language)).each { |e| e["hide"].should_not == true }
33
33
  end
34
34
 
35
35
  end
@@ -28,10 +28,10 @@ def configure
28
28
 
29
29
  # Configure capybara for integration testing
30
30
  require "capybara/rails"
31
- require 'capybara-webkit'
31
+ require 'capybara-webkit' unless ENV['CI']
32
32
  Capybara.default_driver = :rack_test
33
33
  Capybara.default_selector = :css
34
- Capybara.javascript_driver = :webkit
34
+ Capybara.javascript_driver = :webkit unless ENV['CI']
35
35
 
36
36
  # Load support files
37
37
  Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
@@ -13,7 +13,7 @@ module Alchemy
13
13
  # === Example:
14
14
  #
15
15
  # before(:all) do
16
- # Factory.build(:admin_user).save_without_session_maintenance
16
+ # FactoryGirl.build(:admin_user).save_without_session_maintenance
17
17
  # end
18
18
  #
19
19
  def login_into_alchemy
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alchemy_cms
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.rc6
4
+ version: 2.2.rc7
5
5
  prerelease: 4
6
6
  platform: ruby
7
7
  authors:
@@ -12,11 +12,11 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2012-04-13 00:00:00.000000000 Z
15
+ date: 2012-04-27 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: rails
19
- requirement: &70293532196300 !ruby/object:Gem::Requirement
19
+ requirement: &70334678949740 !ruby/object:Gem::Requirement
20
20
  none: false
21
21
  requirements:
22
22
  - - ~>
@@ -24,10 +24,10 @@ dependencies:
24
24
  version: 3.2.1
25
25
  type: :runtime
26
26
  prerelease: false
27
- version_requirements: *70293532196300
27
+ version_requirements: *70334678949740
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: authlogic
30
- requirement: &70293532195080 !ruby/object:Gem::Requirement
30
+ requirement: &70334678947320 !ruby/object:Gem::Requirement
31
31
  none: false
32
32
  requirements:
33
33
  - - ! '>='
@@ -35,10 +35,10 @@ dependencies:
35
35
  version: '0'
36
36
  type: :runtime
37
37
  prerelease: false
38
- version_requirements: *70293532195080
38
+ version_requirements: *70334678947320
39
39
  - !ruby/object:Gem::Dependency
40
40
  name: awesome_nested_set
41
- requirement: &70293532238980 !ruby/object:Gem::Requirement
41
+ requirement: &70334678945520 !ruby/object:Gem::Requirement
42
42
  none: false
43
43
  requirements:
44
44
  - - ~>
@@ -46,10 +46,10 @@ dependencies:
46
46
  version: '2.0'
47
47
  type: :runtime
48
48
  prerelease: false
49
- version_requirements: *70293532238980
49
+ version_requirements: *70334678945520
50
50
  - !ruby/object:Gem::Dependency
51
51
  name: declarative_authorization
52
- requirement: &70293528320600 !ruby/object:Gem::Requirement
52
+ requirement: &70334678944660 !ruby/object:Gem::Requirement
53
53
  none: false
54
54
  requirements:
55
55
  - - ~>
@@ -57,10 +57,10 @@ dependencies:
57
57
  version: 0.5.4
58
58
  type: :runtime
59
59
  prerelease: false
60
- version_requirements: *70293528320600
60
+ version_requirements: *70334678944660
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: tvdeyen-fleximage
63
- requirement: &70293528318900 !ruby/object:Gem::Requirement
63
+ requirement: &70334678964220 !ruby/object:Gem::Requirement
64
64
  none: false
65
65
  requirements:
66
66
  - - ~>
@@ -68,10 +68,10 @@ dependencies:
68
68
  version: 1.2.0
69
69
  type: :runtime
70
70
  prerelease: false
71
- version_requirements: *70293528318900
71
+ version_requirements: *70334678964220
72
72
  - !ruby/object:Gem::Dependency
73
73
  name: kaminari
74
- requirement: &70293528317760 !ruby/object:Gem::Requirement
74
+ requirement: &70334678963460 !ruby/object:Gem::Requirement
75
75
  none: false
76
76
  requirements:
77
77
  - - ~>
@@ -79,10 +79,10 @@ dependencies:
79
79
  version: 0.13.0
80
80
  type: :runtime
81
81
  prerelease: false
82
- version_requirements: *70293528317760
82
+ version_requirements: *70334678963460
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: acts_as_ferret
85
- requirement: &70293528292680 !ruby/object:Gem::Requirement
85
+ requirement: &70334678962840 !ruby/object:Gem::Requirement
86
86
  none: false
87
87
  requirements:
88
88
  - - ~>
@@ -90,10 +90,10 @@ dependencies:
90
90
  version: '0.5'
91
91
  type: :runtime
92
92
  prerelease: false
93
- version_requirements: *70293528292680
93
+ version_requirements: *70334678962840
94
94
  - !ruby/object:Gem::Dependency
95
95
  name: acts_as_list
96
- requirement: &70293527994060 !ruby/object:Gem::Requirement
96
+ requirement: &70334678961900 !ruby/object:Gem::Requirement
97
97
  none: false
98
98
  requirements:
99
99
  - - ~>
@@ -101,10 +101,10 @@ dependencies:
101
101
  version: '0.1'
102
102
  type: :runtime
103
103
  prerelease: false
104
- version_requirements: *70293527994060
104
+ version_requirements: *70334678961900
105
105
  - !ruby/object:Gem::Dependency
106
106
  name: magiclabs-userstamp
107
- requirement: &70293528067980 !ruby/object:Gem::Requirement
107
+ requirement: &70334678960760 !ruby/object:Gem::Requirement
108
108
  none: false
109
109
  requirements:
110
110
  - - ~>
@@ -112,10 +112,10 @@ dependencies:
112
112
  version: 2.0.2
113
113
  type: :runtime
114
114
  prerelease: false
115
- version_requirements: *70293528067980
115
+ version_requirements: *70334678960760
116
116
  - !ruby/object:Gem::Dependency
117
117
  name: dynamic_form
118
- requirement: &70293528110100 !ruby/object:Gem::Requirement
118
+ requirement: &70334678958880 !ruby/object:Gem::Requirement
119
119
  none: false
120
120
  requirements:
121
121
  - - ~>
@@ -123,10 +123,10 @@ dependencies:
123
123
  version: '1.1'
124
124
  type: :runtime
125
125
  prerelease: false
126
- version_requirements: *70293528110100
126
+ version_requirements: *70334678958880
127
127
  - !ruby/object:Gem::Dependency
128
128
  name: jquery-rails
129
- requirement: &70293532268800 !ruby/object:Gem::Requirement
129
+ requirement: &70334678976780 !ruby/object:Gem::Requirement
130
130
  none: false
131
131
  requirements:
132
132
  - - ~>
@@ -134,10 +134,10 @@ dependencies:
134
134
  version: 2.0.0
135
135
  type: :runtime
136
136
  prerelease: false
137
- version_requirements: *70293532268800
137
+ version_requirements: *70334678976780
138
138
  - !ruby/object:Gem::Dependency
139
139
  name: attachment_magic
140
- requirement: &70293532339160 !ruby/object:Gem::Requirement
140
+ requirement: &70334678974800 !ruby/object:Gem::Requirement
141
141
  none: false
142
142
  requirements:
143
143
  - - ~>
@@ -145,10 +145,10 @@ dependencies:
145
145
  version: 0.2.1
146
146
  type: :runtime
147
147
  prerelease: false
148
- version_requirements: *70293532339160
148
+ version_requirements: *70334678974800
149
149
  - !ruby/object:Gem::Dependency
150
150
  name: sass-rails
151
- requirement: &70293532445540 !ruby/object:Gem::Requirement
151
+ requirement: &70334678973460 !ruby/object:Gem::Requirement
152
152
  none: false
153
153
  requirements:
154
154
  - - ~>
@@ -156,10 +156,10 @@ dependencies:
156
156
  version: 3.2.3
157
157
  type: :runtime
158
158
  prerelease: false
159
- version_requirements: *70293532445540
159
+ version_requirements: *70334678973460
160
160
  - !ruby/object:Gem::Dependency
161
161
  name: rspec-rails
162
- requirement: &70293532480560 !ruby/object:Gem::Requirement
162
+ requirement: &70334678972160 !ruby/object:Gem::Requirement
163
163
  none: false
164
164
  requirements:
165
165
  - - ~>
@@ -167,10 +167,10 @@ dependencies:
167
167
  version: '2.8'
168
168
  type: :development
169
169
  prerelease: false
170
- version_requirements: *70293532480560
170
+ version_requirements: *70334678972160
171
171
  - !ruby/object:Gem::Dependency
172
172
  name: sqlite3
173
- requirement: &70293532475840 !ruby/object:Gem::Requirement
173
+ requirement: &70334678971200 !ruby/object:Gem::Requirement
174
174
  none: false
175
175
  requirements:
176
176
  - - ! '>='
@@ -178,10 +178,10 @@ dependencies:
178
178
  version: '0'
179
179
  type: :development
180
180
  prerelease: false
181
- version_requirements: *70293532475840
181
+ version_requirements: *70334678971200
182
182
  - !ruby/object:Gem::Dependency
183
183
  name: jasminerice
184
- requirement: &70293532496700 !ruby/object:Gem::Requirement
184
+ requirement: &70334678986400 !ruby/object:Gem::Requirement
185
185
  none: false
186
186
  requirements:
187
187
  - - ! '>='
@@ -189,7 +189,7 @@ dependencies:
189
189
  version: '0'
190
190
  type: :development
191
191
  prerelease: false
192
- version_requirements: *70293532496700
192
+ version_requirements: *70334678986400
193
193
  description: Alchemy is a Rails 3 CMS with a flexible content storing architecture.
194
194
  email:
195
195
  - alchemy@magiclabs.de
@@ -710,6 +710,7 @@ files:
710
710
  - spec/helpers/pages_helper_spec.rb
711
711
  - spec/helpers/pictures_helper_spec.rb
712
712
  - spec/helpers/url_helpers_spec.rb
713
+ - spec/integration/admin/modules_integration_spec.rb
713
714
  - spec/integration/admin/pages_controller_spec.rb
714
715
  - spec/integration/admin/resources_integration_spec.rb
715
716
  - spec/integration/navigation_spec.rb
@@ -926,6 +927,7 @@ test_files:
926
927
  - spec/helpers/pages_helper_spec.rb
927
928
  - spec/helpers/pictures_helper_spec.rb
928
929
  - spec/helpers/url_helpers_spec.rb
930
+ - spec/integration/admin/modules_integration_spec.rb
929
931
  - spec/integration/admin/pages_controller_spec.rb
930
932
  - spec/integration/admin/resources_integration_spec.rb
931
933
  - spec/integration/navigation_spec.rb