From 8314ce6871c3e6f28c5bc374d1b73afc85f58b85 Mon Sep 17 00:00:00 2001 From: Marc Alexander Date: Sat, 14 Feb 2015 15:59:29 +0100 Subject: [PATCH] [ticket/13612] Run meta refresh until extension is fully enabled PHPBB3-13612 --- .../phpbb_functional_test_case.php | 21 ++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index b6769f08d0..7479221263 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -410,7 +410,26 @@ class phpbb_functional_test_case extends phpbb_test_case $form = $crawler->selectButton('Enable')->form(); $crawler = self::submit($form); $this->add_lang('acp/extensions'); - $this->assertContainsLang('EXTENSION_ENABLE_SUCCESS', $crawler->filter('div.successbox')->text()); + + $meta_refresh = $crawler->filter('meta[http-equiv="refresh"]'); + + // Wait for extension to be fully enabled + while (sizeof($meta_refresh)) + { + preg_match('#url=.+/(adm+.+)#', $meta_refresh->attr('content'), $match); + $url = $match[1]; + $crawler = self::request('POST', $url); + $meta_refresh = $crawler->filter('meta[http-equiv="refresh"]'); + } + + if (!empty($meta_refresh)) + { + $this->assertContainsLang('EXTENSIONS_ADMIN', $crawler->filter('.main > h1')->text()); + } + else + { + $this->assertContainsLang('EXTENSION_ENABLE_SUCCESS', $crawler->filter('div.successbox')->text()); + } $this->logout(); }