protected function setUp() { parent::setUp(); $this->called['setUp'] = true; $this->phpErrorLevel = intval(ini_get('error_reporting')); // Cleaning up temporary files foreach ($this->tmpFiles as $fileName) { if (is_file($fileName) || is_link($fileName)) { unlink($fileName); } elseif (is_dir($fileName)) { wfRecursiveRemoveDir($fileName); } } if ($this->needsDB() && $this->db) { // Clean up open transactions while ($this->db->trxLevel() > 0) { $this->db->rollback(__METHOD__, 'flush'); } // Check for unsafe queries if ($this->db->getType() === 'mysql') { $this->db->query("SET sql_mode = 'STRICT_ALL_TABLES'"); } } DeferredUpdates::clearPendingUpdates(); ObjectCache::getMainWANInstance()->clearProcessCache(); // XXX: reset maintenance triggers // Hook into period lag checks which often happen in long-running scripts $lbFactory = MediaWikiServices::getInstance()->getDBLoadBalancerFactory(); Maintenance::setLBFactoryTriggers($lbFactory); ob_start('MediaWikiTestCase::wfResetOutputBuffersBarrier'); }