You are here

private function ActivitySubmissionTest::submitWebform in Webform CiviCRM Integration 8.5

Submit webform for activity

Parameters

int $num:

2 calls to ActivitySubmissionTest::submitWebform()
ActivitySubmissionTest::testMultipleAssignees in tests/src/FunctionalJavascript/ActivitySubmissionTest.php
Test activity on multiple assignees
ActivitySubmissionTest::testSubmitWebform in tests/src/FunctionalJavascript/ActivitySubmissionTest.php
Test submitting an activity

File

tests/src/FunctionalJavascript/ActivitySubmissionTest.php, line 87

Class

ActivitySubmissionTest
Tests submitting a Webform with CiviCRM: Contact with Activity

Namespace

Drupal\Tests\webform_civicrm\FunctionalJavascript

Code

private function submitWebform($num = 1) {
  $this->_contacts = [];
  $this
    ->drupalLogout();
  $this
    ->drupalGet($this->webform
    ->toUrl('canonical'));
  $this
    ->assertPageNoErrorMessages();
  $this
    ->assertSession()
    ->waitForField('civicrm_1_contact_1_contact_first_name');
  for ($i = 1; $i <= $num; $i++) {
    $this->_contacts[$i] = [
      'first_name' => 'Frederick' . substr(sha1(rand()), 0, 7),
      'last_name' => 'Pabst' . substr(sha1(rand()), 0, 7),
    ];
    $this
      ->getSession()
      ->getPage()
      ->fillField("civicrm_{$i}_contact_1_contact_first_name", $this->_contacts[$i]['first_name']);
    $this
      ->getSession()
      ->getPage()
      ->fillField("civicrm_{$i}_contact_1_contact_last_name", $this->_contacts[$i]['last_name']);
  }
  $this
    ->getSession()
    ->getPage()
    ->fillField('Activity Subject', 'Awesome Activity');
  $this
    ->getSession()
    ->getPage()
    ->fillField('Activity Details', 'Lorem ipsum dolor sit amet.');

  // ToDo -> use different dates -> default is 'now'
  $this
    ->getSession()
    ->getPage()
    ->fillField('Activity Duration', '90');
  $this
    ->getSession()
    ->getPage()
    ->pressButton('Submit');
  $this
    ->htmlOutput();
  $this
    ->assertPageNoErrorMessages();
  $this
    ->assertSession()
    ->pageTextContains('New submission added to CiviCRM Webform Test.');
}