public static function PHPUnit_Framework_MockObject_Generator::getMockForAbstractClass

Returns a mock object for the specified abstract class with all abstract methods of the class mocked. Concrete methods to mock can be specified with the last parameter

@since Method available since Release 1.0.0

Parameters

string $originalClassName:

array $arguments:

string $mockClassName:

boolean $callOriginalConstructor:

boolean $callOriginalClone:

boolean $callAutoload:

array $mockedMethods:

boolean $cloneArguments:

Return value

object

Throws

InvalidArgumentException

5 calls to PHPUnit_Framework_MockObject_Generator::getMockForAbstractClass()
Framework_MockObject_GeneratorTest::testGetMockForAbstractClassAnstractClassDoesNotExist in drupal/core/vendor/phpunit/phpunit-mock-objects/Tests/GeneratorTest.php
@covers PHPUnit_Framework_MockObject_Generator::getMockForAbstractClass @expectedException PHPUnit_Framework_Exception
Framework_MockObject_GeneratorTest::testGetMockForAbstractClassDoesNotFailWhenFakingInterfaces in drupal/core/vendor/phpunit/phpunit-mock-objects/Tests/GeneratorTest.php
@covers PHPUnit_Framework_MockObject_Generator::getMockForAbstractClass
Framework_MockObject_GeneratorTest::testGetMockForAbstractClassExpectingInvalidArgumentException in drupal/core/vendor/phpunit/phpunit-mock-objects/Tests/GeneratorTest.php
@dataProvider getMockForAbstractClassExpectsInvalidArgumentExceptionDataprovider @covers PHPUnit_Framework_MockObject_Generator::getMockForAbstractClass @expectedException PHPUnit_Framework_Exception
Framework_MockObject_GeneratorTest::testGetMockForAbstractClassStubbingAbstractClass in drupal/core/vendor/phpunit/phpunit-mock-objects/Tests/GeneratorTest.php
@covers PHPUnit_Framework_MockObject_Generator::getMockForAbstractClass
PHPUnit_Framework_TestCase::getMockForAbstractClass in drupal/core/vendor/phpunit/phpunit/PHPUnit/Framework/TestCase.php
Returns a mock object for the specified abstract class with all abstract methods of the class mocked. Concrete methods to mock can be specified with the last parameter

File

drupal/core/vendor/phpunit/phpunit-mock-objects/PHPUnit/Framework/MockObject/Generator.php, line 270

Class

PHPUnit_Framework_MockObject_Generator
Mock Object Code Generator

Code

public static function getMockForAbstractClass($originalClassName, array $arguments = array(), $mockClassName = '', $callOriginalConstructor = TRUE, $callOriginalClone = TRUE, $callAutoload = TRUE, $mockedMethods = array(), $cloneArguments = TRUE) {
  if (!is_string($originalClassName)) {
    throw PHPUnit_Util_InvalidArgumentHelper::factory(1, 'string');
  }
  if (!is_string($mockClassName)) {
    throw PHPUnit_Util_InvalidArgumentHelper::factory(3, 'string');
  }
  if (class_exists($originalClassName, $callAutoload) || interface_exists($originalClassName, $callAutoload)) {
    $methods = array();
    $reflector = new ReflectionClass($originalClassName);
    foreach ($reflector
      ->getMethods() as $method) {
      if ($method
        ->isAbstract() || in_array($method
        ->getName(), $mockedMethods)) {
        $methods[] = $method
          ->getName();
      }
    }
    if (empty($methods)) {
      $methods = NULL;
    }
    return self::getMock($originalClassName, $methods, $arguments, $mockClassName, $callOriginalConstructor, $callOriginalClone, $callAutoload, $cloneArguments);
  }
  else {
    throw new PHPUnit_Framework_Exception(sprintf('Class "%s" does not exist.', $originalClassName));
  }
}