- Fix 97 lint errors → 0 (unused imports, params, variables across 40+ files) - Fix i18n key format: colon → dot notation for next-intl compatibility - Add missing i18n keys (routes.application, routes.home, confirm) - Fix module visibility: sidebar now respects per-account DB features - Fix inject function: use dot-notation keys, add collapsed:true defaults - Fix ConfirmDialog: use useTranslations instead of hardcoded German defaults - Fix events page: replace placeholder 'Beschreibung' with proper description - Fix Dockerfile: add NEXT_PUBLIC_CI ARG for Docker builds - Collapse secondary sidebar sections by default for cleaner UX
23 lines
637 B
TypeScript
23 lines
637 B
TypeScript
/**
|
|
* E2E Test: Newsletter
|
|
*/
|
|
import { test } from '@playwright/test';
|
|
|
|
test.describe('Newsletter', () => {
|
|
test('create campaign, select recipients from members, preview, send', async ({
|
|
page: _page,
|
|
}) => {
|
|
// Create newsletter
|
|
// Add recipients from member filter (status=active, hasEmail=true)
|
|
// Preview with variable substitution
|
|
// Dispatch
|
|
// Verify sent_count
|
|
});
|
|
|
|
test('template variable substitution works', async ({ page: _page }) => {
|
|
// Create template with {{first_name}} {{member_number}}
|
|
// Create newsletter from template
|
|
// Preview — verify variables replaced
|
|
});
|
|
});
|