otwarchive-symphonyarchive/features/admins/users/admin_find_users.feature

161 lines
5.4 KiB
Gherkin
Raw Normal View History

2026-03-11 22:22:11 +00:00
Feature: Admin Find Users page
Background:
Given the following activated users exist
| login | email |
| userA | a@ao3.org |
| userB | b@bo3.org |
| userCB | cb@bo3.org |
And the user "userB" exists and has the role "archivist"
And I am logged in as a super admin
And all emails have been delivered
And I go to the manage users page
Scenario: The Find Users page shows no results before searching and all results with blank search
Then I should not see "userA"
And I should not see "userB"
And I should not see "userCB"
And I should not see "found"
When I submit
Then I should see "userA"
And I should see "userB"
And I should see "userCB"
Scenario: The Find Users page performs a partial match on name with * wildcard
When I fill in "Name" with "u*er*"
And I submit
Then I should see "userA"
And I should see "userB"
And I should see "userCB"
Scenario: The Find Users page performs an exact match on name by default
When I fill in "Name" with "user"
And I submit
Then I should see "0 users found"
When I fill in "Name" with "userA"
And I submit
Then the field labeled "user_email" should contain "a@ao3.org"
But I should not see "UserB"
Scenario: The Find Users page searches past logins only if the option is selected
When I am logged in as "userA"
And I visit the change username page for userA
And I fill in "New username" with "userD"
And I fill in "Password" with "password"
And I press "Change"
Then I should get confirmation that I changed my username
When I am logged in as a "support" admin
And I go to the manage users page
And I fill in "Name" with "userA"
And I submit
Then I should see "0 users found"
When I check "Include past usernames and emails"
And I submit
Then I should see "1 user found"
And I should see "userD"
# Only selected admins can search past logins
When I am logged in as a "translation" admin
And I go to the manage users page
Then I should not see "Include past usernames and emails"
Scenario: The Find Users page performs a partial match by email with * wildcard
When I fill in "Email" with "*bo3*"
And I submit
Then I should see "userB"
And I should see "userCB"
But I should not see "userA"
Scenario: The Find Users page performs an exact match on email by default
When I fill in "Email" with "ao3"
And I submit
Then I should see "0 users found"
When I fill in "Email" with "a@ao3.org"
And I submit
Then I should see "userA"
But I should not see "UserB"
Scenario: The Find Users page searches past emails if the option is selected
When I am logged in as "userA"
And I change my email to "d@ao3.org"
And I am logged in as a "policy_and_abuse" admin
And I go to the manage users page
And I fill in "Email" with "a@ao3.org"
And I submit
Then I should see "0 users found"
When I check "Include past usernames and emails"
And I submit
Then I should see "1 user found"
And I should see "userA"
And the field labeled "user_email" should contain "d@ao3.org"
Scenario: The Find Users page performs an exact match by role
When I select "Archivist" from "Role"
And I submit
Then I should see "userB"
But I should not see "userA"
And I should not see "userCB"
Scenario: The Find Users page performs an exact match by ID in addition to any other criteria
When the search criteria contains the ID for "userB"
And I submit
Then I should see "1 user found"
And I should see "userB"
But I should not see "userA"
And I should not see "userCB"
When I fill in "Name" with "*A"
And I submit
Then I should see "0 users found"
When I fill in "Name" with "*B"
And I submit
Then I should see "1 user found"
And I should see "userB"
# Bulk email search
Scenario: The Bulk Email Search page finds all existing matching users
When I go to the Bulk Email Search page
And I fill in "Email addresses *" with
"""
b@bo3.org
a@ao3.org
"""
And I press "Find"
Then I should see "userB"
And I should see "userA"
But I should not see "userCB"
And I should not see "Not found"
Scenario: The Bulk Email Search page lists emails found, not found and duplicates
When I go to the Bulk Email Search page
And I fill in "Email addresses *" with
"""
b@bo3.org
a@ao3.org
c@co3.org
C@CO3.org
"""
And I press "Find"
Then I should see "2 found"
And I should see "1 not found"
And I should see "1 duplicate"
And I should see "Not found"
Scenario: The Bulk Email Search page finds an exact match
When I go to the Bulk Email Search page
And I fill in "Email addresses *" with "b@bo3.org"
And I press "Find"
Then I should see "userB"
But I should not see "userA"
And I should not see "userCB"
And I should not see "Not found"
Scenario: Admins can download a CSV of found emails
When I go to the Bulk Email Search page
And I fill in "Email addresses *" with
"""
b@bo3.org
a@ao3.org
c@co3.org
"""
And I press "Download CSV"
Then I should download a csv file with 4 rows and the header row "Email Username"