gluon-web-remote

Web remote Administration for big size of gluon routers
git clone git://archive.git.mtrnord.blog/MTRNord/gluon-web-remote.git
Log | Files | Refs | README

proxy.phpt (3066B)


      1 --TEST--
      2 PHPUnit_Framework_MockObject_Generator::generate('Foo', NULL, 'ProxyFoo', TRUE, TRUE, TRUE, TRUE)
      3 --FILE--
      4 <?php
      5 class Foo
      6 {
      7     public function bar(Foo $foo)
      8     {
      9     }
     10 
     11     public function baz(Foo $foo)
     12     {
     13     }
     14 }
     15 
     16 require __DIR__ . '/../../vendor/autoload.php';
     17 
     18 $generator = new PHPUnit_Framework_MockObject_Generator;
     19 
     20 $mock = $generator->generate(
     21   'Foo', array(), 'ProxyFoo', TRUE, TRUE, TRUE, TRUE
     22 );
     23 
     24 print $mock['code'];
     25 ?>
     26 --EXPECTF--
     27 class ProxyFoo extends Foo implements PHPUnit_Framework_MockObject_MockObject
     28 {
     29     private $__phpunit_invocationMocker;
     30     private $__phpunit_originalObject;
     31 
     32     public function __clone()
     33     {
     34         $this->__phpunit_invocationMocker = clone $this->__phpunit_getInvocationMocker();
     35     }
     36 
     37     public function bar(Foo $foo)
     38     {
     39         $arguments = array($foo);
     40         $count     = func_num_args();
     41 
     42         if ($count > 1) {
     43             $_arguments = func_get_args();
     44 
     45             for ($i = 1; $i < $count; $i++) {
     46                 $arguments[] = $_arguments[$i];
     47             }
     48         }
     49 
     50         $this->__phpunit_getInvocationMocker()->invoke(
     51           new PHPUnit_Framework_MockObject_Invocation_Object(
     52             'Foo', 'bar', $arguments, $this, TRUE
     53           )
     54         );
     55 
     56         return call_user_func_array(array($this->__phpunit_originalObject, "bar"), $arguments);
     57     }
     58 
     59     public function baz(Foo $foo)
     60     {
     61         $arguments = array($foo);
     62         $count     = func_num_args();
     63 
     64         if ($count > 1) {
     65             $_arguments = func_get_args();
     66 
     67             for ($i = 1; $i < $count; $i++) {
     68                 $arguments[] = $_arguments[$i];
     69             }
     70         }
     71 
     72         $this->__phpunit_getInvocationMocker()->invoke(
     73           new PHPUnit_Framework_MockObject_Invocation_Object(
     74             'Foo', 'baz', $arguments, $this, TRUE
     75           )
     76         );
     77 
     78         return call_user_func_array(array($this->__phpunit_originalObject, "baz"), $arguments);
     79     }
     80 
     81     public function expects(PHPUnit_Framework_MockObject_Matcher_Invocation $matcher)
     82     {
     83         return $this->__phpunit_getInvocationMocker()->expects($matcher);
     84     }
     85 
     86     public function method()
     87     {
     88         $any = new PHPUnit_Framework_MockObject_Matcher_AnyInvokedCount;
     89         $expects = $this->expects($any);
     90         return call_user_func_array(array($expects, 'method'), func_get_args());
     91     }
     92 
     93     public function __phpunit_setOriginalObject($originalObject)
     94     {
     95         $this->__phpunit_originalObject = $originalObject;
     96     }
     97 
     98     public function __phpunit_getInvocationMocker()
     99     {
    100         if ($this->__phpunit_invocationMocker === NULL) {
    101             $this->__phpunit_invocationMocker = new PHPUnit_Framework_MockObject_InvocationMocker;
    102         }
    103 
    104         return $this->__phpunit_invocationMocker;
    105     }
    106 
    107     public function __phpunit_hasMatchers()
    108     {
    109         return $this->__phpunit_getInvocationMocker()->hasMatchers();
    110     }
    111 
    112     public function __phpunit_verify()
    113     {
    114         $this->__phpunit_getInvocationMocker()->verify();
    115         $this->__phpunit_invocationMocker = NULL;
    116     }
    117 }