followRedirects(false); $em = self::getContainer()->get('doctrine')->getManager(); $schemaTool = new SchemaTool($em); $schemaTool->dropSchema($em->getMetadataFactory()->getAllMetadata()); $schemaTool->createSchema($em->getMetadataFactory()->getAllMetadata()); $session = self::getContainer()->get('session.factory')->createSession(); $session->start(); foreach (['auth_sub' => 'test-sub', 'auth_name' => 'Jens', 'auth_email' => 'jens@ljh31.de'] as $k => $v) { $session->set($k, $v); } $session->save(); $client->getCookieJar()->set(new Cookie($session->getName(), $session->getId())); return $client; } public function testIndexHasPwaAndMobileMarkers(): void { $client = self::authedClient(); $client->request('GET', '/mahlzeiten'); self::assertResponseIsSuccessful(); $html = (string) $client->getResponse()->getContent(); self::assertStringContainsString('manifest.webmanifest', $html); self::assertStringContainsString('class="fab"', $html); self::assertStringContainsString("register('/sw.js')", $html); self::assertStringContainsString('href="/mahlzeiten/tage"', $html); } public function testTageHighlightsHeutigerTag(): void { $client = self::authedClient(); $client->request('POST', '/mahlzeiten', [ 'name' => 'Heutiges Gericht', 'notiz' => '', 'wochentage' => [self::heuteWert()], ]); $client->request('GET', '/mahlzeiten/tage'); self::assertResponseIsSuccessful(); $h2 = $client->getCrawler()->filterXPath('//h2[@data-heute="1"]'); self::assertCount(1, $h2, 'Genau ein