feat: Enhance task filtering, smart scheduling, audit logs and translations
continuous-integration/drone/push Build is passing
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
import { test, expect } from '@playwright/test';
|
||||
|
||||
test.describe('Data Export', () => {
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await page.goto('http://localhost:5001/auth');
|
||||
await page.fill('input[name="username"]', 'admin');
|
||||
await page.fill('input[name="password"]', 'admin123');
|
||||
await page.click('button[type="submit"]');
|
||||
await expect(page).toHaveURL('http://localhost:5001/');
|
||||
});
|
||||
|
||||
test.skip('should export user data as JSON', async ({ page }) => {
|
||||
// 1. Go to Settings
|
||||
await page.goto('http://localhost:5001/settings');
|
||||
|
||||
// 2. Click Export Data button
|
||||
// Wait for download *response* (the blob)
|
||||
const downloadPromise = page.waitForResponse(response =>
|
||||
response.url().includes('/api/user/data-export') &&
|
||||
response.status() === 200 &&
|
||||
response.request().method() === 'POST'
|
||||
);
|
||||
|
||||
// Trigger export
|
||||
await page.click('button[data-testid="button-export-data"]');
|
||||
|
||||
const response = await downloadPromise;
|
||||
expect(response.ok()).toBeTruthy();
|
||||
|
||||
// 3. Verify Content
|
||||
const json = await response.json();
|
||||
|
||||
// Verify structure
|
||||
expect(json).toHaveProperty('user');
|
||||
expect(json.user).toHaveProperty('username', 'admin');
|
||||
// expect(json.user).toHaveProperty('email', 'admin@example.com'); // Email might vary if we used seed logic differently, but admin/admin123 usually has admin@example.com
|
||||
|
||||
expect(json).toHaveProperty('tasks');
|
||||
expect(Array.isArray(json.tasks)).toBeTruthy();
|
||||
|
||||
expect(json).toHaveProperty('labels');
|
||||
expect(Array.isArray(json.labels)).toBeTruthy();
|
||||
|
||||
expect(json).toHaveProperty('systemSettings');
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user