dashboard - first draft of complete redesign
This commit is contained in:
@@ -125,15 +125,28 @@ class WebPreviewTests(unittest.TestCase):
|
||||
self.page.screenshot(path=str(Path(output) / f'web-{width}.png'), full_page=True, animations='disabled')
|
||||
self.assertEqual(self.page.locator('script:not([src])').count(), 0)
|
||||
|
||||
def test_permissions_and_csrf_reject_mutations(self):
|
||||
def test_permissions_and_csrf_reject_mutations(self):
|
||||
denied = self.page.request.post(self.url + '?deny=1', form={'action': 'delete_news', 'file_base': '2030-12-31-Mehrseitig'}, max_redirects=0)
|
||||
self.assertEqual(denied.status, 303)
|
||||
self.assertIn('/intranet/index.php', denied.headers['location'])
|
||||
self.page.request.post(self.url, form={'action': 'delete_news', 'file_base': '2030-12-31-Mehrseitig', 'csrf_token': 'wrong'}, max_redirects=0)
|
||||
self.page.reload()
|
||||
self.assertIn('Ungültige Anfrage', self.page.locator('.sb-alert-error').inner_text())
|
||||
self.assertTrue(all((self.news / f'2030-12-31-Mehrseitig_page_{n}.png').is_file() for n in range(1, 11)))
|
||||
|
||||
self.assertTrue(all((self.news / f'2030-12-31-Mehrseitig_page_{n}.png').is_file() for n in range(1, 11)))
|
||||
|
||||
def test_page_cleans_expired_announcements_on_each_authorized_request(self):
|
||||
log = self.root / 'cleanup.jsonl'
|
||||
before = len(log.read_text().splitlines())
|
||||
self.page.reload()
|
||||
cleanup = [json.loads(line) for line in log.read_text().splitlines()]
|
||||
self.assertEqual(len(cleanup), before + 1)
|
||||
sql, params = cleanup[-1]
|
||||
self.assertEqual(sql, 'DELETE FROM ansagen WHERE COALESCE(ansage_datum_bis, ansage_datum_von) < ?')
|
||||
self.assertEqual(len(params), 1)
|
||||
self.assertRegex(params[0], r'^\d{4}-\d{2}-\d{2}$')
|
||||
self.page.request.get(self.url + '?deny=1', max_redirects=0)
|
||||
self.assertEqual(len(log.read_text().splitlines()), len(cleanup))
|
||||
|
||||
def test_forms_preserve_fields_validation_and_bound_sql_parameters(self):
|
||||
for tab, action, fields in (
|
||||
('gottesdienst', 'create_service', {'bibeldatum': '2030-12-31', 'bibelwort': 'Joh 3,16', 'bibelvers': 'Text & "Zitat"'}),
|
||||
|
||||
Reference in New Issue
Block a user