Unverified Commit 3c08a5b4 authored by alexpott's avatar alexpott

Revert "Issue #2959316 by dww, Lendude, dawehner: Views argument validators...

Revert "Issue #2959316 by dww, Lendude, dawehner: Views argument validators that modify argument values aren't reflected in token replacement"

This reverts commit 26a5a2ab.
parent 4d769bcc
......@@ -1096,8 +1096,7 @@ protected function _buildArguments() {
$argument->is_default = TRUE;
}
// Set the argument, which ensures that the argument is valid and
// possibly transforms the value.
// Set the argument, which will also validate that the argument can be set.
if (!$argument->setArgument($arg)) {
$status = $argument->validateFail($arg);
break;
......@@ -1111,11 +1110,9 @@ protected function _buildArguments() {
$argument->query($this->display_handler->useGroupBy());
}
// Add this argument's substitution.
// Add this argument's substitution
$substitutions["{{ arguments.$id }}"] = $arg_title;
// Since argument validator plugins can potentially transform the value,
// use whatever value the argument handler now has, not the raw value.
$substitutions["{{ raw_arguments.$id }}"] = strip_tags(Html::decodeEntities($argument->getValue()));
$substitutions["{{ raw_arguments.$id }}"] = strip_tags(Html::decodeEntities($arg));
// Test to see if we should use this argument's title
if (!empty($argument->options['title_enable']) && !empty($argument->options['title'])) {
......
......@@ -37,10 +37,6 @@ protected function defineOptions() {
* {@inheritdoc}
*/
public function validateArgument($arg) {
if ($arg === 'this value should be replaced') {
$this->argument->argument = 'this value is replaced!';
return TRUE;
}
return $arg == $this->options['test_value'];
}
......
......@@ -38,7 +38,7 @@ class ViewExecutableTest extends ViewsKernelTestBase {
*
* @var array
*/
public static $testViews = ['test_destroy', 'test_executable_displays', 'test_argument_dependency'];
public static $testViews = ['test_destroy', 'test_executable_displays'];
/**
* Properties that should be stored in the configuration.
......@@ -525,19 +525,4 @@ public function testSerialization() {
$this->assertEquals($nid_definition_before->getPropertyDefinitions(), $nid_definition_after->getPropertyDefinitions());
}
/**
* Tests if argument overrides by validators are propagated to tokens.
*/
public function testArgumentValidatorValueOverride() {
$view = Views::getView('test_argument_dependency');
$view->setDisplay('page_1');
$view->setArguments(['1', 'this value should be replaced']);
$view->execute();
$expected = [
'{{ arguments.uid }}' => 'this value is replaced!',
'{{ raw_arguments.uid }}' => 'this value is replaced!',
];
$this->assertEquals($expected, $view->build_info['substitutions']);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment