Align missing-episode searches and permit reviewed profile overrides
This commit is contained in:
@@ -7,7 +7,7 @@ const base = process.env.REVIEW_BASE || 'http://localhost:3114';
|
||||
try {
|
||||
const context = await browser.newContext();
|
||||
await context.addCookies([{ name: 'magent_logged_in', value: '1', url: base }]);
|
||||
const all = { stats: true, requests: true, new_requests: true, issues: true, invites: true };
|
||||
const all = { stats: true, requests: true, new_requests: true, issues: true, invites: true, ignore_profile_limits: false };
|
||||
const viewer = { id: 2, username: 'Georgia', role: 'user', email: 'georgia@example.test', features: { ...all }, stats: { total: 12, ready: 7, in_progress: 5 } };
|
||||
const other = { ...viewer, id: 3, username: 'Other viewer', features: { ...all, issues: false } };
|
||||
let signedIn = { username: 'Admin', role: 'admin', features: all };
|
||||
@@ -38,16 +38,21 @@ const base = process.env.REVIEW_BASE || 'http://localhost:3114';
|
||||
const dialog = page.getByRole('dialog');
|
||||
await dialog.getByRole('checkbox', { name: /My Stats/ }).waitFor();
|
||||
assert(await dialog.evaluate((element) => element.scrollWidth <= element.clientWidth), `No modal overflow at ${width}`);
|
||||
assert.equal(await dialog.getByRole('checkbox').count(), 7);
|
||||
assert.equal(await dialog.getByRole('checkbox').count(), 8);
|
||||
assert(await dialog.getByText('Restrict access or delete accounts', { exact: true }).count());
|
||||
await dialog.getByRole('checkbox', { name: /^Issues/ }).uncheck();
|
||||
await dialog.getByRole('button', { name: 'Save feature access', exact: true }).click();
|
||||
await dialog.getByRole('status').filter({ hasText: 'Feature access saved.' }).waitFor();
|
||||
assert.deepEqual(writes.at(-1).payload, { issues: false });
|
||||
await dialog.getByRole('checkbox', { name: /^Ignore profile limits/ }).check();
|
||||
await dialog.getByRole('button', { name: 'Save feature access', exact: true }).click();
|
||||
await dialog.getByRole('status').filter({ hasText: 'Feature access saved.' }).waitFor();
|
||||
assert.deepEqual(writes.at(-1).payload, { ignore_profile_limits: true });
|
||||
await page.keyboard.press('Escape');
|
||||
await dialog.waitFor({ state: 'hidden' });
|
||||
assert(await page.getByRole('button', { name: 'Manage this user', exact: true }).evaluate((element) => element === document.activeElement));
|
||||
viewer.features.issues = true;
|
||||
viewer.features.ignore_profile_limits = false;
|
||||
}
|
||||
await page.goto(`${base}/users`);
|
||||
await page.getByRole('button', { name: 'Manage users', exact: true }).click();
|
||||
|
||||
Reference in New Issue
Block a user