diff options
author | Andreas Fischer <bantu@phpbb.com> | 2012-11-15 19:48:46 +0100 |
---|---|---|
committer | Andreas Fischer <bantu@phpbb.com> | 2012-11-15 19:48:46 +0100 |
commit | 14a42a97a856830f5856428a46017b0bf6b1588d (patch) | |
tree | 29f5731fb46378a5bc6aa5d84d76e7d1a22f5a57 /tests | |
parent | 27594130b0cb5d99a3350deeec6e6c6886f30155 (diff) | |
parent | af7ab2d3ac287db1a2c9ed623e21393cb429203f (diff) | |
download | forums-14a42a97a856830f5856428a46017b0bf6b1588d.tar forums-14a42a97a856830f5856428a46017b0bf6b1588d.tar.gz forums-14a42a97a856830f5856428a46017b0bf6b1588d.tar.bz2 forums-14a42a97a856830f5856428a46017b0bf6b1588d.tar.xz forums-14a42a97a856830f5856428a46017b0bf6b1588d.zip |
Merge remote-tracking branch 'p/ticket/11202-olympus' into develop-olympus
* p/ticket/11202-olympus:
[ticket/11202] Custom message does not make sense here, delete it.
[ticket/11202] Check response success before content assertions.
[ticket/11202] Add a heuristic function to check for response success.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/functional/browse_test.php | 3 | ||||
-rw-r--r-- | tests/test_framework/phpbb_functional_test_case.php | 17 |
2 files changed, 19 insertions, 1 deletions
diff --git a/tests/functional/browse_test.php b/tests/functional/browse_test.php index 26c18c4c1f..b5748059c6 100644 --- a/tests/functional/browse_test.php +++ b/tests/functional/browse_test.php @@ -15,18 +15,21 @@ class phpbb_functional_browse_test extends phpbb_functional_test_case public function test_index() { $crawler = $this->request('GET', 'index.php'); + $this->assert_response_success(); $this->assertGreaterThan(0, $crawler->filter('.topiclist')->count()); } public function test_viewforum() { $crawler = $this->request('GET', 'viewforum.php?f=2'); + $this->assert_response_success(); $this->assertGreaterThan(0, $crawler->filter('.topiclist')->count()); } public function test_viewtopic() { $crawler = $this->request('GET', 'viewtopic.php?t=1'); + $this->assert_response_success(); $this->assertGreaterThan(0, $crawler->filter('.postbody')->count()); } } diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index bd248a662e..7c03f874e9 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -205,7 +205,7 @@ class phpbb_functional_test_case extends phpbb_test_case $login = $this->client->submit($form, array('username' => 'admin', 'password' => 'admin')); $cookies = $this->cookieJar->all(); - + // The session id is stored in a cookie that ends with _sid - we assume there is only one such cookie foreach ($cookies as $cookie); { @@ -252,4 +252,19 @@ class phpbb_functional_test_case extends phpbb_test_case return call_user_func_array('sprintf', $args); } + + /** + * Heuristic function to check that the response is success. + * + * When php decides to die with a fatal error, it still sends 200 OK + * status code. This assertion tries to catch that. + * + * @return null + */ + public function assert_response_success() + { + $this->assertEquals(200, $this->client->getResponse()->getStatus()); + $content = $this->client->getResponse()->getContent(); + $this->assertNotContains('Fatal error:', $content); + } } |