@@ -32,7 +32,7 @@ test('Create user fails with already taken email', async ({ page }) => {
32
32
await page . getByLabel ( 'Username' ) . fill ( user . username ) ;
33
33
await page . getByRole ( 'button' , { name : 'Save' } ) . click ( ) ;
34
34
35
- await expect ( page . getByRole ( 'status' ) ) . toHaveText ( 'Email is already taken ' ) ;
35
+ await expect ( page . getByRole ( 'status' ) ) . toHaveText ( 'Email is already in use ' ) ;
36
36
} ) ;
37
37
38
38
test ( 'Create user fails with already taken username' , async ( { page } ) => {
@@ -47,7 +47,7 @@ test('Create user fails with already taken username', async ({ page }) => {
47
47
await page . getByLabel ( 'Username' ) . fill ( users . tim . username ) ;
48
48
await page . getByRole ( 'button' , { name : 'Save' } ) . click ( ) ;
49
49
50
- await expect ( page . getByRole ( 'status' ) ) . toHaveText ( 'Username is already taken ' ) ;
50
+ await expect ( page . getByRole ( 'status' ) ) . toHaveText ( 'Username is already in use ' ) ;
51
51
} ) ;
52
52
53
53
test ( 'Create one time access token' , async ( { page } ) => {
@@ -95,7 +95,7 @@ test('Update user', async ({ page }) => {
95
95
await page . getByLabel ( 'Last name' ) . fill ( 'Apple' ) ;
96
96
await page . getByLabel ( 'Email' ) . fill ( '[email protected] ' ) ;
97
97
await page . getByLabel ( 'Username' ) . fill ( 'crack' ) ;
98
- await page . getByRole ( 'button' , { name : 'Save' } ) . click ( ) ;
98
+ await page . getByRole ( 'button' , { name : 'Save' } ) . first ( ) . click ( ) ;
99
99
100
100
await expect ( page . getByRole ( 'status' ) ) . toHaveText ( 'User updated successfully' ) ;
101
101
} ) ;
@@ -112,9 +112,9 @@ test('Update user fails with already taken email', async ({ page }) => {
112
112
await page . getByRole ( 'menuitem' , { name : 'Edit' } ) . click ( ) ;
113
113
114
114
await page . getByLabel ( 'Email' ) . fill ( users . tim . email ) ;
115
- await page . getByRole ( 'button' , { name : 'Save' } ) . click ( ) ;
115
+ await page . getByRole ( 'button' , { name : 'Save' } ) . first ( ) . click ( ) ;
116
116
117
- await expect ( page . getByRole ( 'status' ) ) . toHaveText ( 'Email is already taken ' ) ;
117
+ await expect ( page . getByRole ( 'status' ) ) . toHaveText ( 'Email is already in use ' ) ;
118
118
} ) ;
119
119
120
120
test ( 'Update user fails with already taken username' , async ( { page } ) => {
@@ -129,7 +129,43 @@ test('Update user fails with already taken username', async ({ page }) => {
129
129
await page . getByRole ( 'menuitem' , { name : 'Edit' } ) . click ( ) ;
130
130
131
131
await page . getByLabel ( 'Username' ) . fill ( users . tim . username ) ;
132
- await page . getByRole ( 'button' , { name : 'Save' } ) . click ( ) ;
132
+ await page . getByRole ( 'button' , { name : 'Save' } ) . first ( ) . click ( ) ;
133
+
134
+ await expect ( page . getByRole ( 'status' ) ) . toHaveText ( 'Username is already in use' ) ;
135
+ } ) ;
136
+
137
+ test ( 'Update user custom claims' , async ( { page } ) => {
138
+ await page . goto ( `/settings/admin/users/${ users . craig . id } ` ) ;
139
+
140
+ // Add two custom claims
141
+ await page . getByRole ( 'button' , { name : 'Add custom claim' } ) . click ( ) ;
142
+
143
+ await page . getByPlaceholder ( 'Key' ) . fill ( 'custom_claim_1' ) ;
144
+ await page . getByPlaceholder ( 'Value' ) . fill ( 'custom_claim_1_value' ) ;
145
+
146
+ await page . getByRole ( 'button' , { name : 'Add another' } ) . click ( ) ;
147
+ await page . getByPlaceholder ( 'Key' ) . nth ( 1 ) . fill ( 'custom_claim_2' ) ;
148
+ await page . getByPlaceholder ( 'Value' ) . nth ( 1 ) . fill ( 'custom_claim_2_value' ) ;
149
+
150
+ await page . getByRole ( 'button' , { name : 'Save' } ) . nth ( 1 ) . click ( ) ;
151
+
152
+ await expect ( page . getByRole ( 'status' ) ) . toHaveText ( 'Custom claims updated successfully' ) ;
153
+
154
+ await page . reload ( ) ;
155
+
156
+ // Check if custom claims are saved
157
+ await expect ( page . getByPlaceholder ( 'Key' ) . first ( ) ) . toHaveValue ( 'custom_claim_1' ) ;
158
+ await expect ( page . getByPlaceholder ( 'Value' ) . first ( ) ) . toHaveValue ( 'custom_claim_1_value' ) ;
159
+ await expect ( page . getByPlaceholder ( 'Key' ) . nth ( 1 ) ) . toHaveValue ( 'custom_claim_2' ) ;
160
+ await expect ( page . getByPlaceholder ( 'Value' ) . nth ( 1 ) ) . toHaveValue ( 'custom_claim_2_value' ) ;
161
+
162
+ // Remove one custom claim
163
+ await page . getByLabel ( 'Remove custom claim' ) . first ( ) . click ( ) ;
164
+ await page . getByRole ( 'button' , { name : 'Save' } ) . nth ( 1 ) . click ( ) ;
165
+
166
+ await page . reload ( ) ;
133
167
134
- await expect ( page . getByRole ( 'status' ) ) . toHaveText ( 'Username is already taken' ) ;
168
+ // Check if custom claim is removed
169
+ await expect ( page . getByPlaceholder ( 'Key' ) . first ( ) ) . toHaveValue ( 'custom_claim_2' ) ;
170
+ await expect ( page . getByPlaceholder ( 'Value' ) . first ( ) ) . toHaveValue ( 'custom_claim_2_value' ) ;
135
171
} ) ;
0 commit comments