function ProxyBuilderTest::testBuildComplexMethod

Same name in this branch
  1. 10 core/tests/Drupal/Tests/Component/ProxyBuilder/ProxyBuilderTest.php \Drupal\Tests\Component\ProxyBuilder\ProxyBuilderTest::testBuildComplexMethod()

@covers ::buildMethod
@covers ::buildParameter
@covers ::buildMethodBody

File

core/tests/Drupal/Tests/Core/ProxyBuilder/ProxyBuilderTest.php, line 37

Class

ProxyBuilderTest
@coversDefaultClass \Drupal\Core\ProxyBuilder\ProxyBuilder[[api-linebreak]] @group proxy_builder

Namespace

Drupal\Tests\Core\ProxyBuilder

Code

public function testBuildComplexMethod() : void {
  $class = 'Drupal\\Tests\\Core\\ProxyBuilder\\TestServiceComplexMethod';
  $result = $this->proxyBuilder
    ->build($class);
  // @todo Solve the silly linebreak for array()
  $method_body = <<<'EOS'
  
  /**
   * {@inheritdoc}
   */
  public function complexMethod($parameter, callable $function, ?\Drupal\Tests\Core\ProxyBuilder\TestServiceNoMethod $test_service = NULL, array &$elements = array (
  ))
  {
      return $this->lazyLoadItself()->complexMethod($parameter, $function, $test_service, $elements);
  }
  
  EOS;
  $this->assertEquals($this->buildExpectedClass($class, $method_body), $result);
}

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