public function a()
 {
     if (null === ($rs = parent::a())) {
         $rs = new B();
     }
     return $rs;
 }
Example #2
0
function main()
{
    echo "main\n";
    A::$a = 30;
    $x =& A::$a;
    print $x . A::$a . "\n";
    $x = 5;
    print $x . A::$a . "\n";
}
 public function testMock()
 {
     $manager = ClassManager::getInstance();
     $manager->register('StaticMock\\MethodReplacer\\A', 'a', function () {
         return 3;
     });
     $manager->register('StaticMock\\MethodReplacer\\B', 'b', function () {
         return 4;
     });
     $this->assertEquals(3, A::a());
     $this->assertEquals(4, B::b());
     $manager->deregister('StaticMock\\MethodReplacer\\A', 'a');
     $manager->deregister('StaticMock\\MethodReplacer\\B', 'b');
     $this->assertEquals(1, A::a());
     $this->assertEquals(2, B::b());
 }
Example #4
0
function test()
{
    $obj = new A();
    $obj->a();
}
Example #5
0
    }
}
interface I
{
    public function a(int $a1 = 0);
    public function b(array $b1 = null);
}
class B implements I
{
    public function a(int $a1 = null, int $z1 = 1, int $z2 = D2, int $z3 = 3, int $z4 = null)
    {
    }
    public function b(array $b1 = null, array $y = array(), int $z1 = 1, int $z2 = 2, double $z3 = 3.0, string $z4 = "abc")
    {
    }
}
$a = new A();
$a->a();
$a->b();
$a->d();
$a->f();
$a->i();
$a->s();
$a->c();
$a->c($a);
$a->c(null);
$a->z();
$b = new B();
$b->a();
$b->b();
print "Pass\n";
 public function test_canCallreplacedMethodMultipleTimes()
 {
     $mock = new ClassMethodReplacementGuard();
     $mock->replace('StaticMock\\MethodReplacer\\A', 'a', function () {
         return 3;
     });
     $this->assertEquals(3, A::a());
     $this->assertEquals(3, A::a());
 }
Example #7
0
 public function a()
 {
     parent::a();
     print __METHOD__ . "\n";
 }
Example #8
0
 public static function init()
 {
     self::$a = 123;
 }