static function set_up_once() { // needs to recreate the database schema with language properties self::kill_temp_db(); // store old defaults if(class_exists('Translatable')) { self::$origTranslatableSettings['has_extension'] = singleton('SiteTree')->hasExtension('Translatable'); self::$origTranslatableSettings['default_locale'] = Translatable::default_locale(); // overwrite locale Translatable::set_default_locale("en_US"); // refresh the extended statics - different fields in $db with Translatable enabled if(self::$origTranslatableSettings['has_extension']) { Object::remove_extension('SiteTree', 'Translatable'); Object::remove_extension('SiteConfig', 'Translatable'); } } // recreate database with new settings $dbname = self::create_temp_db(); DB::set_alternative_database_name($dbname); parent::set_up_once(); }
static function set_up_once() { // needs to recreate the database schema with language properties self::kill_temp_db(); // store old defaults self::$origTranslatableSettings['has_extension'] = singleton('SiteTree')->hasExtension('Translatable'); self::$origTranslatableSettings['default_locale'] = Translatable::default_locale(); // overwrite locale Translatable::set_default_locale("en_US"); // refresh the decorated statics - different fields in $db with Translatable enabled if (!self::$origTranslatableSettings['has_extension']) { Object::add_extension('SiteTree', 'Translatable'); } Object::add_extension('TranslatableTest_DataObject', 'Translatable'); // clear singletons, they're caching old extension info which is used in DatabaseAdmin->doBuild() global $_SINGLETONS; $_SINGLETONS = array(); // recreate database with new settings $dbname = self::create_temp_db(); DB::set_alternative_database_name($dbname); parent::set_up_once(); }
function tearDown() { SapphireTest::kill_temp_db(); DB::set_alternative_database_name(null); }
function endsession() { SapphireTest::kill_temp_db(); DB::set_alternative_database_name(null); return "<p>Test session ended.</p>"; }
/** * @OVERRIDE * * Overridden to prevent deletion of custom defined tmpdb * * @global type $TESTING_CONFIG */ function tearDown() { global $TESTING_CONFIG; if (!isset($TESTING_CONFIG['database'])) { parent::tearDown(); } if (PHP_SAPI != 'cli') { DB::set_alternative_database_name(null); } }