BDD file with acceptance criteria for duplicating projects, describing each step of the feature and user permissions.
Feature: As a user I want copy my projects
Scenario Outline: Can copy projects
Given my user role is <userRole>
And I have selected <selectionCount> <projectType> project(s)
Then I can see the copy project button
Examples:
| userRole | projectType | selectionCount |
| OWNER | PROTOTYPE | 1 |
| ADMIN | PROTOTYPE | 1 |
| EDITOR | DESIGN | 1 |
| EXTERNAL_EDITOR | DESIGN | 1 |
Scenario Outline: Can not copy projects
Given my user role is <userRole>
And I have selected <selectionCount> <projectType> project(s)
Then I can not see the copy project button
Examples:
| userRole | projectType | selectionCount |
| OWNER | PROTOTYPE | 2 |
| OWNER | USERTEST | 1 |
| ADMIN | DESIGN | 2 |
| EDITOR | USERTEST | 1 |
| EXTERNAL_EDITOR | DESIGN | 2 |
Scenario: Copying a project
Given I have permission to copy a project
When I click the Copy button
Then a progress notification should pop up
And action bar should hide
Given a project copy is taking place
When I refresh the page
Then I should no longer see the progress notification
And I should be notified when the action completes
Scenario: Project has successfully copied
Given I have successfuly copied a project
Then I should see a success notification
Scenario: Opening project from success notification
Given I have successfully copied a project
When I click on the link in the success notification
Then I should be taken to the project page
Scenario: Project has failed to start copying
Given the project failed to clone
Then I should see an error notification
Scenario: Project has failed to copy within a reasonable time
Given the project failed to clone
Then I should see an error notification
Scenario: Retrying a failed copy
Given the project failed to clone
When I click on the retry link in the notification
Then the error notification should turn into progress notification again