function DriverSpecificKernelTestBase::setUp
Same name in other branches
- 9 core/tests/Drupal/KernelTests/Core/Database/DriverSpecificKernelTestBase.php \Drupal\KernelTests\Core\Database\DriverSpecificKernelTestBase::setUp()
- 11.x core/tests/Drupal/KernelTests/Core/Database/DriverSpecificKernelTestBase.php \Drupal\KernelTests\Core\Database\DriverSpecificKernelTestBase::setUp()
Overrides KernelTestBase::setUp
7 calls to DriverSpecificKernelTestBase::setUp()
- CastedIntFieldJoinTestBase::setUp in core/
modules/ views/ tests/ src/ Kernel/ Plugin/ CastedIntFieldJoinTestBase.php - DbDumpCommandTest::setUp in core/
modules/ mysql/ tests/ src/ Kernel/ mysql/ Console/ DbDumpCommandTest.php - DbDumpTest::setUp in core/
modules/ mysql/ tests/ src/ Kernel/ mysql/ DbDumpTest.php - DriverSpecificConnectionUnitTestBase::setUp in core/
tests/ Drupal/ KernelTests/ Core/ Database/ DriverSpecificConnectionUnitTestBase.php - DriverSpecificDatabaseTestBase::setUp in core/
tests/ Drupal/ KernelTests/ Core/ Database/ DriverSpecificDatabaseTestBase.php
7 methods override DriverSpecificKernelTestBase::setUp()
- CastedIntFieldJoinTestBase::setUp in core/
modules/ views/ tests/ src/ Kernel/ Plugin/ CastedIntFieldJoinTestBase.php - DbDumpCommandTest::setUp in core/
modules/ mysql/ tests/ src/ Kernel/ mysql/ Console/ DbDumpCommandTest.php - DbDumpTest::setUp in core/
modules/ mysql/ tests/ src/ Kernel/ mysql/ DbDumpTest.php - DriverSpecificConnectionUnitTestBase::setUp in core/
tests/ Drupal/ KernelTests/ Core/ Database/ DriverSpecificConnectionUnitTestBase.php - DriverSpecificDatabaseTestBase::setUp in core/
tests/ Drupal/ KernelTests/ Core/ Database/ DriverSpecificDatabaseTestBase.php
File
-
core/
tests/ Drupal/ KernelTests/ Core/ Database/ DriverSpecificKernelTestBase.php, line 29
Class
- DriverSpecificKernelTestBase
- Base class for driver specific kernel tests.
Namespace
Drupal\KernelTests\Core\DatabaseCode
protected function setUp() : void {
// Find the current SUT database driver from the connection info. If that
// is not the one the test requires, skip before test database
// initialization so to save cycles.
$this->root = static::getDrupalRoot();
$connectionInfo = $this->getDatabaseConnectionInfo();
$test_class_parts = explode('\\', get_class($this));
$expected_provider = $test_class_parts[2] ?? '';
for ($i = 3; $i < count($test_class_parts); $i++) {
if ($test_class_parts[$i] === 'Kernel') {
$expected_driver = $test_class_parts[$i + 1] ?? '';
break;
}
}
if ($connectionInfo['default']['driver'] !== $expected_driver) {
$this->markTestSkipped("This test only runs for the database driver '{$expected_driver}'. Current database driver is '{$connectionInfo['default']['driver']}'.");
}
parent::setUp();
$this->connection = Database::getConnection();
// After database initialization, the database driver may be not provided
// by the expected module; skip test in that case.
$running_provider = $this->connection
->getProvider();
$running_driver = $this->connection
->driver();
if ($running_provider !== $expected_provider || $running_driver !== $expected_driver) {
$this->markTestSkipped("This test only runs for the database driver '{$expected_driver}' provided by the '{$expected_provider}' module. Connected database driver is '{$running_driver}' provided by '{$running_provider}'.");
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.