aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_framework/phpbb_test_case_helpers.php
diff options
context:
space:
mode:
authorNathan Guse <nathaniel.guse@gmail.com>2013-06-24 13:49:29 -0500
committerNathan Guse <nathaniel.guse@gmail.com>2013-06-24 13:49:29 -0500
commitff84aed0b2e5bb2def73a1861e601ad9fb8856df (patch)
tree22ffb4b331619cfb96002b526c6b45b3fc297332 /tests/test_framework/phpbb_test_case_helpers.php
parent2dd58413e26434568bd768549e621e72b5ccb33c (diff)
parenta5c971176be81f854772919713da6db506fa7cd1 (diff)
downloadforums-ff84aed0b2e5bb2def73a1861e601ad9fb8856df.tar
forums-ff84aed0b2e5bb2def73a1861e601ad9fb8856df.tar.gz
forums-ff84aed0b2e5bb2def73a1861e601ad9fb8856df.tar.bz2
forums-ff84aed0b2e5bb2def73a1861e601ad9fb8856df.tar.xz
forums-ff84aed0b2e5bb2def73a1861e601ad9fb8856df.zip
Merge branch 'develop' of github.com:phpbb/phpbb3 into feature/twig
# By Dhruv (35) and others # Via Andreas Fischer (15) and others * 'develop' of github.com:phpbb/phpbb3: (75 commits) [ticket/10776] update min php version 5.3.3 in readme [ticket/11503] similar implementation for mssql_native and odbc [ticket/11603] Fix out dated comment [ticket/11603] Fix usage note [ticket/11604] Skip installer step where config.php is created. [ticket/11603] Throw RuntimeExceptions instead of using exit() [ticket/11603] Avoid using cURL [ticket/11604] Fix case where config.php is not generated by phpBB. [ticket/11604] Use variables for config.php filesnames. [ticket/11561] Specify used tables in notification fixture, so they are emptied [ticket/11094] Add textbox for jabber while memberlist search [ticket/10820] fix if condition to check for IE [ticket/11603] Split api_request into two functions (query only vs. full url) [ticket/11603] Fix spacing and add some comments [ticket/10820] Add additional check for IE in condition [ticket/11603] Fix github API calls [ticket/11603] Rename network to forks and fix handling [ticket/11603] Fix github api url and use curl with valid user agent [ticket/10820] Fix function docblock [ticket/10820] Inject IE version in function ...
Diffstat (limited to 'tests/test_framework/phpbb_test_case_helpers.php')
-rw-r--r--tests/test_framework/phpbb_test_case_helpers.php71
1 files changed, 50 insertions, 21 deletions
diff --git a/tests/test_framework/phpbb_test_case_helpers.php b/tests/test_framework/phpbb_test_case_helpers.php
index 20ae384f21..50b2bf03ec 100644
--- a/tests/test_framework/phpbb_test_case_helpers.php
+++ b/tests/test_framework/phpbb_test_case_helpers.php
@@ -18,6 +18,56 @@ class phpbb_test_case_helpers
$this->test_case = $test_case;
}
+ /**
+ * This should only be called once before the tests are run.
+ * This is used to copy the fixtures to the phpBB install
+ */
+ public function copy_ext_fixtures($fixtures_dir, $fixtures)
+ {
+ global $phpbb_root_path;
+
+ if (file_exists($phpbb_root_path . 'ext/'))
+ {
+ // First, move any extensions setup on the board to a temp directory
+ $this->copy_dir($phpbb_root_path . 'ext/', $phpbb_root_path . 'store/temp_ext/');
+
+ // Then empty the ext/ directory on the board (for accurate test cases)
+ $this->empty_dir($phpbb_root_path . 'ext/');
+ }
+
+ // Copy our ext/ files from the test case to the board
+ foreach ($fixtures as $fixture)
+ {
+ $this->copy_dir($fixtures_dir . $fixture, $phpbb_root_path . 'ext/' . $fixture);
+ }
+ }
+
+ /**
+ * This should only be called once after the tests are run.
+ * This is used to remove the fixtures from the phpBB install
+ */
+ public function restore_original_ext_dir()
+ {
+ global $phpbb_root_path;
+
+ // Remove all of the files we copied from test ext -> board ext
+ $this->empty_dir($phpbb_root_path . 'ext/');
+
+ // Copy back the board installed extensions from the temp directory
+ if (file_exists($phpbb_root_path . 'store/temp_ext/'))
+ {
+ $this->copy_dir($phpbb_root_path . 'store/temp_ext/', $phpbb_root_path . 'ext/');
+
+ // Remove all of the files we copied from board ext -> temp_ext
+ $this->empty_dir($phpbb_root_path . 'store/temp_ext/');
+ }
+
+ if (file_exists($phpbb_root_path . 'store/temp_ext/'))
+ {
+ $this->empty_dir($phpbb_root_path . 'store/temp_ext/');
+ }
+ }
+
public function setExpectedTriggerError($errno, $message = '')
{
$exceptionName = '';
@@ -203,27 +253,6 @@ class phpbb_test_case_helpers
}
/**
- * Remove files/directories that are listed in an array
- * Designed for use with $this->copy_dir()
- *
- * @param array $file_list
- */
- public function remove_files($file_list)
- {
- foreach ($file_list as $file)
- {
- if (is_dir($file))
- {
- rmdir($file);
- }
- else
- {
- unlink($file);
- }
- }
- }
-
- /**
* Empty directory (remove any subdirectories/files below)
*
* @param array $file_list