Skip to content

Commit 7b6e66f

Browse files
committed
configure read-only and admin users
1 parent c32981b commit 7b6e66f

File tree

2 files changed

+42
-24
lines changed

2 files changed

+42
-24
lines changed

playwright.config.ts

Lines changed: 31 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -46,33 +46,43 @@ export default defineConfig({
4646
projects: [
4747
{ name: 'setup', testMatch: /.*\.setup\.ts/ },
4848
{
49-
name: 'chromium',
50-
grepInvert: !!process.env.PROD ? [/preview-only/, /switch-to-preview/] : [/switch-to-preview/],
49+
name: 'chromium', // 'Run admin user tests',
50+
grepInvert: [/read-only/], // !!process.env.PROD ? [/preview-only/, /switch-to-preview/], ] : [/switch-to-preview/],
5151
use: {
5252
...devices['Desktop Chrome'],
5353
storageState: `.auth/${process.env.USER1USERNAME}.json`,
5454
},
5555
dependencies: ['setup'],
5656
},
57-
...!!process.env.PROD ?
58-
[{
59-
name: 'Switch to preview',
60-
grep: [/switch-to-preview/],
61-
use: {
62-
...devices['Desktop Chrome'],
63-
storageState: `.auth/${process.env.USER1USERNAME}.json`,
64-
65-
},
66-
dependencies: ['setup'],//'chromium',
57+
58+
{
59+
name: 'chromium', // 'Run read-only user tests',
60+
grep: [/read-only/],
61+
use: {
62+
...devices['Desktop Chrome'],
63+
storageState: `.auth/${process.env.STAGE_RO_USER_USERNAME}.json`,
6764
},
68-
{
69-
name: 'Run preview only',
70-
grep: [/preview-only/],
71-
use: {
72-
...devices['Desktop Chrome'],
73-
storageState: `.auth/${process.env.USER1USERNAME}.json`,
74-
},
75-
dependencies: ['Switch to preview'],
76-
}] : [],
65+
dependencies: ['setup'],
66+
}
67+
// ...!!process.env.PROD ?
68+
// [{
69+
// name: 'Switch to preview',
70+
// grep: [/switch-to-preview/],
71+
// use: {
72+
// ...devices['Desktop Chrome'],
73+
// storageState: `.auth/${process.env.USER1USERNAME}.json`,
74+
75+
// },
76+
// dependencies: ['setup'],//'chromium',
77+
// },
78+
// {
79+
// name: 'Run preview only',
80+
// grep: [/preview-only/],
81+
// use: {
82+
// ...devices['Desktop Chrome'],
83+
// storageState: `.auth/${process.env.USER1USERNAME}.json`,
84+
// },
85+
// dependencies: ['Switch to preview'],
86+
// }] : [],
7787
],
7888
});

tests/auth.setup.ts

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import {
55
switchToUser,
66
logInWithUsernameAndPassword,
77
ensureNotInPreview,
8+
logout,
89
} from "./helpers/loginHelpers";
910
import { describe } from "node:test";
1011

@@ -13,13 +14,20 @@ describe("Setup", async () => {
1314
expect(() => throwIfMissingEnvVariables()).not.toThrow();
1415
});
1516

16-
setup("Authenticate user 1", async ({ page }) => {
17+
setup("Authenticate all the users", async ({ page }) => {
1718
await closePopupsIfExist(page);
1819
await logInWithUsernameAndPassword(
1920
page,
2021
process.env.USER1USERNAME,
2122
process.env.USER1PASSWORD
2223
);
24+
await logout(page);
25+
await logInWithUsernameAndPassword(
26+
page,
27+
process.env.STAGE_RO_USER_USERNAME,
28+
process.env.STAGE_RO_USER_PASSWORD
29+
);
30+
await logout(page);
2331
// Example of how to add another user
2432
// await logout(page)
2533
// await logInWithUsernameAndPassword(
@@ -28,8 +36,8 @@ describe("Setup", async () => {
2836
// process.env.USER2PASSWORD
2937
// );
3038
// Example of how to switch to said user
31-
await switchToUser(page, process.env.USER1USERNAME!);
32-
await ensureNotInPreview(page);
39+
// await switchToUser(page, process.env.USER1USERNAME!);
40+
// await ensureNotInPreview(page);
3341
// Other users for other tests can be added below after logging out
3442
});
3543
});

0 commit comments

Comments
 (0)