forked from kevadesu/forgejo
feat: Create temporary user helper function
- Add a helper function that creates and log into a temporary user. So it doesn't affect other users and tests and the test can more easily be retried with a 'fresh' state instead of a broken state. - Adjust the Webauthn test to make use of this. - Relevant: #5291, #5394
This commit is contained in:
parent
b76d7a2b2d
commit
0b92d6e0ba
2 changed files with 25 additions and 8 deletions
|
@ -80,3 +80,24 @@ export async function save_visual(page) {
|
|||
});
|
||||
}
|
||||
}
|
||||
|
||||
// Create a temporary user and login to that user and store session info.
|
||||
// This should ideally run on a per test basis.
|
||||
export async function create_temp_user(browser, workerInfo, request) {
|
||||
const username = globalThis.crypto.randomUUID();
|
||||
const newUser = await request.post(`/api/v1/admin/users`, {
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'Authorization': `Basic ${btoa(`user1:${LOGIN_PASSWORD}`)}`,
|
||||
},
|
||||
data: {
|
||||
username,
|
||||
email: `${username}@host.invalid`,
|
||||
password: LOGIN_PASSWORD,
|
||||
must_change_password: false,
|
||||
},
|
||||
});
|
||||
expect(newUser.ok()).toBeTruthy();
|
||||
|
||||
return {context: await login_user(browser, workerInfo, username), username};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue