mirror of
https://github.com/solidtime-io/solidtime.git
synced 2026-08-08 00:02:15 +01:00
Add password check to users.destroy and organizations.destroy
This commit is contained in:
committed by
Constantin Graf
parent
24c94af952
commit
6a197f7f34
@@ -1,5 +1,5 @@
|
||||
import { expect, test } from '../playwright/fixtures';
|
||||
import { PLAYWRIGHT_BASE_URL } from '../playwright/config';
|
||||
import { PLAYWRIGHT_BASE_URL, TEST_USER_PASSWORD } from '../playwright/config';
|
||||
|
||||
async function goToOrganizationSettings(page) {
|
||||
await page.goto(PLAYWRIGHT_BASE_URL + '/dashboard');
|
||||
@@ -471,6 +471,7 @@ test.describe('Organization Create, Delete & Switch', () => {
|
||||
|
||||
// Open the confirmation modal, then confirm inside the dialog.
|
||||
await page.getByRole('button', { name: 'Delete Organization' }).click();
|
||||
await page.getByRole('dialog').getByPlaceholder('Password').fill(TEST_USER_PASSWORD);
|
||||
await Promise.all([
|
||||
page.waitForResponse(
|
||||
(response) =>
|
||||
@@ -488,6 +489,28 @@ test.describe('Organization Create, Delete & Switch', () => {
|
||||
).not.toContainText(orgName);
|
||||
});
|
||||
|
||||
test('delete organization shows an error when the password is wrong', async ({ page }) => {
|
||||
const orgName = 'DeleteOrgWrongPassword' + Math.floor(Math.random() * 100000);
|
||||
await createOrganization(page, orgName);
|
||||
await goToOrganizationSettings(page);
|
||||
|
||||
await page.getByRole('button', { name: 'Delete Organization' }).click();
|
||||
const dialog = page.getByRole('dialog');
|
||||
await dialog.getByPlaceholder('Password').fill('not-the-real-password');
|
||||
await Promise.all([
|
||||
page.waitForResponse(
|
||||
(response) =>
|
||||
response.url().includes('/api/v1/organizations') &&
|
||||
response.request().method() === 'DELETE' &&
|
||||
response.status() === 422
|
||||
),
|
||||
dialog.getByRole('button', { name: 'Delete Organization' }).click(),
|
||||
]);
|
||||
|
||||
await expect(dialog.getByRole('alert')).toBeVisible();
|
||||
await expect(dialog).toBeVisible();
|
||||
});
|
||||
|
||||
test('can switch the current organization via the organization switcher', async ({ page }) => {
|
||||
await page.goto(PLAYWRIGHT_BASE_URL + '/dashboard');
|
||||
const orgSwitcher = page.locator('[data-testid="organization_switcher"]:visible');
|
||||
|
||||
@@ -342,8 +342,8 @@ test('delete account shows an error when the password is wrong', async ({ page }
|
||||
await Promise.all([
|
||||
page.waitForResponse(
|
||||
(response) =>
|
||||
response.url().includes('/user/confirm-password') &&
|
||||
response.request().method() === 'POST' &&
|
||||
response.url().includes('/api/v1/users/') &&
|
||||
response.request().method() === 'DELETE' &&
|
||||
response.status() === 422
|
||||
),
|
||||
dialog.getByRole('button', { name: 'Delete Account' }).click(),
|
||||
|
||||
Reference in New Issue
Block a user