public function testRunner() { $connm = LazyRecord\ConnectionManager::getInstance(); $connm->addDataSource('default', array('dsn' => 'sqlite::memory:')); $runner = new LazyRecord\Migration\MigrationRunner('default'); $runner->load('tests/migrations'); $runner->runUpgradeAutomatically(); }
public function testMigrationUpgrade() { ob_start(); $connm = LazyRecord\ConnectionManager::getInstance(); $connm->addDataSource('default', array('dsn' => 'sqlite::memory:')); $conn = $connm->getConnection('default'); ok($conn); $driver = $connm->getQueryDriver('default'); $conn->query('CREATE TABLE foo (id integer primary key, name varchar(32));'); $migration = new FooMigration($driver, $conn); ok($migration); $migration->upgrade(); $connm->removeDataSource('default'); ob_end_clean(); }
public function insertIntoDataSource($driverType, $schema) { $connManager = LazyRecord\ConnectionManager::getInstance(); $connManager->free(); $this->registerDataSource($driverType); $pdo = $connManager->getConnection($driverType); $this->assertInstanceOf('PDO', $pdo); $queryDriver = $connManager->getQueryDriver($driverType); $builder = SqlBuilder::create($queryDriver, array('rebuild' => true)); $builder->build($schema); $sqls = $builder->build($schema); $this->assertNotEmpty($sqls); foreach ($sqls as $sql) { $this->assertQueryOK($pdo, $sql); } $this->assertTableExists($pdo, $schema->getTable()); }
public function testConnectionManager() { // $pdo = new PDO( 'sqlite3::memory:', null, null, array(PDO::ATTR_PERSISTENT => true) ); $conn = new Connection('sqlite::memory:'); ok($conn); $manager = LazyRecord\ConnectionManager::getInstance(); ok($manager); $manager->free(); $manager->add($conn, 'default'); $conn = $manager->getDefaultConnection(); ok($conn); $manager->addDataSource('master', array('dsn' => 'sqlite::memory:', 'user' => null, 'pass' => null, 'options' => array())); $master = $manager->getConnection('master'); ok($master); // array access test. ok($manager['master']); $manager->free(); }