X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=src%2FWallabag%2FCoreBundle%2FTests%2FController%2FTagControllerTest.php;h=d639128224f60a149cb6989ffafd1f305ea85316;hb=9b5edf33a00490b033692efca9987a35225835ba;hp=dc93dd6b8575a7b70ce9b66b99dd441c7d72913a;hpb=159986c4fbf63dd93136ea5c52ff0be705aefaf3;p=github%2Fwallabag%2Fwallabag.git diff --git a/src/Wallabag/CoreBundle/Tests/Controller/TagControllerTest.php b/src/Wallabag/CoreBundle/Tests/Controller/TagControllerTest.php index dc93dd6b..d6391282 100644 --- a/src/Wallabag/CoreBundle/Tests/Controller/TagControllerTest.php +++ b/src/Wallabag/CoreBundle/Tests/Controller/TagControllerTest.php @@ -6,6 +6,8 @@ use Wallabag\CoreBundle\Tests\WallabagCoreTestCase; class TagControllerTest extends WallabagCoreTestCase { + public $tagName = 'opensource'; + public function testList() { $this->logInAs('admin'); @@ -31,7 +33,7 @@ class TagControllerTest extends WallabagCoreTestCase $form = $crawler->filter('button[id=tag_save]')->form(); $data = array( - 'tag[label]' => 'opensource', + 'tag[label]' => $this->tagName, ); $client->submit($form, $data); @@ -65,4 +67,30 @@ class TagControllerTest extends WallabagCoreTestCase $this->assertEquals(2, count($newEntry->getTags())); } + + public function testRemoveTagFromEntry() + { + $this->logInAs('admin'); + $client = $this->getClient(); + + $entry = $client->getContainer() + ->get('doctrine.orm.entity_manager') + ->getRepository('WallabagCoreBundle:Entry') + ->findOneByUsernameAndNotArchived('admin'); + + $tag = $client->getContainer() + ->get('doctrine.orm.entity_manager') + ->getRepository('WallabagCoreBundle:Tag') + ->findOneByEntryAndTagLabel($entry, $this->tagName); + + $client->request('GET', '/remove-tag/'.$entry->getId().'/'.$tag->getId()); + + $this->assertEquals(302, $client->getResponse()->getStatusCode()); + + $this->assertNotContains($this->tagName, $entry->getTags()); + + $client->request('GET', '/remove-tag/'.$entry->getId().'/'.$tag->getId()); + + $this->assertEquals(404, $client->getResponse()->getStatusCode()); + } }