protected function ThunderAwsTestFixtureTrait::getTestFixture in Thunder 6.2.x
Same name and namespace in other branches
- 8.5 tests/src/Traits/ThunderAwsTestFixtureTrait.php \Drupal\Tests\thunder\Traits\ThunderAwsTestFixtureTrait::getTestFixture()
- 8.2 tests/src/Traits/ThunderAwsTestFixtureTrait.php \Drupal\Tests\thunder\Traits\ThunderAwsTestFixtureTrait::getTestFixture()
- 8.3 tests/src/Traits/ThunderAwsTestFixtureTrait.php \Drupal\Tests\thunder\Traits\ThunderAwsTestFixtureTrait::getTestFixture()
- 8.4 tests/src/Traits/ThunderAwsTestFixtureTrait.php \Drupal\Tests\thunder\Traits\ThunderAwsTestFixtureTrait::getTestFixture()
- 6.0.x tests/src/Traits/ThunderAwsTestFixtureTrait.php \Drupal\Tests\thunder\Traits\ThunderAwsTestFixtureTrait::getTestFixture()
- 6.1.x tests/src/Traits/ThunderAwsTestFixtureTrait.php \Drupal\Tests\thunder\Traits\ThunderAwsTestFixtureTrait::getTestFixture()
Gets a test fixture from AWS.
Parameters
string $filename: The test fixture filename.
Return value
string The local path to the test fixture.
1 call to ThunderAwsTestFixtureTrait::getTestFixture()
- Thunder2UpdateTest::setDatabaseDumpFiles in tests/
src/ Functional/ Thunder2UpdateTest.php - Set database dump files to be used.
File
- tests/
src/ Traits/ ThunderAwsTestFixtureTrait.php, line 28
Class
- ThunderAwsTestFixtureTrait
- Trait to download test fixtures from AWS.
Namespace
Drupal\Tests\thunder\TraitsCode
protected function getTestFixture($filename) {
// Statically cache to prevent unnecessary requests.
static $files = [];
if (!isset($files[$filename])) {
$local_dir = sys_get_temp_dir() . '/thunder_test_fixtures';
@mkdir($local_dir);
$local = $local_dir . '/' . $filename;
$remote = 'https://s3-eu-west-1.amazonaws.com/thunder-public-files/test_fixtures/' . $filename;
$client = $this
->getHttpClient();
if (!file_exists($local) || sha1_file($local) !== $client
->head($remote)
->getHeaderLine('x-amz-meta-sha')) {
$client
->get($remote, [
'sink' => $local,
]);
}
$files[$filename] = $local;
}
return $files[$filename];
}