FormElementInlineErrorTest.php

Same filename in other branches
  1. 9 core/modules/inline_form_errors/tests/src/Kernel/FormElementInlineErrorTest.php
  2. 10 core/modules/inline_form_errors/tests/src/Kernel/FormElementInlineErrorTest.php
  3. 11.x core/modules/inline_form_errors/tests/src/Kernel/FormElementInlineErrorTest.php

Namespace

Drupal\Tests\inline_form_errors\Kernel

File

core/modules/inline_form_errors/tests/src/Kernel/FormElementInlineErrorTest.php

View source
<?php

namespace Drupal\Tests\inline_form_errors\Kernel;

use Drupal\Core\Form\FormState;
use Drupal\KernelTests\KernelTestBase;

/**
 * Tests messages on form elements.
 *
 * @group InlineFormErrors
 */
class FormElementInlineErrorTest extends KernelTestBase {
    
    /**
     * {@inheritdoc}
     */
    public static $modules = [
        'inline_form_errors',
    ];
    
    /**
     * Tests that no inline form errors are shown when disabled for a form.
     */
    public function testDisplayErrorMessagesNotInline() {
        $form_id = 'test';
        $form = [
            '#parents' => [],
            '#disable_inline_form_errors' => TRUE,
            '#array_parents' => [],
        ];
        $form['test'] = [
            '#type' => 'textfield',
            '#title' => 'Test',
            '#parents' => [
                'test',
            ],
            '#id' => 'edit-test',
            '#array_parents' => [
                'test',
            ],
        ];
        $form_state = new FormState();
        \Drupal::formBuilder()->prepareForm($form_id, $form, $form_state);
        \Drupal::formBuilder()->processForm($form_id, $form, $form_state);
        // Just test if the #error_no_message property is TRUE. FormErrorHandlerTest
        // tests if the property actually hides the error message.
        $this->assertArraySubset([
            '#error_no_message' => TRUE,
        ], $form['test']);
    }

}

Classes

Title Deprecated Summary
FormElementInlineErrorTest Tests messages on form elements.

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