예제 #1
0
 public function testClassMethodFails()
 {
     $userProxy = $this->userProxy();
     UserModel::tableName();
     UserModel::tableName();
     $userProxy->verifyInvokedOnce('tableName');
 }
예제 #2
0
 public function testVerifyStaticMethods()
 {
     double::registerClass('demo\\UserModel');
     $user = new ClassProxy('demo\\UserModel');
     UserModel::tableName();
     $user->verifyInvoked('tableName');
 }
예제 #3
0
 public function testDoubleClass()
 {
     $user = test::double('demo\\UserModel', ['save' => null]);
     (new demo\UserModel())->save();
     $user->verifyInvoked('save');
     \demo\UserModel::tableName();
     \demo\UserModel::tableName();
     $user->verifyInvokedMultipleTimes('tableName', 2);
     $this->specify('disabling all methods', function () use($user) {
         test::methods($user, []);
         verify(\demo\UserModel::tableName())->null();
     });
 }
예제 #4
0
 public function testStaticAccess()
 {
     $this->assertEquals('users', UserModel::tableName());
     double::registerClass('\\demo\\UserModel', ['tableName' => 'my_users']);
     $this->assertEquals('my_users', UserModel::tableName());
 }