diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/models/page_test.rb | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/test/models/page_test.rb b/test/models/page_test.rb index afba8b5..ad2742f 100644 --- a/test/models/page_test.rb +++ b/test/models/page_test.rb | |||
| @@ -142,5 +142,38 @@ class PageTest < ActiveSupport::TestCase | |||
| 142 | update = updates2009.children.create!( :slug => "my-first-update" ) | 142 | update = updates2009.children.create!( :slug => "my-first-update" ) |
| 143 | assert_equal "update", update.draft.template_name | 143 | assert_equal "update", update.draft.template_name |
| 144 | end | 144 | end |
| 145 | 145 | ||
| 146 | test "a page scheduled for future publication is not yet public even after being published" do | ||
| 147 | node = Node.root.children.create!(slug: "preview-scheduled-test") | ||
| 148 | draft = node.find_or_create_draft(@user1) | ||
| 149 | draft.title = "Scheduled test" | ||
| 150 | draft.published_at = 1.day.from_now | ||
| 151 | draft.save! | ||
| 152 | token = draft.ensure_preview_token! | ||
| 153 | |||
| 154 | node.publish_draft! | ||
| 155 | page = Page.find_by(preview_token: token) | ||
| 156 | |||
| 157 | assert_equal page.id, page.node.head_id | ||
| 158 | assert_not page.public? | ||
| 159 | end | ||
| 160 | |||
| 161 | test "a superseded page is no longer the head, even though it was once published" do | ||
| 162 | node = Node.root.children.create!(slug: "preview-superseded-test") | ||
| 163 | first_draft = node.find_or_create_draft(@user1) | ||
| 164 | first_draft.title = "First version" | ||
| 165 | first_draft.save! | ||
| 166 | first_token = first_draft.ensure_preview_token! | ||
| 167 | node.publish_draft! | ||
| 168 | |||
| 169 | second_draft = node.find_or_create_draft(@user1) | ||
| 170 | second_draft.title = "Second version" | ||
| 171 | second_draft.save! | ||
| 172 | node.publish_draft! | ||
| 173 | |||
| 174 | first_page = Page.find_by(preview_token: first_token) | ||
| 175 | |||
| 176 | assert_not_equal first_page.id, first_page.node.head_id | ||
| 177 | assert first_page.published_at.present? | ||
| 178 | end | ||
| 146 | end | 179 | end |
