123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196 |
- # SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
- # SPDX-License-Identifier: AGPL-3.0-or-later
- Feature: contacts-menu
- Scenario: users can be searched by display name
- Given user "user0" exists
- And user "user1" exists
- And As an "admin"
- And sending "PUT" to "/cloud/users/user1" with
- | key | displayname |
- | value | Test name |
- When Logging in using web as "user0"
- And searching for contacts matching with "test"
- Then the list of searched contacts has "1" contacts
- And searched contact "0" is named "Test name"
- Scenario: users can be searched by email
- Given user "user0" exists
- And user "user1" exists
- And As an "admin"
- And sending "PUT" to "/cloud/users/user1" with
- | key | email |
- | value | test@example.com |
- When Logging in using web as "user0"
- And searching for contacts matching with "test"
- Then the list of searched contacts has "1" contacts
- And searched contact "0" is named "user1"
- Scenario: users can not be searched by id
- Given user "user0" exists
- And user "user1" exists
- And As an "admin"
- And sending "PUT" to "/cloud/users/user1" with
- | key | displayname |
- | value | Test name |
- When Logging in using web as "user0"
- And searching for contacts matching with "user"
- Then the list of searched contacts has "0" contacts
- Scenario: search several users
- Given user "user0" exists
- And user "user1" exists
- And user "user2" exists
- And user "user3" exists
- And user "user4" exists
- And user "user5" exists
- And As an "admin"
- And sending "PUT" to "/cloud/users/user1" with
- | key | displayname |
- | value | Test name |
- And sending "PUT" to "/cloud/users/user2" with
- | key | email |
- | value | test@example.com |
- And sending "PUT" to "/cloud/users/user3" with
- | key | displayname |
- | value | Unmatched name |
- And sending "PUT" to "/cloud/users/user4" with
- | key | email |
- | value | unmatched@example.com |
- And sending "PUT" to "/cloud/users/user5" with
- | key | displayname |
- | value | Another test name |
- And sending "PUT" to "/cloud/users/user5" with
- | key | email |
- | value | another_test@example.com |
- When Logging in using web as "user0"
- And searching for contacts matching with "test"
- Then the list of searched contacts has "3" contacts
- # Results are sorted alphabetically
- And searched contact "0" is named "Another test name"
- And searched contact "1" is named "Test name"
- And searched contact "2" is named "user2"
- Scenario: users can not be found by display name if visibility is private
- Given user "user0" exists
- And user "user1" exists
- And user "user2" exists
- And Logging in using web as "user1"
- And Sending a "PUT" to "/settings/users/user1/settings" with requesttoken
- | displayname | Test name |
- | displaynameScope | private |
- And Logging in using web as "user2"
- And Sending a "PUT" to "/settings/users/user2/settings" with requesttoken
- | displayname | Another test name |
- | displaynameScope | contacts |
- When Logging in using web as "user0"
- And searching for contacts matching with "test"
- # Disabled because it regularly fails on drone:
- # Then the list of searched contacts has "1" contacts
- # And searched contact "0" is named "Another test name"
- Scenario: users can not be found by email if visibility is private
- Given user "user0" exists
- And user "user1" exists
- And user "user2" exists
- And Logging in using web as "user1"
- And Sending a "PUT" to "/settings/users/user1/settings" with requesttoken
- | email | test@example.com |
- | emailScope | private |
- And Logging in using web as "user2"
- And Sending a "PUT" to "/settings/users/user2/settings" with requesttoken
- | email | another_test@example.com |
- | emailScope | contacts |
- # Disabled because it regularly fails on drone:
- # When Logging in using web as "user0"
- # And searching for contacts matching with "test"
- # Then the list of searched contacts has "1" contacts
- # And searched contact "0" is named "user2"
- Scenario: users can be found by other properties if the visibility of one is private
- Given user "user0" exists
- And user "user1" exists
- And user "user2" exists
- And Logging in using web as "user1"
- And Sending a "PUT" to "/settings/users/user1/settings" with requesttoken
- | displayname | Test name |
- | displaynameScope | contacts |
- | email | test@example.com |
- | emailScope | private |
- And Logging in using web as "user2"
- And Sending a "PUT" to "/settings/users/user2/settings" with requesttoken
- | displayname | Another test name |
- | displaynameScope | private |
- | email | another_test@example.com |
- | emailScope | contacts |
- When Logging in using web as "user0"
- And searching for contacts matching with "test"
- Then the list of searched contacts has "2" contacts
- # Disabled because it regularly fails on drone:
- # And searched contact "0" is named ""
- And searched contact "1" is named "Test name"
- Scenario: users can be searched by display name if visibility is increased again
- Given user "user0" exists
- And user "user1" exists
- And Logging in using web as "user1"
- And Sending a "PUT" to "/settings/users/user1/settings" with requesttoken
- | displayname | Test name |
- | displaynameScope | private |
- And Sending a "PUT" to "/settings/users/user1/settings" with requesttoken
- | displaynameScope | contacts |
- When Logging in using web as "user0"
- And searching for contacts matching with "test"
- Then the list of searched contacts has "1" contacts
- And searched contact "0" is named "Test name"
- Scenario: users can be searched by email if visibility is increased again
- Given user "user0" exists
- And user "user1" exists
- And Logging in using web as "user1"
- And Sending a "PUT" to "/settings/users/user1/settings" with requesttoken
- | email | test@example.com |
- | emailScope | private |
- And Sending a "PUT" to "/settings/users/user1/settings" with requesttoken
- | emailScope | contacts |
- # Disabled because it regularly fails on drone:
- # When Logging in using web as "user0"
- # And searching for contacts matching with "test"
- # Then the list of searched contacts has "1" contacts
- # And searched contact "0" is named "user1"
- Scenario: users can not be searched by display name if visibility is private even if updated with provisioning
- Given user "user0" exists
- And user "user1" exists
- And Logging in using web as "user1"
- And Sending a "PUT" to "/settings/users/user1/settings" with requesttoken
- | displaynameScope | private |
- And As an "admin"
- And sending "PUT" to "/cloud/users/user1" with
- | key | displayname |
- | value | Test name |
- When Logging in using web as "user0"
- And searching for contacts matching with "test"
- # Disabled because it regularly fails on drone:
- # Then the list of searched contacts has "0" contacts
- Scenario: users can not be searched by email if visibility is private even if updated with provisioning
- Given user "user0" exists
- And user "user1" exists
- And Logging in using web as "user1"
- And Sending a "PUT" to "/settings/users/user1/settings" with requesttoken
- | emailScope | private |
- And As an "admin"
- And sending "PUT" to "/cloud/users/user1" with
- | key | email |
- | value | test@example.com |
- When Logging in using web as "user0"
- And searching for contacts matching with "test"
- # Disabled because it regularly fails on drone:
- # Then the list of searched contacts has "0" contacts
|