protected function DrupalWebTestCase::tearDown in SimpleTest 7
Same name and namespace in other branches
- 6.2 drupal_web_test_case.php \DrupalWebTestCase::tearDown()
- 7.2 drupal_web_test_case.php \DrupalWebTestCase::tearDown()
Delete created files and temporary files directory, delete the tables created by setUp(), and reset the database prefix.
3 calls to DrupalWebTestCase::tearDown()
- BootstrapIPAddressTestCase::tearDown in tests/
bootstrap.test - Delete created files and temporary files directory, delete the tables created by setUp(), and reset the database prefix.
- JavaScriptTestCase::tearDown in tests/
common.test - Delete created files and temporary files directory, delete the tables created by setUp(), and reset the database prefix.
- StreamWrapperTest::tearDown in tests/
file.test - Delete created files and temporary files directory, delete the tables created by setUp(), and reset the database prefix.
3 methods override DrupalWebTestCase::tearDown()
- BootstrapIPAddressTestCase::tearDown in tests/
bootstrap.test - Delete created files and temporary files directory, delete the tables created by setUp(), and reset the database prefix.
- JavaScriptTestCase::tearDown in tests/
common.test - Delete created files and temporary files directory, delete the tables created by setUp(), and reset the database prefix.
- StreamWrapperTest::tearDown in tests/
file.test - Delete created files and temporary files directory, delete the tables created by setUp(), and reset the database prefix.
File
- ./
drupal_web_test_case.php, line 1158
Class
- DrupalWebTestCase
- Test case for typical Drupal tests.
Code
protected function tearDown() {
global $db_prefix, $user, $language;
// In case a fatal error occured that was not in the test process read the
// log to pick up any fatal errors.
$db_prefix_temp = $db_prefix;
$db_prefix = $this->originalPrefix;
simpletest_log_read($this->testId, $db_prefix, get_class($this), TRUE);
$db_prefix = $db_prefix_temp;
$emailCount = count(variable_get('drupal_test_email_collector', array()));
if ($emailCount) {
$message = format_plural($emailCount, t('!count e-mail was sent during this test.'), t('!count e-mails were sent during this test.'), array(
'!count' => $emailCount,
));
$this
->pass($message, t('E-mail'));
}
if (preg_match('/simpletest\\d+/', $db_prefix)) {
// Delete temporary files directory.
file_unmanaged_delete_recursive($this->originalFileDirectory . '/' . $db_prefix);
// Remove all prefixed tables (all the tables in the schema).
$schema = drupal_get_schema(NULL, TRUE);
$ret = array();
foreach ($schema as $name => $table) {
db_drop_table($name);
}
// Return the database prefix to the original.
$db_prefix = $this->originalPrefix;
// Return the user to the original one.
$user = $this->originalUser;
drupal_save_session(TRUE);
// Ensure that internal logged in variable and cURL options are reset.
$this->loggedInUser = FALSE;
$this->additionalCurlOptions = array();
// Reload module list and implementations to ensure that test module hooks
// aren't called after tests.
module_list(TRUE);
module_implements('', FALSE, TRUE);
// Reset the Field API.
field_cache_clear();
// Rebuild caches.
$this
->refreshVariables();
// Reset language.
$language = $this->originalLanguage;
if ($this->originalLanguageDefault) {
$GLOBALS['conf']['language_default'] = $this->originalLanguageDefault;
}
// Close the CURL handler.
$this
->curlClose();
}
}