Example #1
0
 public function testExecuteWithForceOnOffsetMigration()
 {
     $this->_adapter->setTableSchemaExist(true);
     $versions = array(array('version' => '20120109064438'), array('version' => '20120110064438'), array('version' => '20120111064438'));
     $this->_adapter->versions = $versions;
     $e = new Phigrate_Exception('test force');
     $this->_adapter->throwException($e);
     $actual = $this->object->execute(array('VERSION' => '-2', '--force' => true));
     $regexp = '/^Started: \\d{4}-\\d{2}-\\d{2} \\d{1,2}:\\d{2}(am|pm) \\w{3,4}\\012+' . '\\[db:migrate\\]:\\012+\\tMigrating DOWN to: 20120109064438\\012+' . '========= CreateAddresses ======== \\(\\d+.\\d{2}\\)\\012+\\033\\[1;31mError:\\033\\[0m test force\\012+' . '========= AddIndexToUsers ======== \\(\\d+.\\d{2}\\)\\012+\\033\\[1;31mError:\\033\\[0m test force\\012+' . 'Finished: \\d{4}-\\d{2}-\\d{2} \\d{1,2}:\\d{2}(am|pm) \\w{3,4}\\012+$/';
     $this->assertNotEmpty($actual);
     $this->assertRegExp($regexp, $actual);
     $versions = array(array('version' => '20120109064438'));
     $this->assertEquals($versions, $this->_adapter->versions);
     $this->_adapter->throwException(null);
 }
Example #2
0
 public function testExecuteWithVersionTaskWithTableSchemaAndParameterForce()
 {
     $parameters = array('monScript.php', '-d', PHIGRATE_BASE . '/tests/fixtures/config/database.ini', '-c', PHIGRATE_BASE . '/tests/fixtures/config/application.ini', '-m', PHIGRATE_BASE . '/tests/fixtures/db/migrate', '--force', 'db:migrate', 'VERSION=20120111064438');
     $actual = new Phigrate_FrameworkRunner($parameters);
     $adapter = new adapterTaskMock(array(), '');
     $adapter->setTableSchemaExist(true);
     $adapter->versions = array(array('version' => '20120109064438'));
     $e = new InvalidArgumentException('test force');
     $adapter->throwException($e);
     $actual->setAdapter($adapter);
     $task = $actual->execute();
     $regexp = '/Started: \\d{4}-\\d{2}-\\d{2} \\d{1,2}:\\d{2}(am|pm) \\w{3,4}\\012+' . '\\[db:migrate\\]:\\012+\\t+Migrating UP to: 20120111064438\\012+' . '========= AddIndexToUsers ======== \\(\\d+.\\d{2}\\)\\012+\\033\\[1;31mError:\\033\\[0m test force\\012+' . '========= CreateAddresses ======== \\(\\d+.\\d{2}\\)\\012+\\033\\[1;31mError:\\033\\[0m test force\\012+' . 'Finished: \\d{4}-\\d{2}-\\d{2} \\d{1,2}:\\d{2}(am|pm) \\w{3,4}\\012+$/';
     $this->assertNotEmpty($task);
     $this->assertRegExp($regexp, $task);
 }