// @ts-check const { test, expect } = require('@playwright/test') const BENUTZER = process.env.E2E_USER || 'e2e' const PASSWORT = process.env.E2E_PASSWORT || process.env.E2E_PASSWORD || 'e2e-testpasswort' // Der Grundbestand (E2EGrundbestand) legt eine Echtzeitüberweisung an, deren // Ausgang die Bank offen ließ (Rückmeldung 3045, #113). Die Statusabfrage läuft // im Hintergrund und ist erst in 30 Tagen fällig – es geht keine Anfrage an // eine Bank. const EMPFAENGER = 'E2E Grundbestand Verlag' async function anmelden(page) { await page.goto('/login') await page.fill('#benutzername', BENUTZER) await page.fill('#passwort', PASSWORT) await page.click('button[type="submit"]') await expect(page).toHaveURL(/\/$/) } test.describe('Zahlungsverkehr: Echtzeitüberweisung mit offenem Status', () => { test.beforeEach(async ({ page }) => { await anmelden(page) }) test('Liste zeigt „Ausgang offen“ mit Hinweis auf die Abfrage im Hintergrund, ohne Knopf', async ({ page }) => { await page.goto('/zahlungsverkehr?status=gesendet') const zeile = page.locator('table.liste tr', { hasText: EMPFAENGER }) await expect(zeile).toHaveCount(1) await expect(zeile.locator('[id^="echtzeit-offen-"]')).toHaveText('Ausgang offen') await expect(zeile.locator('[id^="echtzeit-hinweis-"]')).toContainText('im Hintergrund abgefragt') await expect(zeile.locator('[id^="echtzeit-hinweis-"]')).toContainText('Nicht erneut senden') // Gesendet: kein Senden-Knopf, und die Abfrage braucht keinen Knopf. await expect(zeile.getByRole('button')).toHaveCount(0) }) })