function DrupalSelenium2DriverTest::testGetRemoteFilePath

Same name and namespace in other branches
  1. 9 core/tests/Drupal/FunctionalJavascriptTests/Tests/DrupalSelenium2DriverTest.php \Drupal\FunctionalJavascriptTests\Tests\DrupalSelenium2DriverTest::testGetRemoteFilePath()
  2. 8.9.x core/tests/Drupal/FunctionalJavascriptTests/Tests/DrupalSelenium2DriverTest.php \Drupal\FunctionalJavascriptTests\Tests\DrupalSelenium2DriverTest::testGetRemoteFilePath()
  3. 11.x core/tests/Drupal/FunctionalJavascriptTests/Tests/DrupalSelenium2DriverTest.php \Drupal\FunctionalJavascriptTests\Tests\DrupalSelenium2DriverTest::testGetRemoteFilePath()

Tests uploading remote files.

File

core/tests/Drupal/FunctionalJavascriptTests/Tests/DrupalSelenium2DriverTest.php, line 50

Class

DrupalSelenium2DriverTest
Tests the DrupalSelenium2Driver methods.

Namespace

Drupal\FunctionalJavascriptTests\Tests

Code

public function testGetRemoteFilePath() : void {
  $web_driver = $this->getSession()
    ->getDriver();
  $this->assertInstanceOf(Selenium2Driver::class, $web_driver);
  $this->assertFalse($web_driver->isW3C(), 'Driver is not operating in W3C mode');
  $file_system = \Drupal::service('file_system');
  $entity = EntityTest::create();
  $entity->save();
  $files = array_slice($this->getTestFiles('text'), 0, 3);
  $real_paths = [];
  foreach ($files as $file) {
    $real_paths[] = $file_system->realpath($file->uri);
  }
  $remote_paths = [];
  foreach ($real_paths as $path) {
    $remote_paths[] = $web_driver->uploadFileAndGetRemoteFilePath($path);
  }
  // Tests that uploading multiple remote files works with remote path.
  $this->drupalGet($entity->toUrl('edit-form'));
  $multiple_field = $this->assertSession()
    ->elementExists('xpath', '//input[@multiple]');
  $multiple_field->setValue(implode("\n", $remote_paths));
  $this->assertSession()
    ->assertWaitOnAjaxRequest();
  $this->getSession()
    ->getPage()
    ->findButton('Save')
    ->click();
  $entity = EntityTest::load($entity->id());
  $this->assertCount(3, $entity->field_file);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.