1
0
mirror of synced 2024-12-14 07:06:04 +03:00

tests for Firebird and Mssql sequence drivers

This commit is contained in:
zYne 2007-06-17 17:51:35 +00:00
parent af09158d12
commit 0833fc572d
3 changed files with 54 additions and 3 deletions

View File

@ -30,5 +30,26 @@
* @since 1.0 * @since 1.0
* @version $Revision$ * @version $Revision$
*/ */
class Doctrine_Sequence_Firebird_TestCase extends Doctrine_UnitTestCase { class Doctrine_Sequence_Firebird_TestCase extends Doctrine_UnitTestCase
{
public function testCurrIdExecutesSql()
{
$this->sequence->currId('user');
$this->assertEqual($this->adapter->pop(), 'SELECT GEN_ID(user_seq, 0) as the_value FROM RDB$DATABASE');
}
public function testNextIdExecutesSql()
{
$id = $this->sequence->nextId('user');
$this->assertEqual($this->adapter->pop(), 'SELECT GEN_ID(user_seq, 1) as the_value FROM RDB$DATABASE');
}
public function testLastInsertIdCallsPdoLevelEquivalent()
{
$id = $this->sequence->lastInsertId('user');
$this->assertEqual($id, 1);
$this->assertEqual($this->adapter->pop(), 'LAST_INSERT_ID()');
}
} }

View File

@ -30,5 +30,34 @@
* @since 1.0 * @since 1.0
* @version $Revision$ * @version $Revision$
*/ */
class Doctrine_Sequence_Mssql_TestCase extends Doctrine_UnitTestCase { class Doctrine_Sequence_Mssql_TestCase extends Doctrine_UnitTestCase
{
public function testCurrIdExecutesSql()
{
$id = $this->sequence->currId('user');
$this->assertEqual($this->adapter->pop(), 'DELETE FROM user_seq WHERE id < 0');
$this->assertEqual($this->adapter->pop(), 'SELECT @@IDENTITY');
$this->assertEqual($this->adapter->pop(), 'SELECT @@VERSION');
$this->assertEqual($this->adapter->pop(), 'SET IDENTITY_INSERT user_seq ON INSERT INTO user_seq (id) VALUES (0)');
$this->assertEqual($this->adapter->pop(), 'SELECT COUNT(1) FROM user_seq');
}
public function testNextIdExecutesSql()
{
$id = $this->sequence->nextId('user');
$this->assertEqual($this->adapter->pop(), 'DELETE FROM user_seq WHERE id < 0');
$this->assertEqual($this->adapter->pop(), 'SELECT @@IDENTITY');
$this->assertEqual($this->adapter->pop(), 'SELECT @@VERSION');
$this->assertEqual($this->adapter->pop(), 'SET IDENTITY_INSERT user_seq ON INSERT INTO user_seq (id) VALUES (0)');
$this->assertEqual($this->adapter->pop(), 'SELECT COUNT(1) FROM user_seq');
}
public function testLastInsertIdCallsPdoLevelEquivalent()
{
$id = $this->sequence->lastInsertId('user');
$this->assertEqual($this->adapter->pop(), 'SELECT @@IDENTITY');
}
} }

View File

@ -30,7 +30,8 @@
* @since 1.0 * @since 1.0
* @version $Revision$ * @version $Revision$
*/ */
class Doctrine_Sequence_Pgsql_TestCase extends Doctrine_UnitTestCase { class Doctrine_Sequence_Pgsql_TestCase extends Doctrine_UnitTestCase
{
public function testCurrIdExecutesSql() public function testCurrIdExecutesSql()
{ {
$this->sequence->currId('user'); $this->sequence->currId('user');