public function a() { if (null === ($rs = parent::a())) { $rs = new B(); } return $rs; }
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()); }
function test() { $obj = new A(); $obj->a(); }
} } 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()); }
public function a() { parent::a(); print __METHOD__ . "\n"; }
public static function init() { self::$a = 123; }