FormControllerTest.php

Namespace

Drupal\Tests\Core\Controller

File

core/tests/Drupal/Tests/Core/Controller/FormControllerTest.php

View source
<?php

namespace Drupal\Tests\Core\Controller;

use Drupal\Core\Controller\ControllerResolver;
use Drupal\Core\Controller\HtmlFormController;
use Drupal\Core\DependencyInjection\ClassResolverInterface;
use Drupal\Core\Form\FormBuilderInterface;
use Drupal\Tests\UnitTestCase;

/**
 * Tests the FormController class.
 *
 * @group Controller
 */
class FormControllerTest extends UnitTestCase {
  
  /**
   * @expectedDeprecation Using the 'controller_resolver' service as the first argument is deprecated, use the 'http_kernel.controller.argument_resolver' instead. If your subclass requires the 'controller_resolver' service add it as an additional argument. See https://www.drupal.org/node/2959408.
   * @group legacy
   */
  public function testControllerResolverDeprecation() {
    if (!in_array('Symfony\\Component\\HttpKernel\\Controller\\ArgumentResolverInterface', class_implements('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolver'))) {
      $this->markTestSkipped("Do not test ::getArguments() method when it is not implemented by Symfony's ControllerResolver.");
    }
    $controller_resolver = $this->getMockBuilder(ControllerResolver::class)
      ->disableOriginalConstructor()
      ->getMock();
    $form_builder = $this->getMockBuilder(FormBuilderInterface::class)
      ->getMock();
    $class_resolver = $this->getMockBuilder(ClassResolverInterface::class)
      ->getMock();
    // Use the HtmlFormController as FormController is abstract.
    new HtmlFormController($controller_resolver, $form_builder, $class_resolver);
  }

}

Classes

Title Deprecated Summary
FormControllerTest Tests the FormController class.

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