silverstripe-cms/tests/behat/features/publish-a-page.feature
Damian Mooyman b169823a00 API Deprecate delete in favour of archive
Remove "delete from live" duplicate action in favour of existing "unpublish" which is more consistent with current terminology
Add pop-up verification to destructive actions
Fix bug preventing side-by-side preview of archived pages
Fix bug in reporting publishing of error pages
Restoring a page without an available parent will restore to root
2015-06-03 14:46:16 +12:00

96 lines
3.5 KiB
Gherkin

Feature: Publish a page
As a site owner
I want content to go to a draft site before being published
So that only high quality changes are seen by our visitors
Background:
Given a "page" "My Page" with "URLSegment"="my-page" and "Content"="initial content"
And the "page" "My Page" is not published
@javascript
Scenario: I can have a unpublished version of a page that is not publicly available
Given I go to "/my-page"
Then the page can't be found
@javascript
Scenario: I can publish a previously never published page
Given I am logged in with "ADMIN" permissions
And I go to "/admin/pages"
And I should see "My Page" in the tree
And I click on "My Page" in the tree
And I press the "Publish" button
Then I press the "Log out" button
And I go to "/my-page"
Then I should see "initial content"
@javascript
Scenario: I will get different options depending on the current publish state of the page
Given I am logged in with "ADMIN" permissions
And I go to "/admin/pages"
And I should see "My Page" in the tree
And I click on "My Page" in the tree
When I click "More options" in the "#ActionMenus" element
Then I should not see "Unpublish" in the "#ActionMenus_MoreOptions" element
And I should see "Not published" in the "#ActionMenus_MoreOptions" element
And I should see "Archive" in the "#ActionMenus_MoreOptions" element
And I should see a "Save & publish" button
And I should see a "Saved" button
When I fill in the "Content" HTML field with "my new content"
And I click "More options" in the "#ActionMenus" element
Then I should not see "Unpublish" in the "#ActionMenus_MoreOptions" element
And I should see a "Save & publish" button
And I should see a "Save draft" button
When I press the "Publish" button
And I click "More options" in the "#ActionMenus" element
Then I should see "Unpublish" in the "#ActionMenus_MoreOptions" element
And I should see "Archive" in the "#ActionMenus_MoreOptions" element
And I should see a "Published" button
And I should see a "Saved" button
@javascript
Scenario: I can unpublish a page
Given a "page" "Hello" with "URLSegment"="hello" and "Content"="hello world"
And I go to "/hello"
Then I should see "hello world"
Given I am logged in with "ADMIN" permissions
And I go to "/admin/pages"
And I should see "Hello" in the tree
And I click on "Hello" in the tree
When I click "More options" in the "#ActionMenus" element
And I press the "Unpublish" button, confirming the dialog
Then I press the "Log out" button
And I go to "/hello"
Then the page can't be found
@javascript
Scenario: I can delete a page from live and draft stage to completely remove it
Given I am logged in with "ADMIN" permissions
And I go to "/admin/pages"
And I should see "My Page" in the tree
And I click on "My Page" in the tree
And I press the "Publish" button
And I click "More options" in the "#ActionMenus" element
Then I should see "Unpublish" in the "#ActionMenus_MoreOptions" element
When I press the "Unpublish" button, confirming the dialog
And I click "More options" in the "#ActionMenus" element
Then I should see "Archive" in the "#ActionMenus_MoreOptions" element
When I press the "Archive" button, confirming the dialog
Then I should see a "Restore" button
And I should not see a "Published" button
And I should not see a "Save & publish" button
And I should not see a "Saved" button
And I should not see a "Save draft" button
When I press the "Restore" button, confirming the dialog
Then I should see a "Save & publish" button