X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=tests%2FWallabag%2FCoreBundle%2FController%2FSiteCredentialControllerTest.php;h=87ea286712ece3a3631a560e90c81d29ffb256c3;hb=f808b01692a835673f328d7221ba8c212caa9b61;hp=47bf0907a12c59bccd0164572b0d1e2aa0004a90;hpb=b8427f22f06cab58383ec3080f09715c712c65ef;p=github%2Fwallabag%2Fwallabag.git diff --git a/tests/Wallabag/CoreBundle/Controller/SiteCredentialControllerTest.php b/tests/Wallabag/CoreBundle/Controller/SiteCredentialControllerTest.php index 47bf0907..87ea2867 100644 --- a/tests/Wallabag/CoreBundle/Controller/SiteCredentialControllerTest.php +++ b/tests/Wallabag/CoreBundle/Controller/SiteCredentialControllerTest.php @@ -2,7 +2,9 @@ namespace Tests\Wallabag\CoreBundle\Controller; +use Symfony\Bundle\FrameworkBundle\Client; use Tests\Wallabag\CoreBundle\WallabagCoreTestCase; +use Wallabag\CoreBundle\Entity\SiteCredential; class SiteCredentialControllerTest extends WallabagCoreTestCase { @@ -13,7 +15,7 @@ class SiteCredentialControllerTest extends WallabagCoreTestCase $crawler = $client->request('GET', '/site-credentials/'); - $this->assertEquals(200, $client->getResponse()->getStatusCode()); + $this->assertSame(200, $client->getResponse()->getStatusCode()); $body = $crawler->filter('body')->extract(['_text'])[0]; @@ -28,7 +30,7 @@ class SiteCredentialControllerTest extends WallabagCoreTestCase $crawler = $client->request('GET', '/site-credentials/new'); - $this->assertEquals(200, $client->getResponse()->getStatusCode()); + $this->assertSame(200, $client->getResponse()->getStatusCode()); $body = $crawler->filter('body')->extract(['_text'])[0]; @@ -45,29 +47,23 @@ class SiteCredentialControllerTest extends WallabagCoreTestCase $client->submit($form, $data); - $this->assertEquals(302, $client->getResponse()->getStatusCode()); + $this->assertSame(302, $client->getResponse()->getStatusCode()); $crawler = $client->followRedirect(); $this->assertContains('flashes.site_credential.notice.added', $crawler->filter('body')->extract(['_text'])[0]); } - /** - * @depends testNewSiteCredential - */ public function testEditSiteCredential() { $this->logInAs('admin'); $client = $this->getClient(); - $credential = $client->getContainer() - ->get('doctrine.orm.entity_manager') - ->getRepository('WallabagCoreBundle:SiteCredential') - ->findOneByHost('google.io'); + $credential = $this->createSiteCredential($client); - $crawler = $client->request('GET', '/site-credentials/'.$credential->getId().'/edit'); + $crawler = $client->request('GET', '/site-credentials/' . $credential->getId() . '/edit'); - $this->assertEquals(200, $client->getResponse()->getStatusCode()); + $this->assertSame(200, $client->getResponse()->getStatusCode()); $body = $crawler->filter('body')->extract(['_text'])[0]; @@ -84,57 +80,60 @@ class SiteCredentialControllerTest extends WallabagCoreTestCase $client->submit($form, $data); - $this->assertEquals(302, $client->getResponse()->getStatusCode()); + $this->assertSame(302, $client->getResponse()->getStatusCode()); $crawler = $client->followRedirect(); $this->assertContains('flashes.site_credential.notice.updated', $crawler->filter('body')->extract(['_text'])[0]); - $this->assertContains('larry', $crawler->filter('input[id=site_credential_username]')->attr('value')); } - /** - * @depends testNewSiteCredential - */ public function testEditFromADifferentUserSiteCredential() { - $this->logInAs('bob'); + $this->logInAs('admin'); $client = $this->getClient(); - $credential = $client->getContainer() - ->get('doctrine.orm.entity_manager') - ->getRepository('WallabagCoreBundle:SiteCredential') - ->findOneByHost('google.io'); + $credential = $this->createSiteCredential($client); - $client->request('GET', '/site-credentials/'.$credential->getId().'/edit'); + $this->logInAs('bob'); - $this->assertEquals(403, $client->getResponse()->getStatusCode()); + $client->request('GET', '/site-credentials/' . $credential->getId() . '/edit'); + + $this->assertSame(403, $client->getResponse()->getStatusCode()); } - /** - * @depends testNewSiteCredential - */ public function testDeleteSiteCredential() { $this->logInAs('admin'); $client = $this->getClient(); - $credential = $client->getContainer() - ->get('doctrine.orm.entity_manager') - ->getRepository('WallabagCoreBundle:SiteCredential') - ->findOneByHost('google.io'); + $credential = $this->createSiteCredential($client); - $crawler = $client->request('GET', '/site-credentials/'.$credential->getId().'/edit'); + $crawler = $client->request('GET', '/site-credentials/' . $credential->getId() . '/edit'); - $this->assertEquals(200, $client->getResponse()->getStatusCode()); + $this->assertSame(200, $client->getResponse()->getStatusCode()); $deleteForm = $crawler->filter('body')->selectButton('site_credential.form.delete')->form(); $client->submit($deleteForm, []); - $this->assertEquals(302, $client->getResponse()->getStatusCode()); + $this->assertSame(302, $client->getResponse()->getStatusCode()); $crawler = $client->followRedirect(); $this->assertContains('flashes.site_credential.notice.deleted', $crawler->filter('body')->extract(['_text'])[0]); } + + private function createSiteCredential(Client $client) + { + $credential = new SiteCredential($this->getLoggedInUser()); + $credential->setHost('google.io'); + $credential->setUsername('sergei'); + $credential->setPassword('microsoft'); + + $em = $client->getContainer()->get('doctrine.orm.entity_manager'); + $em->persist($credential); + $em->flush(); + + return $credential; + } }