alchemy_cms 2.2.rc6 → 2.2.rc7
Sign up to get free protection for your applications and to get access to all the features.
- data/.rspec +0 -1
- data/.travis.yml +5 -4
- data/Gemfile +7 -8
- data/app/controllers/alchemy/admin/pages_controller.rb +1 -2
- data/app/controllers/alchemy/admin/resources_controller.rb +1 -1
- data/app/controllers/alchemy/base_controller.rb +2 -1
- data/app/controllers/alchemy/pages_controller.rb +5 -5
- data/app/helpers/alchemy/admin/base_helper.rb +2 -0
- data/app/models/alchemy/attachment.rb +2 -1
- data/app/models/alchemy/element.rb +12 -16
- data/app/models/alchemy/page.rb +8 -4
- data/config/locales/alchemy.en.yml +1 -1
- data/db/migrate/20101216151419_add_language_id_to_pages.rb +11 -3
- data/lib/alchemy/version.rb +1 -1
- data/lib/alchemy_cms.rb +2 -2
- data/spec/controllers/admin/clipboard_controller_spec.rb +12 -12
- data/spec/controllers/admin/contents_controller_spec.rb +3 -3
- data/spec/controllers/admin/elements_controller_spec.rb +1 -1
- data/spec/controllers/admin/languages_controller_spec.rb +1 -1
- data/spec/controllers/admin/pages_controller_spec.rb +33 -1
- data/spec/controllers/admin/trash_controller_spec.rb +3 -3
- data/spec/controllers/base_controller_spec.rb +3 -3
- data/spec/controllers/pages_controller_spec.rb +6 -6
- data/spec/dummy/config/database.yml +24 -18
- data/spec/dummy/db/schema.rb +1 -1
- data/spec/factories.rb +5 -5
- data/spec/helpers/admin/contents_helper_spec.rb +1 -1
- data/spec/helpers/admin/elements_helper_spec.rb +2 -2
- data/spec/helpers/admin/essences_helper_spec.rb +1 -1
- data/spec/helpers/elements_helper_spec.rb +35 -35
- data/spec/helpers/essences_helper_spec.rb +1 -1
- data/spec/helpers/pages_helper_spec.rb +27 -27
- data/spec/integration/admin/modules_integration_spec.rb +30 -0
- data/spec/integration/admin/pages_controller_spec.rb +7 -7
- data/spec/integration/pages_controller_spec.rb +38 -24
- data/spec/integration/security_spec.rb +1 -1
- data/spec/models/content_spec.rb +5 -5
- data/spec/models/element_spec.rb +59 -14
- data/spec/models/language_spec.rb +9 -9
- data/spec/models/page_spec.rb +66 -42
- data/spec/models/user_spec.rb +1 -1
- data/spec/page_layout_spec.rb +1 -1
- data/spec/spec_helper.rb +2 -2
- data/spec/support/alchemy/specs_helpers.rb +1 -1
- metadata +36 -34
@@ -6,13 +6,13 @@ describe Alchemy::PagesController do
|
|
6
6
|
|
7
7
|
before(:each) do
|
8
8
|
@default_language = Alchemy::Language.get_default
|
9
|
-
@default_language_root =
|
9
|
+
@default_language_root = FactoryGirl.create(:language_root_page, :language => @default_language, :name => 'Home', :public => true)
|
10
10
|
end
|
11
11
|
|
12
12
|
context "requested for a page containing a feed" do
|
13
13
|
|
14
14
|
before(:each) do
|
15
|
-
@page =
|
15
|
+
@page = FactoryGirl.create(:public_page, :parent_id => @default_language_root.id, :page_layout => 'news', :name => 'News', :language => @default_language)
|
16
16
|
end
|
17
17
|
|
18
18
|
it "should render a rss feed" do
|
@@ -102,9 +102,9 @@ describe Alchemy::PagesController do
|
|
102
102
|
describe "url nesting" do
|
103
103
|
|
104
104
|
before(:each) do
|
105
|
-
@catalog =
|
106
|
-
@products =
|
107
|
-
@product =
|
105
|
+
@catalog = FactoryGirl.create(:public_page, :name => "Catalog", :parent_id => @default_language_root.id, :language => @default_language)
|
106
|
+
@products = FactoryGirl.create(:public_page, :name => "Products", :parent_id => @catalog.id, :language => @default_language)
|
107
|
+
@product = FactoryGirl.create(:public_page, :name => "Screwdriver", :parent_id => @products.id, :language => @default_language)
|
108
108
|
@product.elements.find_by_name('article').contents.essence_texts.first.essence.update_attribute(:body, 'screwdriver')
|
109
109
|
controller.stub!(:configuration) { |arg| arg == :url_nesting ? true : false }
|
110
110
|
end
|
@@ -133,7 +133,7 @@ describe Alchemy::PagesController do
|
|
133
133
|
|
134
134
|
context "when a non-existent page is requested" do
|
135
135
|
it "should rescue a RoutingError with rendering a 404 page." do
|
136
|
-
|
136
|
+
FactoryGirl.create(:admin_user) # otherwise we are redirected to create_user
|
137
137
|
get :show, {:urlname => 'doesntexist'}
|
138
138
|
response.status.should == 404
|
139
139
|
response.body.should have_content('The page you were looking for doesn\'t exist')
|
@@ -1,25 +1,31 @@
|
|
1
|
-
|
2
|
-
# gem install sqlite3
|
3
|
-
#
|
4
|
-
# Ensure the SQLite 3 gem is defined in your Gemfile
|
5
|
-
# gem 'sqlite3'
|
6
|
-
development:
|
1
|
+
sqlite: &sqlite
|
7
2
|
adapter: sqlite3
|
8
|
-
database: db
|
3
|
+
database: db/<%= Rails.env %>.sqlite3
|
4
|
+
|
5
|
+
mysql: &mysql
|
6
|
+
adapter: mysql2
|
7
|
+
username: root
|
8
|
+
password:
|
9
|
+
database: alchemy_cms_dummy_<%= Rails.env %>
|
10
|
+
|
11
|
+
postgresql: &postgresql
|
12
|
+
adapter: postgresql
|
13
|
+
username: postgres
|
14
|
+
password:
|
15
|
+
database: alchemy_cms_dummy_<%= Rails.env %>
|
16
|
+
min_messages: ERROR
|
17
|
+
|
18
|
+
defaults: &defaults
|
9
19
|
pool: 5
|
10
20
|
timeout: 5000
|
21
|
+
host: localhost
|
22
|
+
<<: *<%= ENV['DB'] || "sqlite" %>
|
23
|
+
|
24
|
+
development:
|
25
|
+
<<: *defaults
|
11
26
|
|
12
|
-
# Warning: The database defined as "test" will be erased and
|
13
|
-
# re-generated from your development database when you run "rake".
|
14
|
-
# Do not set this db to the same as development or production.
|
15
27
|
test:
|
16
|
-
|
17
|
-
database: db/test.sqlite3
|
18
|
-
pool: 5
|
19
|
-
timeout: 5000
|
28
|
+
<<: *defaults
|
20
29
|
|
21
30
|
production:
|
22
|
-
|
23
|
-
database: db/production.sqlite3
|
24
|
-
pool: 5
|
25
|
-
timeout: 5000
|
31
|
+
<<: *defaults
|
data/spec/dummy/db/schema.rb
CHANGED
@@ -200,7 +200,7 @@ ActiveRecord::Schema.define(:version => 20120302040145) do
|
|
200
200
|
t.string "urlname"
|
201
201
|
t.string "title"
|
202
202
|
t.string "language_code"
|
203
|
-
t.boolean "language_root"
|
203
|
+
t.boolean "language_root"
|
204
204
|
t.string "page_layout"
|
205
205
|
t.text "meta_keywords"
|
206
206
|
t.text "meta_description"
|
data/spec/factories.rb
CHANGED
@@ -39,9 +39,9 @@ FactoryGirl.define do
|
|
39
39
|
|
40
40
|
factory :page, :class => 'Alchemy::Page' do
|
41
41
|
|
42
|
-
language { Alchemy::Language.find_by_language_code('kl') ||
|
43
|
-
name "A Page"
|
44
|
-
parent_id { (Alchemy::Page.find_by_language_root(true) ||
|
42
|
+
language { Alchemy::Language.find_by_language_code('kl') || FactoryGirl.create(:language) }
|
43
|
+
sequence(:name) { |n| "A Page #{n}" }
|
44
|
+
parent_id { (Alchemy::Page.find_by_language_root(true) || FactoryGirl.create(:language_root_page)).id }
|
45
45
|
page_layout "standard"
|
46
46
|
|
47
47
|
factory :language_root_page do
|
@@ -53,7 +53,7 @@ FactoryGirl.define do
|
|
53
53
|
end
|
54
54
|
|
55
55
|
factory :public_page do
|
56
|
-
name "A Public Page"
|
56
|
+
sequence(:name) { |n| "A Public Page #{n}" }
|
57
57
|
public true
|
58
58
|
end
|
59
59
|
|
@@ -68,7 +68,7 @@ FactoryGirl.define do
|
|
68
68
|
end
|
69
69
|
|
70
70
|
factory :cell, :class => 'Alchemy::Cell' do
|
71
|
-
page { Alchemy::Page.find_by_language_root(true) ||
|
71
|
+
page { Alchemy::Page.find_by_language_root(true) || FactoryGirl.create(:language_root_page) }
|
72
72
|
name "A Cell"
|
73
73
|
end
|
74
74
|
|
@@ -5,8 +5,8 @@ include Alchemy::BaseHelper
|
|
5
5
|
describe Alchemy::Admin::ElementsHelper do
|
6
6
|
|
7
7
|
before(:each) do
|
8
|
-
@page =
|
9
|
-
@element =
|
8
|
+
@page = FactoryGirl.create(:public_page)
|
9
|
+
@element = FactoryGirl.create(:element, :page => @page)
|
10
10
|
end
|
11
11
|
|
12
12
|
it "should render an element editor partial" do
|
@@ -5,8 +5,8 @@ include Alchemy::BaseHelper
|
|
5
5
|
describe Alchemy::ElementsHelper do
|
6
6
|
|
7
7
|
before(:each) do
|
8
|
-
@page =
|
9
|
-
@element =
|
8
|
+
@page = FactoryGirl.create(:public_page)
|
9
|
+
@element = FactoryGirl.create(:element, :page => @page)
|
10
10
|
session[:language_id] = @page.language_id
|
11
11
|
end
|
12
12
|
|
@@ -26,53 +26,53 @@ describe Alchemy::ElementsHelper do
|
|
26
26
|
|
27
27
|
context "with no certain option given" do
|
28
28
|
it "should render all elements from @page" do
|
29
|
-
@another_element =
|
29
|
+
@another_element = FactoryGirl.create(:element, :page => @page)
|
30
30
|
# m for regex means line breaks are like every character
|
31
31
|
helper.render_elements.should match(/id="#{@element.name}_#{@element.id.to_s}.*id="#{@another_element.name}_#{@another_element.id.to_s}"/m)
|
32
32
|
end
|
33
33
|
|
34
34
|
it "should not render elements that are in a cell" do
|
35
|
-
cell =
|
36
|
-
@another_element =
|
35
|
+
cell = FactoryGirl.create(:cell)
|
36
|
+
@another_element = FactoryGirl.create(:element, :page => @page, :cell_id => cell.id)
|
37
37
|
helper.render_elements.should_not match(/id="#{@another_element.name}_#{@another_element.id}"/)
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
41
41
|
context "with except option" do
|
42
42
|
it "should render all elements except a certain one" do
|
43
|
-
@another_element =
|
43
|
+
@another_element = FactoryGirl.create(:element, :page => @page)
|
44
44
|
helper.render_elements(:except => @another_element.name).should_not match(/id="#{@another_element.name}_\d*"/)
|
45
45
|
end
|
46
46
|
end
|
47
47
|
|
48
48
|
context "with only option" do
|
49
49
|
it "should render one certain element" do
|
50
|
-
@another_element =
|
50
|
+
@another_element = FactoryGirl.create(:element, :name => 'headline', :page => @page)
|
51
51
|
helper.render_elements(:only => @element.name).should_not match(/id="#{@another_element.name}_\d*"/)
|
52
52
|
end
|
53
53
|
end
|
54
54
|
|
55
55
|
context "with from_page option" do
|
56
56
|
it "should render all elements from a certain page" do
|
57
|
-
@another_page =
|
58
|
-
@element_on_other_page =
|
57
|
+
@another_page = FactoryGirl.create(:public_page)
|
58
|
+
@element_on_other_page = FactoryGirl.create(:element, :name => 'headline', :page => @another_page)
|
59
59
|
helper.render_elements(:from_page => @another_page).should match(/id="#{@element_on_other_page.name}_\d*"/)
|
60
60
|
end
|
61
61
|
|
62
62
|
it "should not render any elements in a cell from the given page" do
|
63
|
-
@another_page =
|
64
|
-
@cell =
|
65
|
-
@element_not_in_cell =
|
66
|
-
@element_in_cell =
|
63
|
+
@another_page = FactoryGirl.create(:public_page)
|
64
|
+
@cell = FactoryGirl.create(:cell, :name => "Celltest", :page => @another_page)
|
65
|
+
@element_not_in_cell = FactoryGirl.create(:element, :name => 'headline', :page => @another_page)
|
66
|
+
@element_in_cell = FactoryGirl.create(:element, :name => 'article', :cell => @cell, :page => @another_page)
|
67
67
|
helper.render_elements(:from_page => @another_page).should_not match(/id="#{@element_in_cell.name}_#{@element_in_cell.id}*"/)
|
68
68
|
end
|
69
69
|
|
70
70
|
context "and from_cell option" do
|
71
71
|
it "should render all elements from the page's cell" do
|
72
|
-
@another_page =
|
73
|
-
@cell =
|
74
|
-
@element_not_in_cell =
|
75
|
-
@element_in_cell =
|
72
|
+
@another_page = FactoryGirl.create(:public_page)
|
73
|
+
@cell = FactoryGirl.create(:cell, :name => "Celltest", :page => @another_page)
|
74
|
+
@element_not_in_cell = FactoryGirl.create(:element, :name => 'headline', :page => @another_page)
|
75
|
+
@element_in_cell = FactoryGirl.create(:element, :name => 'article', :cell => @cell, :page => @another_page)
|
76
76
|
helper.render_elements(:from_page => @another_page, :from_cell => "Celltest").should match(/id="#{@element_in_cell.name}_#{@element_in_cell.id}*"/)
|
77
77
|
end
|
78
78
|
end
|
@@ -81,25 +81,25 @@ describe Alchemy::ElementsHelper do
|
|
81
81
|
|
82
82
|
context "with from_cell option" do
|
83
83
|
it "should render all elements from a certain cell" do
|
84
|
-
cell =
|
85
|
-
@another_element =
|
84
|
+
cell = FactoryGirl.create(:cell)
|
85
|
+
@another_element = FactoryGirl.create(:element, :page => @page, :cell_id => cell.id)
|
86
86
|
helper.render_elements(:from_cell => cell).should match(/id="#{@another_element.name}_#{@another_element.id}"/)
|
87
87
|
end
|
88
88
|
|
89
89
|
context "with from_cell and only option" do
|
90
90
|
it "should render certain elements from a certain cell" do
|
91
|
-
cell =
|
92
|
-
@another_element =
|
93
|
-
@another_element2 =
|
91
|
+
cell = FactoryGirl.create(:cell)
|
92
|
+
@another_element = FactoryGirl.create(:element, :page => @page, :cell_id => cell.id)
|
93
|
+
@another_element2 = FactoryGirl.create(:element, :page => @page)
|
94
94
|
helper.render_elements(:from_cell => cell, :only => @another_element.name).should_not match(/id="#{@another_element2.name}_#{@another_element2.id}"/)
|
95
95
|
end
|
96
96
|
end
|
97
97
|
|
98
98
|
context "with from_cell and except option" do
|
99
99
|
it "should render all elements except certain ones from a certain cell" do
|
100
|
-
cell =
|
101
|
-
@another_element =
|
102
|
-
@another_element2 =
|
100
|
+
cell = FactoryGirl.create(:cell)
|
101
|
+
@another_element = FactoryGirl.create(:element, :page => @page, :cell_id => cell.id)
|
102
|
+
@another_element2 = FactoryGirl.create(:element, :page => @page, :cell_id => cell.id)
|
103
103
|
helper.render_elements(:from_cell => cell, :except => @another_element.name).should_not match(/id="#{@another_element.name}_#{@another_element.id}"/)
|
104
104
|
end
|
105
105
|
end
|
@@ -109,9 +109,9 @@ describe Alchemy::ElementsHelper do
|
|
109
109
|
context "with count option" do
|
110
110
|
it "should render just one element because of the count option" do
|
111
111
|
@page.elements.delete_all
|
112
|
-
@another_element_1 =
|
113
|
-
@another_element_2 =
|
114
|
-
@another_element_3 =
|
112
|
+
@another_element_1 = FactoryGirl.create(:element, :page => @page)
|
113
|
+
@another_element_2 = FactoryGirl.create(:element, :page => @page)
|
114
|
+
@another_element_3 = FactoryGirl.create(:element, :page => @page)
|
115
115
|
helper.render_elements(:count => 1).should match(/id="#{@another_element_1.name}_#{@another_element_1.id}"/)
|
116
116
|
end
|
117
117
|
end
|
@@ -119,10 +119,10 @@ describe Alchemy::ElementsHelper do
|
|
119
119
|
context "with offset option" do
|
120
120
|
it "should render all elements beginning with the second." do
|
121
121
|
@page.elements.delete_all
|
122
|
-
@another_page =
|
123
|
-
@another_element_1 =
|
124
|
-
@another_element_2 =
|
125
|
-
@another_element_3 =
|
122
|
+
@another_page = FactoryGirl.create(:public_page)
|
123
|
+
@another_element_1 = FactoryGirl.create(:element, :page => @page)
|
124
|
+
@another_element_2 = FactoryGirl.create(:element, :page => @page)
|
125
|
+
@another_element_3 = FactoryGirl.create(:element, :page => @page)
|
126
126
|
helper.render_elements(:offset => 1).should_not match(/id="#{@another_element_1.name}_#{@another_element_1.id}"/)
|
127
127
|
end
|
128
128
|
end
|
@@ -130,7 +130,7 @@ describe Alchemy::ElementsHelper do
|
|
130
130
|
context "with option fallback" do
|
131
131
|
it "should render the fallback element, when no element with the given name is found" do
|
132
132
|
@page.elements.delete_all
|
133
|
-
@another_element_1 =
|
133
|
+
@another_element_1 = FactoryGirl.create(:element, :page => @page)
|
134
134
|
helper.render_elements(:fallback => {:for => 'foo', :with => @another_element_1.name, :from => @page.page_layout}).should match(/id="#{@another_element_1.name}_#{@another_element_1.id}"/)
|
135
135
|
end
|
136
136
|
end
|
@@ -139,8 +139,8 @@ describe Alchemy::ElementsHelper do
|
|
139
139
|
|
140
140
|
describe "#render_cell_elements" do
|
141
141
|
it "should render elements for a cell" do
|
142
|
-
cell =
|
143
|
-
@element_in_cell =
|
142
|
+
cell = FactoryGirl.create(:cell)
|
143
|
+
@element_in_cell = FactoryGirl.create(:element, :cell_id => cell.id)
|
144
144
|
helper.stub(:configuration).and_return(true)
|
145
145
|
helper.render_cell_elements(cell).should match(/id="#{@element_in_cell.name}_#{@element_in_cell.id}"/)
|
146
146
|
end
|
@@ -9,7 +9,7 @@ describe Alchemy::PagesHelper do
|
|
9
9
|
end
|
10
10
|
|
11
11
|
it "should render the current page layout" do
|
12
|
-
@page =
|
12
|
+
@page = FactoryGirl.create(:public_page)
|
13
13
|
render_page_layout.should have_selector('div#content')
|
14
14
|
end
|
15
15
|
|
@@ -17,8 +17,8 @@ describe Alchemy::PagesHelper do
|
|
17
17
|
|
18
18
|
before(:each) do
|
19
19
|
@language = Alchemy::Language.get_default
|
20
|
-
@root_page =
|
21
|
-
@page =
|
20
|
+
@root_page = FactoryGirl.create(:language_root_page, :language => @language, :name => 'Home')
|
21
|
+
@page = FactoryGirl.create(:public_page, :language => @language, :parent_id => @root_page.id, :visible => true)
|
22
22
|
end
|
23
23
|
|
24
24
|
context "not in multi_language mode" do
|
@@ -28,19 +28,19 @@ describe Alchemy::PagesHelper do
|
|
28
28
|
end
|
29
29
|
|
30
30
|
it "should render the page navigation" do
|
31
|
-
helper.render_navigation.should have_selector(
|
31
|
+
helper.render_navigation.should have_selector("ul.navigation_level_1 li.#{@page.urlname}.active.last a.active[href=\"/alchemy/#{@page.urlname}\"]")
|
32
32
|
end
|
33
33
|
|
34
34
|
context "with enabled url nesting" do
|
35
35
|
|
36
36
|
before(:each) do
|
37
37
|
helper.stub!(:configuration).and_return(true)
|
38
|
-
@level2 =
|
39
|
-
@
|
38
|
+
@level2 = FactoryGirl.create(:public_page, :parent_id => @page.id, :language => @language, :visible => true)
|
39
|
+
@level3 = FactoryGirl.create(:public_page, :parent_id => @level2.id, :language => @language, :visible => true)
|
40
40
|
end
|
41
41
|
|
42
42
|
it "should render nested page links" do
|
43
|
-
helper.render_navigation(:all_sub_menues => true).should have_selector(
|
43
|
+
helper.render_navigation(:all_sub_menues => true).should have_selector("ul li a[href=\"/alchemy/#{@page.urlname}/#{@level2.urlname}/#{@level3.urlname}\"]")
|
44
44
|
end
|
45
45
|
|
46
46
|
end
|
@@ -53,11 +53,11 @@ describe Alchemy::PagesHelper do
|
|
53
53
|
|
54
54
|
before(:each) do
|
55
55
|
@language = Alchemy::Language.get_default
|
56
|
-
@language_root =
|
57
|
-
@level_1 =
|
58
|
-
@level_2 =
|
59
|
-
@level_3 =
|
60
|
-
@level_4 =
|
56
|
+
@language_root = FactoryGirl.create(:language_root_page, :language => @language, :name => 'Intro')
|
57
|
+
@level_1 = FactoryGirl.create(:public_page, :language => @language, :parent_id => @language_root.id, :visible => true, :name => 'Level 1')
|
58
|
+
@level_2 = FactoryGirl.create(:public_page, :language => @language, :parent_id => @level_1.id, :visible => true, :name => 'Level 2')
|
59
|
+
@level_3 = FactoryGirl.create(:public_page, :language => @language, :parent_id => @level_2.id, :visible => true, :name => 'Level 3')
|
60
|
+
@level_4 = FactoryGirl.create(:public_page, :language => @language, :parent_id => @level_3.id, :visible => true, :name => 'Level 4')
|
61
61
|
helper.stub(:multi_language?).and_return(false)
|
62
62
|
end
|
63
63
|
|
@@ -327,7 +327,7 @@ describe Alchemy::PagesHelper do
|
|
327
327
|
|
328
328
|
before :each do
|
329
329
|
@default_language = Alchemy::Language.get_default
|
330
|
-
@klingonian =
|
330
|
+
@klingonian = FactoryGirl.create(:language)
|
331
331
|
# simulates link_to_public_child = true
|
332
332
|
helper.stub(:multi_language?).and_return(true)
|
333
333
|
helper.stub(:configuration) { |arg| arg == :redirect_to_public_child ? true : false }
|
@@ -340,8 +340,8 @@ describe Alchemy::PagesHelper do
|
|
340
340
|
context "with two public languages and two language_roots" do
|
341
341
|
|
342
342
|
before :each do
|
343
|
-
@default_language_root =
|
344
|
-
@klingonian_language_root =
|
343
|
+
@default_language_root = FactoryGirl.create(:language_root_page, :language => @default_language, :name => 'Default Language Root')
|
344
|
+
@klingonian_language_root = FactoryGirl.create(:language_root_page)
|
345
345
|
end
|
346
346
|
|
347
347
|
context "and config redirect_to_public_child is set to TRUE" do
|
@@ -353,8 +353,8 @@ describe Alchemy::PagesHelper do
|
|
353
353
|
|
354
354
|
it "should return nil if only one language_root is public and both have none public children" do
|
355
355
|
@klingonian_language_root.update_attributes(:public => false)
|
356
|
-
@default_first_public_child =
|
357
|
-
@klingonian_first_public_child =
|
356
|
+
@default_first_public_child = FactoryGirl.create(:page, :language => @default_language, :parent_id => @default_language_root.id, :public => false, :name => "child1")
|
357
|
+
@klingonian_first_public_child = FactoryGirl.create(:page, :language => @klingonian, :parent_id => @klingonian_language_root.id, :public => false, :name => "child1")
|
358
358
|
helper.language_switcher.should == nil
|
359
359
|
end
|
360
360
|
|
@@ -364,24 +364,24 @@ describe Alchemy::PagesHelper do
|
|
364
364
|
|
365
365
|
it "should render two links when having just one public language_root but a public children in both language_roots" do
|
366
366
|
@klingonian_language_root.update_attributes(:public => false)
|
367
|
-
@default_first_public_child =
|
368
|
-
@klingonian_first_public_child =
|
367
|
+
@default_first_public_child = FactoryGirl.create(:page, :language => @default_language, :parent_id => @default_language_root.id, :public => true, :name => "child1")
|
368
|
+
@klingonian_first_public_child = FactoryGirl.create(:page, :language => @klingonian, :parent_id => @klingonian_language_root.id, :public => true, :name => "child1")
|
369
369
|
helper.language_switcher.should have_selector('a', :count => 2)
|
370
370
|
end
|
371
371
|
|
372
372
|
it "should render two links when having two not public language_roots but a public children in both" do
|
373
373
|
@default_language_root.update_attributes(:public => false)
|
374
374
|
@klingonian_language_root.update_attributes(:public => false)
|
375
|
-
@default_first_public_child =
|
376
|
-
@klingonian_first_public_child =
|
375
|
+
@default_first_public_child = FactoryGirl.create(:page, :language => @default_language, :parent_id => @default_language_root.id, :public => true, :name => "child1")
|
376
|
+
@klingonian_first_public_child = FactoryGirl.create(:page, :language => @klingonian, :parent_id => @klingonian_language_root.id, :public => true, :name => "child1")
|
377
377
|
helper.language_switcher.should have_selector('a', :count => 2)
|
378
378
|
end
|
379
379
|
|
380
380
|
it "should return nil when having two not public language_roots and a public children in only one of them" do
|
381
381
|
@default_language_root.update_attributes(:public => false)
|
382
382
|
@klingonian_language_root.update_attributes(:public => false)
|
383
|
-
@default_first_public_child =
|
384
|
-
@klingonian_first_public_child =
|
383
|
+
@default_first_public_child = FactoryGirl.create(:page, :language => @default_language, :parent_id => @default_language_root.id, :public => false, :name => "child1")
|
384
|
+
@klingonian_first_public_child = FactoryGirl.create(:page, :language => @klingonian, :parent_id => @klingonian_language_root.id, :public => true, :name => "child1")
|
385
385
|
helper.language_switcher.should == nil
|
386
386
|
end
|
387
387
|
|
@@ -400,16 +400,16 @@ describe Alchemy::PagesHelper do
|
|
400
400
|
|
401
401
|
it "should render nil when having just one public language_root but a public children in both language_roots" do
|
402
402
|
@klingonian_language_root.update_attributes(:public => false)
|
403
|
-
@default_first_public_child =
|
404
|
-
@klingonian_first_public_child =
|
403
|
+
@default_first_public_child = FactoryGirl.create(:page, :language => @default_language, :parent_id => @default_language_root.id, :public => true, :name => "child1")
|
404
|
+
@klingonian_first_public_child = FactoryGirl.create(:page, :language => @klingonian, :parent_id => @klingonian_language_root.id, :public => true, :name => "child1")
|
405
405
|
helper.language_switcher.should == nil
|
406
406
|
end
|
407
407
|
|
408
408
|
it "should render nil when having two not public language_roots but a public children in both" do
|
409
409
|
@default_language_root.update_attributes(:public => false)
|
410
410
|
@klingonian_language_root.update_attributes(:public => false)
|
411
|
-
@default_first_public_child =
|
412
|
-
@klingonian_first_public_child =
|
411
|
+
@default_first_public_child = FactoryGirl.create(:page, :language => @default_language, :parent_id => @default_language_root.id, :public => true, :name => "child1")
|
412
|
+
@klingonian_first_public_child = FactoryGirl.create(:page, :language => @klingonian, :parent_id => @klingonian_language_root.id, :public => true, :name => "child1")
|
413
413
|
helper.language_switcher.should == nil
|
414
414
|
end
|
415
415
|
|