This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
lnkohana/vendor/phpunit/phpunit-mock-objects/Tests/MockObject/Invocation/ObjectTest.php
2013-04-22 14:09:50 +10:00

83 lines
2.3 KiB
PHP

<?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);
}
}