diff options
Diffstat (limited to 'tests')
3 files changed, 58 insertions, 76 deletions
diff --git a/tests/Wallabag/CoreBundle/Command/InstallCommandTest.php b/tests/Wallabag/CoreBundle/Command/InstallCommandTest.php index 122a87d4..71c2ffc6 100644 --- a/tests/Wallabag/CoreBundle/Command/InstallCommandTest.php +++ b/tests/Wallabag/CoreBundle/Command/InstallCommandTest.php | |||
@@ -67,18 +67,14 @@ class InstallCommandTest extends WallabagCoreTestCase | |||
67 | 67 | ||
68 | $command = $application->find('wallabag:install'); | 68 | $command = $application->find('wallabag:install'); |
69 | 69 | ||
70 | // We mock the QuestionHelper | ||
71 | $question = $this->getMockBuilder('Symfony\Component\Console\Helper\QuestionHelper') | ||
72 | ->disableOriginalConstructor() | ||
73 | ->getMock(); | ||
74 | $question->expects($this->any()) | ||
75 | ->method('ask') | ||
76 | ->will($this->returnValue('yes_'.uniqid('', true))); | ||
77 | |||
78 | // We override the standard helper with our mock | ||
79 | $command->getHelperSet()->set($question, 'question'); | ||
80 | |||
81 | $tester = new CommandTester($command); | 70 | $tester = new CommandTester($command); |
71 | $tester->setInputs([ | ||
72 | 'y', // dropping database | ||
73 | 'y', // create super admin | ||
74 | 'username_'.uniqid('', true), // username | ||
75 | 'password_'.uniqid('', true), // password | ||
76 | 'email_'.uniqid('', true).'@wallabag.it', // email | ||
77 | ]); | ||
82 | $tester->execute([ | 78 | $tester->execute([ |
83 | 'command' => $command->getName(), | 79 | 'command' => $command->getName(), |
84 | ]); | 80 | ]); |
@@ -97,18 +93,13 @@ class InstallCommandTest extends WallabagCoreTestCase | |||
97 | 93 | ||
98 | $command = $application->find('wallabag:install'); | 94 | $command = $application->find('wallabag:install'); |
99 | 95 | ||
100 | // We mock the QuestionHelper | ||
101 | $question = $this->getMockBuilder('Symfony\Component\Console\Helper\QuestionHelper') | ||
102 | ->disableOriginalConstructor() | ||
103 | ->getMock(); | ||
104 | $question->expects($this->any()) | ||
105 | ->method('ask') | ||
106 | ->will($this->returnValue('yes_'.uniqid('', true))); | ||
107 | |||
108 | // We override the standard helper with our mock | ||
109 | $command->getHelperSet()->set($question, 'question'); | ||
110 | |||
111 | $tester = new CommandTester($command); | 96 | $tester = new CommandTester($command); |
97 | $tester->setInputs([ | ||
98 | 'y', // create super admin | ||
99 | 'username_'.uniqid('', true), // username | ||
100 | 'password_'.uniqid('', true), // password | ||
101 | 'email_'.uniqid('', true).'@wallabag.it', // email | ||
102 | ]); | ||
112 | $tester->execute([ | 103 | $tester->execute([ |
113 | 'command' => $command->getName(), | 104 | 'command' => $command->getName(), |
114 | '--reset' => true, | 105 | '--reset' => true, |
@@ -150,18 +141,13 @@ class InstallCommandTest extends WallabagCoreTestCase | |||
150 | 141 | ||
151 | $command = $application->find('wallabag:install'); | 142 | $command = $application->find('wallabag:install'); |
152 | 143 | ||
153 | // We mock the QuestionHelper | ||
154 | $question = $this->getMockBuilder('Symfony\Component\Console\Helper\QuestionHelper') | ||
155 | ->disableOriginalConstructor() | ||
156 | ->getMock(); | ||
157 | $question->expects($this->any()) | ||
158 | ->method('ask') | ||
159 | ->will($this->returnValue('yes_'.uniqid('', true))); | ||
160 | |||
161 | // We override the standard helper with our mock | ||
162 | $command->getHelperSet()->set($question, 'question'); | ||
163 | |||
164 | $tester = new CommandTester($command); | 144 | $tester = new CommandTester($command); |
145 | $tester->setInputs([ | ||
146 | 'y', // create super admin | ||
147 | 'username_'.uniqid('', true), // username | ||
148 | 'password_'.uniqid('', true), // password | ||
149 | 'email_'.uniqid('', true).'@wallabag.it', // email | ||
150 | ]); | ||
165 | $tester->execute([ | 151 | $tester->execute([ |
166 | 'command' => $command->getName(), | 152 | 'command' => $command->getName(), |
167 | ]); | 153 | ]); |
@@ -183,23 +169,12 @@ class InstallCommandTest extends WallabagCoreTestCase | |||
183 | 169 | ||
184 | $command = $application->find('wallabag:install'); | 170 | $command = $application->find('wallabag:install'); |
185 | 171 | ||
186 | // We mock the QuestionHelper | ||
187 | $question = $this->getMockBuilder('Symfony\Component\Console\Helper\QuestionHelper') | ||
188 | ->disableOriginalConstructor() | ||
189 | ->getMock(); | ||
190 | |||
191 | $question->expects($this->exactly(3)) | ||
192 | ->method('ask') | ||
193 | ->will($this->onConsecutiveCalls( | ||
194 | false, // don't want to reset the entire database | ||
195 | true, // do want to reset the schema | ||
196 | false // don't want to create a new user | ||
197 | )); | ||
198 | |||
199 | // We override the standard helper with our mock | ||
200 | $command->getHelperSet()->set($question, 'question'); | ||
201 | |||
202 | $tester = new CommandTester($command); | 172 | $tester = new CommandTester($command); |
173 | $tester->setInputs([ | ||
174 | 'n', // don't want to reset the entire database | ||
175 | 'y', // do want to reset the schema | ||
176 | 'n', // don't want to create a new user | ||
177 | ]); | ||
203 | $tester->execute([ | 178 | $tester->execute([ |
204 | 'command' => $command->getName(), | 179 | 'command' => $command->getName(), |
205 | ]); | 180 | ]); |
@@ -239,22 +214,11 @@ class InstallCommandTest extends WallabagCoreTestCase | |||
239 | 214 | ||
240 | $command = $application->find('wallabag:install'); | 215 | $command = $application->find('wallabag:install'); |
241 | 216 | ||
242 | // We mock the QuestionHelper | ||
243 | $question = $this->getMockBuilder('Symfony\Component\Console\Helper\QuestionHelper') | ||
244 | ->disableOriginalConstructor() | ||
245 | ->getMock(); | ||
246 | |||
247 | $question->expects($this->exactly(2)) | ||
248 | ->method('ask') | ||
249 | ->will($this->onConsecutiveCalls( | ||
250 | false, // don't want to reset the entire database | ||
251 | false // don't want to create a new user | ||
252 | )); | ||
253 | |||
254 | // We override the standard helper with our mock | ||
255 | $command->getHelperSet()->set($question, 'question'); | ||
256 | |||
257 | $tester = new CommandTester($command); | 217 | $tester = new CommandTester($command); |
218 | $tester->setInputs([ | ||
219 | 'n', // don't want to reset the entire database | ||
220 | 'n', // don't want to create a new user | ||
221 | ]); | ||
258 | $tester->execute([ | 222 | $tester->execute([ |
259 | 'command' => $command->getName(), | 223 | 'command' => $command->getName(), |
260 | ]); | 224 | ]); |
@@ -275,21 +239,11 @@ class InstallCommandTest extends WallabagCoreTestCase | |||
275 | 239 | ||
276 | $command = $application->find('wallabag:install'); | 240 | $command = $application->find('wallabag:install'); |
277 | 241 | ||
278 | // We mock the QuestionHelper | ||
279 | $question = $this->getMockBuilder('Symfony\Component\Console\Helper\QuestionHelper') | ||
280 | ->disableOriginalConstructor() | ||
281 | ->getMock(); | ||
282 | $question->expects($this->any()) | ||
283 | ->method('ask') | ||
284 | ->will($this->returnValue('yes_'.uniqid('', true))); | ||
285 | |||
286 | // We override the standard helper with our mock | ||
287 | $command->getHelperSet()->set($question, 'question'); | ||
288 | |||
289 | $tester = new CommandTester($command); | 242 | $tester = new CommandTester($command); |
290 | $tester->execute([ | 243 | $tester->execute([ |
291 | 'command' => $command->getName(), | 244 | 'command' => $command->getName(), |
292 | '--no-interaction' => true, | 245 | ], [ |
246 | 'interactive' => false, | ||
293 | ]); | 247 | ]); |
294 | 248 | ||
295 | $this->assertContains('Checking system requirements.', $tester->getDisplay()); | 249 | $this->assertContains('Checking system requirements.', $tester->getDisplay()); |
diff --git a/tests/Wallabag/CoreBundle/Controller/TagControllerTest.php b/tests/Wallabag/CoreBundle/Controller/TagControllerTest.php index c3b22dcd..80611a87 100644 --- a/tests/Wallabag/CoreBundle/Controller/TagControllerTest.php +++ b/tests/Wallabag/CoreBundle/Controller/TagControllerTest.php | |||
@@ -126,9 +126,19 @@ class TagControllerTest extends WallabagCoreTestCase | |||
126 | ->getRepository('WallabagCoreBundle:Tag') | 126 | ->getRepository('WallabagCoreBundle:Tag') |
127 | ->findOneByEntryAndTagLabel($entry, $this->tagName); | 127 | ->findOneByEntryAndTagLabel($entry, $this->tagName); |
128 | 128 | ||
129 | // We make a first request to set an history and test redirection after tag deletion | ||
130 | $client->request('GET', '/view/'.$entry->getId()); | ||
131 | $entryUri = $client->getRequest()->getUri(); | ||
129 | $client->request('GET', '/remove-tag/'.$entry->getId().'/'.$tag->getId()); | 132 | $client->request('GET', '/remove-tag/'.$entry->getId().'/'.$tag->getId()); |
130 | 133 | ||
131 | $this->assertEquals(302, $client->getResponse()->getStatusCode()); | 134 | $this->assertEquals(302, $client->getResponse()->getStatusCode()); |
135 | $this->assertEquals($entryUri, $client->getResponse()->getTargetUrl()); | ||
136 | |||
137 | // re-retrieve the entry to be sure to get fresh data from database (mostly for tags) | ||
138 | $entry = $client->getContainer() | ||
139 | ->get('doctrine.orm.entity_manager') | ||
140 | ->getRepository('WallabagCoreBundle:Entry') | ||
141 | ->findByUrlAndUserId('http://0.0.0.0/entry1', $this->getLoggedInUserId()); | ||
132 | 142 | ||
133 | $this->assertNotContains($this->tagName, $entry->getTags()); | 143 | $this->assertNotContains($this->tagName, $entry->getTags()); |
134 | 144 | ||
diff --git a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php index 0539f20a..f420d06a 100644 --- a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php +++ b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php | |||
@@ -89,4 +89,22 @@ class RedirectTest extends \PHPUnit_Framework_TestCase | |||
89 | 89 | ||
90 | $this->assertEquals($this->routerMock->generate('homepage'), $redirectUrl); | 90 | $this->assertEquals($this->routerMock->generate('homepage'), $redirectUrl); |
91 | } | 91 | } |
92 | |||
93 | public function testUserForRedirectWithIgnoreActionMarkAsRead() | ||
94 | { | ||
95 | $this->token->getUser()->getConfig()->setActionMarkAsRead(Config::REDIRECT_TO_HOMEPAGE); | ||
96 | |||
97 | $redirectUrl = $this->redirect->to('/unread/list', '', true); | ||
98 | |||
99 | $this->assertEquals('/unread/list', $redirectUrl); | ||
100 | } | ||
101 | |||
102 | public function testUserForRedirectNullWithFallbackWithIgnoreActionMarkAsRead() | ||
103 | { | ||
104 | $this->token->getUser()->getConfig()->setActionMarkAsRead(Config::REDIRECT_TO_HOMEPAGE); | ||
105 | |||
106 | $redirectUrl = $this->redirect->to(null, 'fallback', true); | ||
107 | |||
108 | $this->assertEquals('fallback', $redirectUrl); | ||
109 | } | ||
92 | } | 110 | } |