function testUpdateDaoResultPropagated() { $user = new MockUser($this); $user->setReturnValue('isAnonymous', false); $user->setReturnValue('isSuspended', false); $user->setReturnValue('isDeleted', false); $user->setReturnValue('toRow', array()); // True $daotrue = new MockUserDao($this); $daotrue->setReturnValue('updateByRow', true); $daotrue->expectNever('deleteAllUserSessions'); $umtrue = new UserManagerTestVersion($this); $umtrue->setReturnReference('getDao', $daotrue); $this->assertTrue($umtrue->updateDb($user)); // False $daofalse = new MockUserDao($this); $daofalse->setReturnValue('updateByRow', false); $daofalse->expectNever('deleteAllUserSessions'); $umfalse = new UserManagerTestVersion($this); $umfalse->setReturnReference('getDao', $daofalse); $this->assertFalse($umfalse->updateDb($user)); }
function testInternalCachingByUserName() { $dao = new MockUserDao($this); $dar = new MockDataAccessResult($this); $dao->setReturnReference('searchByUserName', $dar); $dar->setReturnValueAt(0, 'getRow', array('user_name' => 'user_name', 'realname' => 'realname', 'user_id' => 123)); $dar->setReturnValueAt(1, 'getRow', false); $dao->expectNever('searchByUserId', 'User should be cached'); $um = new MockUserManager(); $um->setReturnValue('isUserLoadedById', false, array(123)); $um->setReturnValue('isUserLoadedByUserName', false, array('user_name')); $um->expectNever('getUserById'); $um->expectNever('getUserByUserName'); $uh = new UserHelperTestVersion($this); $uh->setReturnValue('_getUserManager', $um); $uh->setReturnValue('_isUserNameNone', false); $uh->setReturnValue('_getCurrentUserUsernameDisplayPreference', 1); $uh->setReturnReference('_getUserDao', $dao); $uh->__construct(); $this->assertEqual("user_name (realname)", $uh->getDisplayNameFromUserName('user_name')); $this->assertEqual("user_name (realname)", $uh->getDisplayNameFromUserId(123)); }