X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=src%2FWallabag%2FCoreBundle%2FTests%2FController%2FSecurityControllerTest.php;h=5c098cc28aa37fa6ed271b93cd68f9a8c85abfd6;hb=0d42217e4e8210dd2cf86f35ba9662ca02c8a2dc;hp=b9f5d835589676beb6890612a2e39d6ee93e1a06;hpb=d2b4f01d7435e8a8f99b15a2487916427c04e58d;p=github%2Fwallabag%2Fwallabag.git diff --git a/src/Wallabag/CoreBundle/Tests/Controller/SecurityControllerTest.php b/src/Wallabag/CoreBundle/Tests/Controller/SecurityControllerTest.php index b9f5d835..5c098cc2 100644 --- a/src/Wallabag/CoreBundle/Tests/Controller/SecurityControllerTest.php +++ b/src/Wallabag/CoreBundle/Tests/Controller/SecurityControllerTest.php @@ -12,53 +12,59 @@ class SecurityControllerTest extends WallabagCoreTestCase $client = $this->getClient(); $client->followRedirects(); - $client->request('GET', '/config'); - $this->assertContains('RSS', $client->getResponse()->getContent()); + $crawler = $client->request('GET', '/config'); + $this->assertContains('config.form_rss.description', $crawler->filter('body')->extract(array('_text'))[0]); } public function testLoginWith2Factor() { $client = $this->getClient(); - if ($client->getContainer()->getParameter('twofactor_auth')) { - $client->followRedirects(); + if (!$client->getContainer()->getParameter('twofactor_auth')) { + $this->markTestSkipped('twofactor_auth is not enabled.'); + return; + } - $em = $client->getContainer()->get('doctrine.orm.entity_manager'); - $user = $em - ->getRepository('WallabagUserBundle:User') - ->findOneByUsername('admin'); - $user->setTwoFactorAuthentication(true); - $em->persist($user); - $em->flush(); + $client->followRedirects(); - $this->logInAs('admin'); - $client->request('GET', '/config'); - $this->assertContains('trusted computer', $client->getResponse()->getContent()); + $em = $client->getContainer()->get('doctrine.orm.entity_manager'); + $user = $em + ->getRepository('WallabagUserBundle:User') + ->findOneByUsername('admin'); + $user->setTwoFactorAuthentication(true); + $em->persist($user); + $em->flush(); - // restore user - $user = $em - ->getRepository('WallabagUserBundle:User') - ->findOneByUsername('admin'); - $user->setTwoFactorAuthentication(false); - $em->persist($user); - $em->flush(); - } + $this->logInAs('admin'); + $crawler = $client->request('GET', '/config'); + $this->assertContains('scheb_two_factor.trusted', $crawler->filter('body')->extract(array('_text'))[0]); + + // restore user + $user = $em + ->getRepository('WallabagUserBundle:User') + ->findOneByUsername('admin'); + $user->setTwoFactorAuthentication(false); + $em->persist($user); + $em->flush(); } public function testTrustedComputer() { $client = $this->getClient(); - if ($client->getContainer()->getParameter('twofactor_auth')) { - $em = $client->getContainer()->get('doctrine.orm.entity_manager'); - $user = $em - ->getRepository('WallabagUserBundle:User') - ->findOneByUsername('admin'); - - $date = new \DateTime(); - $user->addTrustedComputer('ABCDEF', $date->add(new \DateInterval('P1M'))); - $this->assertTrue($user->isTrustedComputer('ABCDEF')); - $this->assertFalse($user->isTrustedComputer('FEDCBA')); + if (!$client->getContainer()->getParameter('twofactor_auth')) { + $this->markTestSkipped('twofactor_auth is not enabled.'); + return; } + + $em = $client->getContainer()->get('doctrine.orm.entity_manager'); + $user = $em + ->getRepository('WallabagUserBundle:User') + ->findOneByUsername('admin'); + + $date = new \DateTime(); + $user->addTrustedComputer('ABCDEF', $date->add(new \DateInterval('P1M'))); + $this->assertTrue($user->isTrustedComputer('ABCDEF')); + $this->assertFalse($user->isTrustedComputer('FEDCBA')); } }