You are here

private function MultiCustomFieldsSubmissionTest::createMultiValueCustomFields in Webform CiviCRM Integration 8.5

3 calls to MultiCustomFieldsSubmissionTest::createMultiValueCustomFields()
MultiCustomFieldsSubmissionTest::testAnonymousSubmitWithContribution in tests/src/FunctionalJavascript/MultiCustomFieldsSubmissionTest.php
MultiCustomFieldsSubmissionTest::testContactRefSubmission in tests/src/FunctionalJavascript/MultiCustomFieldsSubmissionTest.php
Submit webform with 3 contact reference fields.
MultiCustomFieldsSubmissionTest::testSubmitWebform in tests/src/FunctionalJavascript/MultiCustomFieldsSubmissionTest.php
Test submitting Custom Fields

File

tests/src/FunctionalJavascript/MultiCustomFieldsSubmissionTest.php, line 14

Class

MultiCustomFieldsSubmissionTest
Tests submitting a Webform with CiviCRM: single contact + custom fields.

Namespace

Drupal\Tests\webform_civicrm\FunctionalJavascript

Code

private function createMultiValueCustomFields() {
  $this->_customFields = [];
  $params = [
    'title' => "Monthly Data",
    'extends' => 'Contact',
    'is_multiple' => 1,
    'style' => "Tab with table",
  ];
  $result = $this->utils
    ->wf_civicrm_api('CustomGroup', 'create', $params);
  $this
    ->assertEquals(0, $result['is_error']);
  $this
    ->assertEquals(1, $result['count']);
  $this->_cgID = $result['id'];
  $params = [
    'custom_group_id' => $this->_cgID,
    'label' => 'Month',
    'name' => 'month',
    'data_type' => 'String',
    'html_type' => 'Text',
    'is_active' => 1,
  ];
  $result = $this->utils
    ->wf_civicrm_api('CustomField', 'create', $params);
  $this
    ->assertEquals(0, $result['is_error']);
  $this
    ->assertEquals(1, $result['count']);
  $this->_customFields['month'] = $result['id'];
  $result = civicrm_api3('OptionGroup', 'create', [
    'name' => "data",
    'title' => "Data",
    'data_type' => "String",
    'is_active' => 1,
  ]);
  $this
    ->assertEquals(0, $result['is_error']);
  $this
    ->assertEquals(1, $result['count']);
  $result = civicrm_api3('OptionValue', 'create', [
    'option_group_id' => "data",
    'name' => "100",
    'label' => "100",
    'value' => 100,
    'is_default' => 0,
    'weight' => 1,
    'is_active' => 1,
  ]);
  $this
    ->assertEquals(0, $result['is_error']);
  $this
    ->assertEquals(1, $result['count']);
  $result = civicrm_api3('OptionValue', 'create', [
    'option_group_id' => "data",
    'name' => "200",
    'label' => "200",
    'value' => 200,
    'is_default' => 0,
    'weight' => 1,
    'is_active' => 1,
  ]);
  $this
    ->assertEquals(0, $result['is_error']);
  $this
    ->assertEquals(1, $result['count']);
  $result = civicrm_api3('CustomField', 'create', [
    'custom_group_id' => $this->_cgID,
    'label' => "Data",
    'name' => 'data',
    'html_type' => "Radio",
    'data_type' => "String",
    'option_group_id' => "data",
    'is_active' => 1,
  ]);
  $this
    ->assertEquals(0, $result['is_error']);
  $this
    ->assertEquals(1, $result['count']);
  $this->_customFields['data'] = $result['id'];
  $result = civicrm_api3('CustomField', 'create', [
    'custom_group_id' => $this->_cgID,
    'label' => "Consultant",
    'name' => 'consultant',
    'html_type' => "Autocomplete-Select",
    'data_type' => "ContactReference",
    'is_active' => 1,
  ]);
  $this
    ->assertEquals(0, $result['is_error']);
  $this
    ->assertEquals(1, $result['count']);
  $this->_customFields['consultant'] = $result['id'];
}