function CallableResolverTest::callableResolverExceptionHandlingTestCases

Same name and namespace in other branches
  1. 11.x core/tests/Drupal/Tests/Core/Utility/CallableResolverTest.php \Drupal\Tests\Core\Utility\CallableResolverTest::callableResolverExceptionHandlingTestCases()

Test cases for ::testCallbackResolverExceptionHandling.

File

core/tests/Drupal/Tests/Core/Utility/CallableResolverTest.php, line 132

Class

CallableResolverTest
@coversDefaultClass \Drupal\Core\Utility\CallableResolver[[api-linebreak]] @group Utility

Namespace

Drupal\Tests\Core\Utility

Code

public static function callableResolverExceptionHandlingTestCases() {
  return [
    'String function' => [
      'not_a_callable',
      \InvalidArgumentException::class,
      'Class "not_a_callable" does not exist.',
    ],
    'Array notation' => [
      [
        'not_a_callable',
        'not_a_callable',
      ],
      \InvalidArgumentException::class,
      'The callable definition provided "[not_a_callable,not_a_callable]" is not a valid callable.',
    ],
    'Missing method on class, array notation' => [
      [
        static::class,
        'method_not_exists',
      ],
      \InvalidArgumentException::class,
      'The callable definition provided "[Drupal\\Tests\\Core\\Utility\\CallableResolverTest,method_not_exists]" is not a valid callable.',
    ],
    'Missing method on class, static notation' => [
      static::class . '::method_not_exists',
      \InvalidArgumentException::class,
      'The callable definition provided was invalid. Either class "Drupal\\Tests\\Core\\Utility\\CallableResolverTest" does not have a method "method_not_exists", or it is not callable.',
    ],
    'Missing class, static notation' => [
      '\\NotARealClass::method',
      \InvalidArgumentException::class,
      'Class "\\NotARealClass" does not exist.',
    ],
    'No method, static notation' => [
      NoMethodCallable::class . "::",
      \InvalidArgumentException::class,
      'The callable definition provided was invalid. Could not get class and method from definition "Drupal\\Tests\\Core\\Utility\\NoMethodCallable::".',
    ],
    'Service not in container' => [
      'bad_service:method',
      \InvalidArgumentException::class,
      'Class "bad_service" does not exist.',
    ],
    'Invalid method on valid service' => [
      'test_service:not_a_callable',
      \InvalidArgumentException::class,
      'The callable definition provided was invalid. Either class "Drupal\\Tests\\Core\\Utility\\CallableResolverTest" does not have a method "not_a_callable", or it is not callable.',
    ],
  ];
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.