Exemplo n.º 1
0
 function testDoubleCaching()
 {
     $dao = new MockUserDao($this);
     $dar_123 = new MockDataAccessResult($this);
     $dao->setReturnReference('searchByUserId', $dar_123, array(123));
     $dar_123->setReturnValueAt(0, 'getRow', array('user_name' => 'user_123', 'user_id' => 123));
     $dar_123->setReturnValueAt(1, 'getRow', false);
     $dar_456 = new MockDataAccessResult($this);
     $dao->setReturnReference('searchByUserName', $dar_456, array('user_456'));
     $dar_456->setReturnValueAt(0, 'getRow', array('user_name' => 'user_456', 'user_id' => 456));
     $dar_456->setReturnValueAt(1, 'getRow', false);
     $dao->expectOnce('searchByUserId', array(123));
     $dao->expectOnce('searchByUserName', array('user_456'));
     $user123 = new MockUser($this);
     $user123->setReturnValue('getId', 123);
     $user123->setReturnValue('getUserName', 'user_123');
     $user456 = new MockUser($this);
     $user456->setReturnValue('getId', 456);
     $user456->setReturnValue('getUserName', 'user_456');
     $um = new UserManagerTestVersion($this);
     $um->setReturnReference('getUserInstanceFromRow', $user123, array(array('user_name' => 'user_123', 'user_id' => 123)));
     $um->setReturnReference('getUserInstanceFromRow', $user456, array(array('user_name' => 'user_456', 'user_id' => 456)));
     $um->setReturnReference('getDao', $dao);
     $user_1 = $um->getUserById(123);
     $user_2 = $um->getUserByUserName('user_123');
     $this->assertReference($user_1, $user_2);
     $user_3 = $um->getUserByUserName('user_456');
     $user_4 = $um->getuserById(456);
     $this->assertReference($user_3, $user_4);
 }
Exemplo n.º 2
0
    function testDoubleCaching() {
        $dao = mock('UserDao');
        stub($dao)->searchByUserId(123)->returnsDar(array('user_name' => 'user_123', 'user_id' => 123));
        stub($dao)->searchByUserName('user_456')->returnsDar(array('user_name' => 'user_456', 'user_id' => 456));

        $dao->expectOnce('searchByUserId', array(123));
        $dao->expectOnce('searchByUserName', array('user_456'));

        $user123 = mock('PFUser');
        $user123->setReturnValue('getId', 123);
        $user123->setReturnValue('getUserName', 'user_123');
        $user456 = mock('PFUser');
        $user456->setReturnValue('getId', 456);
        $user456->setReturnValue('getUserName', 'user_456');

        $um = new UserManagerTestVersion($this);
        $um->setReturnReference('getUserInstanceFromRow', $user123, array(array('user_name' => 'user_123', 'user_id' => 123)));
        $um->setReturnReference('getUserInstanceFromRow', $user456, array(array('user_name' => 'user_456', 'user_id' => 456)));

        $um->setReturnReference('getDao', $dao);
        $user_1 = $um->getUserById(123);
        $user_2 = $um->getUserByUserName('user_123');
        $this->assertReference($user_1, $user_2);
        $user_3 = $um->getUserByUserName('user_456');
        $user_4 = $um->getuserById(456);
        $this->assertReference($user_3, $user_4);
    }