summaryrefslogtreecommitdiffstats
path: root/tests/db/EntityTest.php
diff options
context:
space:
mode:
authorBernhard Posselt <nukeawhale@gmail.com>2013-03-20 10:46:37 +0100
committerBernhard Posselt <nukeawhale@gmail.com>2013-03-20 10:46:37 +0100
commitfa3a2e469db519571fa7dc13bc832e7de1f8057f (patch)
tree44a3a31876e9d1b3365b848a235477b86a18d1e8 /tests/db/EntityTest.php
parentacb40d091fc096674b12ab3c95cabf49a42172c9 (diff)
throw exceptions when attributes dont exist
Diffstat (limited to 'tests/db/EntityTest.php')
-rw-r--r--tests/db/EntityTest.php52
1 files changed, 35 insertions, 17 deletions
diff --git a/tests/db/EntityTest.php b/tests/db/EntityTest.php
index 793ca8ded..9002f5f5e 100644
--- a/tests/db/EntityTest.php
+++ b/tests/db/EntityTest.php
@@ -36,8 +36,10 @@ class TestEntity extends Entity {
class EntityTest extends \PHPUnit_Framework_TestCase {
- protected function setUp(){
+ private $entity;
+ protected function setUp(){
+ $this->entity = new TestEntity();
}
@@ -46,54 +48,70 @@ class EntityTest extends \PHPUnit_Framework_TestCase {
'pre_name' => 'john',
'email' => 'john@something.com'
);
- $entity = new TestEntity();
+ $this->entity = new TestEntity();
- $entity->fromRow($row);
+ $this->entity->fromRow($row);
- $this->assertEquals($row['pre_name'], $entity->getPreName());
- $this->assertEquals($row['email'], $entity->getEmail());
+ $this->assertEquals($row['pre_name'], $this->entity->getPreName());
+ $this->assertEquals($row['email'], $this->entity->getEmail());
}
public function testGetSetId(){
$id = 3;
- $entity = new TestEntity();
- $entity->setId(3);
+ $this->entity->setId(3);
- $this->assertEquals($id, $entity->getId());
+ $this->assertEquals($id, $this->entity->getId());
}
public function testColumnToPropertyNoReplacement(){
$column = 'my';
- $entity = new TestEntity();
$this->assertEquals('my',
- $entity->columnToProperty($column));
+ $this->entity->columnToProperty($column));
}
public function testColumnToProperty(){
$column = 'my_attribute';
- $entity = new TestEntity();
$this->assertEquals('myAttribute',
- $entity->columnToProperty($column));
+ $this->entity->columnToProperty($column));
}
public function testPropertyToColumnNoReplacement(){
$property = 'my';
- $entity = new TestEntity();
$this->assertEquals('my',
- $entity->propertyToColumn($property));
+ $this->entity->propertyToColumn($property));
}
public function testSetterMarksFieldUpdated(){
$id = 3;
- $entity = new TestEntity();
- $entity->setId(3);
+ $this->entity->setId(3);
+
+ $this->assertContains('id', $this->entity->getUpdatedFields());
+ }
+
+
+ public function testCallShouldOnlyWorkForGetterSetter(){
+ $this->setExpectedException('\BadFunctionCallException');
+
+ $this->entity->something();
+ }
+
+
+ public function testGetterShouldFailIfAttributeNotDefined(){
+ $this->setExpectedException('\BadFunctionCallException');
+
+ $this->entity->getTest();
+ }
+
+
+ public function testSetterShouldFailIfAttributeNotDefined(){
+ $this->setExpectedException('\BadFunctionCallException');
- $this->assertContains('id', $entity->getUpdatedFields());
+ $this->entity->setTest();
}
} \ No newline at end of file