You are here

public function WebformMapping::getTestValues in Webform 6.x

Same name and namespace in other branches
  1. 8.5 src/Plugin/WebformElement/WebformMapping.php \Drupal\webform\Plugin\WebformElement\WebformMapping::getTestValues()

Get test values for an element.

Parameters

array $element: An element.

\Drupal\webform\WebformInterface $webform: A webform.

array $options: Options used to generate a test value.

Return value

mixed A test value for an element.

Overrides WebformElementBase::getTestValues

File

src/Plugin/WebformElement/WebformMapping.php, line 346

Class

WebformMapping
Provides a 'mapping' element.

Namespace

Drupal\webform\Plugin\WebformElement

Code

public function getTestValues(array $element, WebformInterface $webform, array $options = []) {
  $form_state = new FormState();
  $form_completed = [];
  $element += [
    '#name' => isset($element['#webform_key']) ? $element['#webform_key'] : '',
    '#required' => FALSE,
  ];
  $element = WebformMappingElement::processWebformMapping($element, $form_state, $form_completed);
  $values = [];
  for ($i = 1; $i <= 3; $i++) {
    $value = [];
    foreach (RenderElement::children($element['table']) as $source_key) {
      $value[$source_key] = $this->generate
        ->getTestValue($webform, $source_key, $element['table'][$source_key][$source_key], $options);
    }
    $values[] = $value;
  }
  return $values;
}