Added some tests for new attributes
This commit is contained in:
parent
5f1a4074a0
commit
14075fa7ec
@ -1,9 +1,159 @@
|
||||
<?php
|
||||
require_once("UnitTestCase.php");
|
||||
|
||||
class Doctrine_ConfigurableTestCase extends Doctrine_UnitTestCase {
|
||||
class Doctrine_Configurable_TestCase extends Doctrine_UnitTestCase {
|
||||
public function prepareTables() { }
|
||||
public function prepareData() { }
|
||||
|
||||
public function testGetIndexNameFormatAttribute() {
|
||||
// default index name format is %_idx
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_IDXNAME_FORMAT), '%_idx');
|
||||
}
|
||||
public function testGetSequenceNameFormatAttribute() {
|
||||
// default sequence name format is %_seq
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_SEQNAME_FORMAT), '%_seq');
|
||||
}
|
||||
public function testSetIndexNameFormatAttribute() {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_IDXNAME_FORMAT, '%_index');
|
||||
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_IDXNAME_FORMAT), '%_index');
|
||||
}
|
||||
public function testSetSequenceNameFormatAttribute() {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_SEQNAME_FORMAT, '%_sequence');
|
||||
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_SEQNAME_FORMAT), '%_sequence');
|
||||
}
|
||||
public function testExceptionIsThrownWhenSettingIndexNameFormatAttributeAtTableLevel() {
|
||||
try {
|
||||
$this->connection->getTable('Entity')->setAttribute(Doctrine::ATTR_IDXNAME_FORMAT, '%_idx');
|
||||
$this->fail();
|
||||
} catch(Doctrine_Exception $e) {
|
||||
$this->pass();
|
||||
}
|
||||
}
|
||||
public function testExceptionIsThrownWhenSettingSequenceNameFormatAttributeAtTableLevel() {
|
||||
try {
|
||||
$this->connection->getTable('Entity')->setAttribute(Doctrine::ATTR_SEQNAME_FORMAT, '%_seq');
|
||||
$this->fail();
|
||||
} catch(Doctrine_Exception $e) {
|
||||
$this->pass();
|
||||
}
|
||||
}
|
||||
public function testSettingFieldCaseIsSuccesfulWithZero() {
|
||||
try {
|
||||
$this->connection->setAttribute(Doctrine::ATTR_FIELD_CASE, 0);
|
||||
$this->pass();
|
||||
} catch(Doctrine_Exception $e) {
|
||||
$this->fail();
|
||||
}
|
||||
}
|
||||
public function testSettingFieldCaseIsSuccesfulWithCaseConstants() {
|
||||
try {
|
||||
$this->connection->setAttribute(Doctrine::ATTR_FIELD_CASE, CASE_LOWER);
|
||||
$this->pass();
|
||||
} catch(Doctrine_Exception $e) {
|
||||
$this->fail();
|
||||
}
|
||||
}
|
||||
public function testSettingFieldCaseIsSuccesfulWithCaseConstants2() {
|
||||
try {
|
||||
$this->connection->setAttribute(Doctrine::ATTR_FIELD_CASE, CASE_UPPER);
|
||||
$this->pass();
|
||||
} catch(Doctrine_Exception $e) {
|
||||
$this->fail();
|
||||
}
|
||||
}
|
||||
public function testExceptionIsThrownWhenSettingFieldCaseToNotZeroOneOrTwo() {
|
||||
try {
|
||||
$this->connection->setAttribute(Doctrine::ATTR_FIELD_CASE, -1);
|
||||
$this->fail();
|
||||
} catch(Doctrine_Exception $e) {
|
||||
$this->pass();
|
||||
}
|
||||
}
|
||||
public function testExceptionIsThrownWhenSettingFieldCaseToNotZeroOneOrTwo2() {
|
||||
try {
|
||||
$this->connection->setAttribute(Doctrine::ATTR_FIELD_CASE, 5);
|
||||
$this->fail();
|
||||
} catch(Doctrine_Exception $e) {
|
||||
$this->pass();
|
||||
}
|
||||
}
|
||||
public function testDefaultQuoteIdentifierAttributeValueIsFalse() {
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_QUOTE_IDENTIFIER), false);
|
||||
}
|
||||
public function testQuoteIdentifierAttributeAcceptsBooleans() {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_QUOTE_IDENTIFIER, true);
|
||||
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_QUOTE_IDENTIFIER), true);
|
||||
}
|
||||
public function testDefaultSequenceColumnNameAttributeValueIsId() {
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_SEQCOL_NAME), 'id');
|
||||
}
|
||||
public function testSequenceColumnNameAttributeAcceptsStrings() {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_SEQCOL_NAME, 'sequence');
|
||||
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_SEQCOL_NAME), 'sequence');
|
||||
}
|
||||
public function testValidatorAttributeAcceptsBooleans() {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_VLD, true);
|
||||
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_VLD), true);
|
||||
}
|
||||
public function testAutoLengthValidationAttributeAcceptsBooleans() {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_AUTO_LENGTH_VLD, true);
|
||||
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_AUTO_LENGTH_VLD), true);
|
||||
}
|
||||
public function testAutoTypeValidationAttributeAcceptsBooleans() {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_AUTO_TYPE_VLD, true);
|
||||
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_AUTO_TYPE_VLD), true);
|
||||
}
|
||||
public function testDefaultPortabilityAttributeValueIsAll() {
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_PORTABILITY), Doctrine::PORTABILITY_ALL);
|
||||
}
|
||||
public function testPortabilityAttributeAcceptsPortabilityConstants() {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_PORTABILITY, Doctrine::PORTABILITY_RTRIM | Doctrine::PORTABILITY_FIX_CASE);
|
||||
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_PORTABILITY),
|
||||
Doctrine::PORTABILITY_RTRIM | Doctrine::PORTABILITY_FIX_CASE);
|
||||
}
|
||||
public function testDefaultListenerIsDoctrineEventListener() {
|
||||
$this->assertTrue($this->manager->getAttribute(Doctrine::ATTR_LISTENER) instanceof Doctrine_EventListener);
|
||||
}
|
||||
public function testListenerAttributeAcceptsEventListenerObjects() {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_LISTENER, new Doctrine_EventListener_Debugger());
|
||||
|
||||
$this->assertTrue($this->manager->getAttribute(Doctrine::ATTR_LISTENER) instanceof Doctrine_EventListener_Debugger);
|
||||
}
|
||||
public function testCollectionKeyAttributeAcceptsValidColumnName() {
|
||||
try {
|
||||
$this->connection->getTable('User')->setAttribute(Doctrine::ATTR_COLL_KEY, 'name');
|
||||
|
||||
$this->pass();
|
||||
} catch(Exception $e) {
|
||||
$this->fail();
|
||||
}
|
||||
}
|
||||
public function testSettingInvalidColumnNameToCollectionKeyAttributeThrowsException() {
|
||||
try {
|
||||
$this->connection->getTable('User')->setAttribute(Doctrine::ATTR_COLL_KEY, 'unknown');
|
||||
|
||||
$this->fail();
|
||||
} catch(Exception $e) {
|
||||
$this->pass();
|
||||
}
|
||||
}
|
||||
public function testSettingCollectionKeyAttributeOnOtherThanTableLevelThrowsException() {
|
||||
try {
|
||||
$this->connection->setAttribute(Doctrine::ATTR_COLL_KEY, 'name');
|
||||
|
||||
$this->fail();
|
||||
} catch(Exception $e) {
|
||||
$this->pass();
|
||||
}
|
||||
}
|
||||
public function testSetAttribute() {
|
||||
$table = $this->connection->getTable("User");
|
||||
/**
|
||||
@ -22,9 +172,6 @@ class Doctrine_ConfigurableTestCase extends Doctrine_UnitTestCase {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_BATCH_SIZE, 5);
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_BATCH_SIZE),5);
|
||||
|
||||
$this->manager->setAttribute(Doctrine::ATTR_LISTENER, new Doctrine_EventListener_Debugger());
|
||||
$this->assertTrue($this->manager->getAttribute(Doctrine::ATTR_LISTENER) instanceof Doctrine_EventListener_Debugger);
|
||||
|
||||
$this->manager->setAttribute(Doctrine::ATTR_LOCKMODE, Doctrine::LOCK_PESSIMISTIC);
|
||||
$this->assertEqual($this->manager->getAttribute(Doctrine::ATTR_LOCKMODE), Doctrine::LOCK_PESSIMISTIC);
|
||||
|
||||
@ -54,28 +201,6 @@ class Doctrine_ConfigurableTestCase extends Doctrine_UnitTestCase {
|
||||
$this->connection->commit();
|
||||
}
|
||||
|
||||
$e = false;
|
||||
try {
|
||||
$this->manager->setAttribute(Doctrine::ATTR_COLL_KEY, "name");
|
||||
} catch(Exception $e) {
|
||||
}
|
||||
$this->assertTrue($e instanceof Exception);
|
||||
|
||||
$e = false;
|
||||
try {
|
||||
$table->setAttribute(Doctrine::ATTR_COLL_KEY, "unknown");
|
||||
} catch(Exception $e) {
|
||||
}
|
||||
$this->assertTrue($e instanceof Exception);
|
||||
|
||||
$e = true;
|
||||
try {
|
||||
$table->setAttribute(Doctrine::ATTR_COLL_KEY, "name");
|
||||
} catch(Exception $e) {
|
||||
}
|
||||
$this->assertTrue($e);
|
||||
|
||||
$e = false;
|
||||
try {
|
||||
$this->connection->beginTransaction();
|
||||
$this->connection->setAttribute(Doctrine::ATTR_LOCKMODE, Doctrine::LOCK_PESSIMISTIC);
|
||||
|
Loading…
x
Reference in New Issue
Block a user