function StringEqualsConcatenatedValuesConstraintValidatorTest::testStringEqualsConcatenatedValuesConstraint

Tests basic validation of concatenated config values.

See also

\Drupal\Core\Validation\Plugin\Validation\Constraint\StringEqualsConcatenatedValuesConstraint

File

core/tests/Drupal/KernelTests/Core/Validation/StringEqualsConcatenatedValuesConstraintValidatorTest.php, line 43

Class

StringEqualsConcatenatedValuesConstraintValidatorTest
Tests the StringEqualsConcatenatedValues validator.

Namespace

Drupal\KernelTests\Core\Validation

Code

public function testStringEqualsConcatenatedValuesConstraint() : void {
  /** @var \Drupal\Core\Config\TypedConfigManagerInterface $typed_config_manager */
  $typed_config_manager = \Drupal::service('config.typed');
  /** @var \Drupal\Core\Config\Schema\TypedConfigInterface $typed_config */
  $typed_config = $typed_config_manager->get('config_test.validation');
  // Test valid names.
  $typed_config->get('string_concat_values')
    ->setValue('localhost.llama');
  $this->assertCount(0, $typed_config->validate());
  // Test invalid names.
  $typed_config->get('string_concat_values')
    ->setValue('drupal.kitten');
  $constraintViolationList = $typed_config->validate();
  $this->assertCount(1, $constraintViolationList);
  $this->assertSame("Expected 'localhost.llama', not 'drupal.kitten'. Format: '<%parent.string_concat_value_1>.<%parent.string_concat_value_2>'.", (string) $constraintViolationList->get(0)
    ->getMessage());
}

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