Mercurial > hg > isophonics-drupal-site
diff core/modules/options/tests/src/Functional/OptionsDynamicValuesValidationTest.php @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children | 129ea1e6d783 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/core/modules/options/tests/src/Functional/OptionsDynamicValuesValidationTest.php Wed Nov 29 16:09:58 2017 +0000 @@ -0,0 +1,30 @@ +<?php + +namespace Drupal\Tests\options\Functional; + +/** + * Tests the Options field allowed values function. + * + * @group options + */ +class OptionsDynamicValuesValidationTest extends OptionsDynamicValuesTestBase { + /** + * Test that allowed values function gets the entity. + */ + public function testDynamicAllowedValues() { + // Verify that validation passes against every value we had. + foreach ($this->test as $key => $value) { + $this->entity->test_options->value = $value; + $violations = $this->entity->test_options->validate(); + $this->assertEqual(count($violations), 0, "$key is a valid value"); + } + + // Now verify that validation does not pass against anything else. + foreach ($this->test as $key => $value) { + $this->entity->test_options->value = is_numeric($value) ? (100 - $value) : ('X' . $value); + $violations = $this->entity->test_options->validate(); + $this->assertEqual(count($violations), 1, "$key is not a valid value"); + } + } + +}