]> git.immae.eu Git - github/wallabag/wallabag.git/blobdiff - tests/Wallabag/CoreBundle/Controller/SiteCredentialControllerTest.php
Add a real configuration for CS-Fixer
[github/wallabag/wallabag.git] / tests / Wallabag / CoreBundle / Controller / SiteCredentialControllerTest.php
index 47bf0907a12c59bccd0164572b0d1e2aa0004a90..87ea286712ece3a3631a560e90c81d29ffb256c3 100644 (file)
@@ -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;
+    }
 }