AccessTestCase.php 2.46 KB
Newer Older
doctrine's avatar
doctrine committed
1 2
<?php
class Doctrine_AccessTestCase extends Doctrine_UnitTestCase {
3
    public function prepareData() { }
doctrine's avatar
doctrine committed
4 5
    public function prepareTables() {
        $this->tables = array("Entity", "User"); 
zYne's avatar
zYne committed
6
        parent::prepareTables();
doctrine's avatar
doctrine committed
7
    }
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
    public function testUnset() {

        

    }
    public function testIsset() {
        $user = new User();
        
        $this->assertTrue(isset($user->name));  
        $this->assertFalse(isset($user->unknown));
        
        $this->assertTrue(isset($user['name']));
        $this->assertFalse(isset($user['unknown']));
        
        $coll = new Doctrine_Collection('User');
        
        $this->assertFalse(isset($coll[0]));
        // test repeated call
        $this->assertFalse(isset($coll[0]));
        $coll[0];
        
        $this->assertTrue(isset($coll[0]));
        // test repeated call
        $this->assertTrue(isset($coll[0]));
    }
doctrine's avatar
doctrine committed
33
    public function testOffsetMethods() {
34 35
        $user = new User();
        $this->assertEqual($user["name"],null);
doctrine's avatar
doctrine committed
36

37 38 39 40
        $user["name"] = "Jack";
        $this->assertEqual($user["name"],"Jack");

        $user->save();
doctrine's avatar
doctrine committed
41

42
        $user = $this->connection->getTable("User")->find($user->obtainIdentifier());
43 44 45 46 47 48
        $this->assertEqual($user->name,"Jack");

        $user["name"] = "Jack";
        $this->assertEqual($user["name"],"Jack");
        $user["name"] = "zYne";
        $this->assertEqual($user["name"],"zYne");
doctrine's avatar
doctrine committed
49 50
    }
    public function testOverload() {
51 52 53 54
        $user = new User();
        $this->assertEqual($user->name,null);

        $user->name = "Jack";
doctrine's avatar
doctrine committed
55

56 57 58
        $this->assertEqual($user->name,"Jack");
        
        $user->save();
doctrine's avatar
doctrine committed
59

60
        $user = $this->connection->getTable("User")->find($user->obtainIdentifier());
61
        $this->assertEqual($user->name,"Jack");
doctrine's avatar
doctrine committed
62

63 64 65 66
        $user->name = "Jack";
        $this->assertEqual($user->name,"Jack");
        $user->name = "zYne";
        $this->assertEqual($user->name,"zYne");
doctrine's avatar
doctrine committed
67 68
    }
    public function testSet() {
69 70
        $user = new User();
        $this->assertEqual($user->get("name"),null);
doctrine's avatar
doctrine committed
71

72 73
        $user->set("name","Jack");
        $this->assertEqual($user->get("name"),"Jack");
doctrine's avatar
doctrine committed
74

75
        $user->save();
doctrine's avatar
doctrine committed
76

77
        $user = $this->connection->getTable("User")->find($user->obtainIdentifier());
78 79 80 81 82

        $this->assertEqual($user->get("name"),"Jack");

        $user->set("name","Jack");
        $this->assertEqual($user->get("name"),"Jack");
doctrine's avatar
doctrine committed
83 84 85
    }
}
?>