BDD file with acceptance criteria for archiving projects, describing each step of the feature and user permissions.
Feature: As a user I want to archive projects
Scenario Outline: Archive own projects permissions
Given I am a <userRole>
Then I can archive my own projects
Examples:
| userRole |
| OWNER |
| ADMIN |
| EDITOR |
| EXTERNAL_EDITOR |
Scenario Outline: Archive other users' projects permissions
Given I am a <userRole>
Then I <permissionType> archive other users' projects
Examples:
| userRole | permissionType |
| OWNER | can |
| ADMIN | can |
| EDITOR | can not |
| EXTERNAL_EDITOR | can not |
| INTERNAL_REVIEWER | can not |
| EXTERNAL_REVIEWER | can not |
Scenario: Archiving projects success
Given I archive one or multiple projects
Then the project(s) will be archived
And I will see visual feedback
And they will disappear from the active project list
Scenario Outline: Failed archive
Given archive is unsuccessful on <count> project(s)
Then I should see a single failure message
And the project(s) should reappear in the projects list
Examples:
| count |
| single |
| multiple |
Scenario: Partial failure
Given I archive multiple projects
And some archives fail
Then I will see a single message for all successfully archived projects
And I will see a single failure message for all projects that failed to archive
And I will be able to retry any failed archives