You are here

public function FormValidatorTest::testElementValidate in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/tests/Drupal/Tests/Core/Form/FormValidatorTest.php \Drupal\Tests\Core\Form\FormValidatorTest::testElementValidate()

@covers ::doValidateForm

File

core/tests/Drupal/Tests/Core/Form/FormValidatorTest.php, line 352
Contains \Drupal\Tests\Core\Form\FormValidatorTest.

Class

FormValidatorTest
@coversDefaultClass \Drupal\Core\Form\FormValidator @group Form

Namespace

Drupal\Tests\Core\Form

Code

public function testElementValidate() {
  $form_validator = $this
    ->getMockBuilder('Drupal\\Core\\Form\\FormValidator')
    ->setConstructorArgs([
    new RequestStack(),
    $this
      ->getStringTranslationStub(),
    $this->csrfToken,
    $this->logger,
    $this->formErrorHandler,
  ])
    ->setMethods(array(
    'executeValidateHandlers',
  ))
    ->getMock();
  $form_validator
    ->expects($this
    ->once())
    ->method('executeValidateHandlers');
  $mock = $this
    ->getMock('stdClass', array(
    'element_validate',
  ));
  $mock
    ->expects($this
    ->once())
    ->method('element_validate')
    ->with($this
    ->isType('array'), $this
    ->isInstanceOf('Drupal\\Core\\Form\\FormStateInterface'), NULL);
  $form = array();
  $form['test'] = array(
    '#type' => 'textfield',
    '#title' => 'Test',
    '#parents' => array(
      'test',
    ),
    '#element_validate' => array(
      array(
        $mock,
        'element_validate',
      ),
    ),
  );
  $form_state = new FormState();
  $form_validator
    ->validateForm('test_form_id', $form, $form_state);
}