/** * Setup commands before test case */ protected function setUp() { $ruckusing_config = (require RUCKUSING_BASE . '/config/database.inc.php'); if (!is_array($ruckusing_config) || !(array_key_exists("db", $ruckusing_config) && array_key_exists("mysql_test", $ruckusing_config['db']))) { $this->markTestSkipped("\n'mysql_test' DB is not defined in config/database.inc.php\n\n"); } $test_db = $ruckusing_config['db']['mysql_test']; //setup our log $logger = Ruckusing_Util_Logger::instance(RUCKUSING_BASE . '/tests/logs/test.log'); $this->adapter = new Ruckusing_Adapter_MySQL_Base($test_db, $logger); $this->adapter->logger->log("Test run started: " . date('Y-m-d g:ia T')); //create the schema table if necessary $this->adapter->create_schema_version_table(); $framework = new Ruckusing_FrameworkRunner($ruckusing_config, array('ENV=mysql_test')); $this->migrations_dir = $framework->migrations_directory(); if (!is_dir($this->migrations_dir)) { mkdir($this->migrations_dir, 0755, true); } }
protected function setUp() { global $ruckusing_db_config; if (!is_array($ruckusing_db_config) || !array_key_exists("test", $ruckusing_db_config)) { die("\n'test' DB is not defined in config/database.inc.php\n\n"); } $test_db = $ruckusing_db_config['test']; //setup our log $logger = Ruckusing_Logger::instance(RUCKUSING_BASE . '/tests/logs/test.log'); $this->adapter = new Ruckusing_MySQLAdapter($test_db, $logger); $this->adapter->logger->log("Test run started: " . date('Y-m-d g:ia T')); //create the schema table if necessary $this->adapter->create_schema_version_table(); $framework = new Ruckusing_FrameworkRunner($ruckusing_db_config, null); $this->migrations_dir = $framework->migrations_directory(); if (!is_dir($this->migrations_dir)) { mkdir($this->migrations_dir); } }
require RUCKUSING_BASE . '/lib/classes/util/class.Ruckusing_MigratorUtil.php'; require RUCKUSING_BASE . '/lib/classes/class.Ruckusing_FrameworkRunner.php'; $args = parse_args($argv); $framework = new Ruckusing_FrameworkRunner($ruckusing_db_config, null); //input sanity check if (!is_array($args) || is_array($args) && !array_key_exists('name', $args)) { print_help(true); } $migration_name = $args['name']; //clear any filesystem stats cache clearstatcache(); //generate a complete migration file $next_version = Ruckusing_MigratorUtil::generate_timestamp(); $klass = Ruckusing_NamingUtil::camelcase($migration_name); $file_name = $next_version . '_' . $klass . '.php'; $migrations_dir = $framework->migrations_directory(); $template_str = get_template($klass); if (!is_dir($migrations_dir)) { printf("\n\tMigrations directory (%s doesn't exist, attempting to create.", $migrations_dir); if (mkdir($migrations_dir) === FALSE) { printf("\n\tUnable to create migrations directory at %s, check permissions?", $migrations_dir); } else { printf("\n\tCreated OK"); } } //check to make sure our destination directory is writable if (!is_writable($migrations_dir)) { die_with_error("ERROR: migration directory '" . $migrations_dir . "' is not writable by the current user. Check permissions and try again."); } //write it out! $full_path = $migrations_dir . '/' . $file_name;