You are here

ObjectTest.php in Zircon Profile 8

File

vendor/phpunit/phpunit-mock-objects/tests/MockObject/Invocation/ObjectTest.php
View source
<?php

class Framework_MockObject_Invocation_ObjectTest extends PHPUnit_Framework_TestCase {
  public function testConstructorRequiresClassAndMethodAndParametersAndObject() {
    new PHPUnit_Framework_MockObject_Invocation_Object('FooClass', 'FooMethod', array(
      'an_argument',
    ), new StdClass());
  }
  public function testAllowToGetClassNameSetInConstructor() {
    $invocation = new PHPUnit_Framework_MockObject_Invocation_Object('FooClass', 'FooMethod', array(
      'an_argument',
    ), new StdClass());
    $this
      ->assertSame('FooClass', $invocation->className);
  }
  public function testAllowToGetMethodNameSetInConstructor() {
    $invocation = new PHPUnit_Framework_MockObject_Invocation_Object('FooClass', 'FooMethod', array(
      'an_argument',
    ), new StdClass());
    $this
      ->assertSame('FooMethod', $invocation->methodName);
  }
  public function testAllowToGetObjectSetInConstructor() {
    $expectedObject = new StdClass();
    $invocation = new PHPUnit_Framework_MockObject_Invocation_Object('FooClass', 'FooMethod', array(
      'an_argument',
    ), $expectedObject);
    $this
      ->assertSame($expectedObject, $invocation->object);
  }
  public function testAllowToGetMethodParametersSetInConstructor() {
    $expectedParameters = array(
      'foo',
      5,
      array(
        'a',
        'b',
      ),
      new StdClass(),
      null,
      false,
    );
    $invocation = new PHPUnit_Framework_MockObject_Invocation_Object('FooClass', 'FooMethod', $expectedParameters, new StdClass());
    $this
      ->assertSame($expectedParameters, $invocation->parameters);
  }
  public function testConstructorAllowToSetFlagCloneObjectsInParameters() {
    $parameters = array(
      new StdClass(),
    );
    $cloneObjects = true;
    $invocation = new PHPUnit_Framework_MockObject_Invocation_Object('FooClass', 'FooMethod', $parameters, new StdClass(), $cloneObjects);
    $this
      ->assertEquals($parameters, $invocation->parameters);
    $this
      ->assertNotSame($parameters, $invocation->parameters);
  }

}