diff --git a/core/includes/schema.inc b/core/includes/schema.inc index 443cbf1934..c285b7487a 100644 --- a/core/includes/schema.inc +++ b/core/includes/schema.inc @@ -134,7 +134,7 @@ function drupal_uninstall_schema($module) { _drupal_schema_initialize($schema, $module, FALSE); foreach ($schema as $table) { - if (db_table_exists($table['name'])) { + if (\Drupal::database()->schema()->tableExists($table['name'])) { db_drop_table($table['name']); } } diff --git a/core/modules/simpletest/src/Tests/KernelTestBaseTest.php b/core/modules/simpletest/src/Tests/KernelTestBaseTest.php index 1e9e75da0b..bcb1124ee2 100644 --- a/core/modules/simpletest/src/Tests/KernelTestBaseTest.php +++ b/core/modules/simpletest/src/Tests/KernelTestBaseTest.php @@ -62,7 +62,7 @@ public function testSetUp() { $this->assertIdentical(\Drupal::moduleHandler()->getImplementations('entity_type_alter'), ['entity_test']); // Verify that no modules have been installed. - $this->assertFalse(db_table_exists($table), "'$table' database table not found."); + $this->assertFalse(\Drupal::database()->schema()->tableExists($table), "'$table' database table not found."); // Verify that the settings.testing.php got taken into account. $this->assertTrue(function_exists('simpletest_test_stub_settings_function')); @@ -114,7 +114,7 @@ public function testEnableModulesInstall() { $list = \Drupal::moduleHandler()->getImplementations('hook_info'); $this->assertFalse(in_array($module, $list), "{$module}_hook_info() in \Drupal::moduleHandler()->getImplementations() not found."); - $this->assertFalse(db_table_exists($table), "'$table' database table not found."); + $this->assertFalse(\Drupal::database()->schema()->tableExists($table), "'$table' database table not found."); // Install the module. \Drupal::service('module_installer')->install([$module]); @@ -126,7 +126,7 @@ public function testEnableModulesInstall() { $list = \Drupal::moduleHandler()->getImplementations('hook_info'); $this->assertTrue(in_array($module, $list), "{$module}_hook_info() in \Drupal::moduleHandler()->getImplementations() found."); - $this->assertTrue(db_table_exists($table), "'$table' database table found."); + $this->assertTrue(\Drupal::database()->schema()->tableExists($table), "'$table' database table found."); $schema = drupal_get_module_schema($module, $table); $this->assertTrue($schema, "'$table' table schema found."); } @@ -156,7 +156,7 @@ public function testInstallSchema() { $table = 'entity_test_example'; // Verify that we can install a table from the module schema. $this->installSchema($module, $table); - $this->assertTrue(db_table_exists($table), "'$table' database table found."); + $this->assertTrue(\Drupal::database()->schema()->tableExists($table), "'$table' database table found."); // Verify that the schema is known to Schema API. $schema = drupal_get_module_schema($module, $table); @@ -171,7 +171,7 @@ public function testInstallSchema() { catch (\Exception $e) { $this->pass('Exception for non-retrievable schema found.'); } - $this->assertFalse(db_table_exists($table), "'$table' database table not found."); + $this->assertFalse(\Drupal::database()->schema()->tableExists($table), "'$table' database table not found."); $schema = drupal_get_module_schema($module, $table); $this->assertFalse($schema, "'$table' table schema not found."); @@ -185,14 +185,14 @@ public function testInstallSchema() { catch (\Exception $e) { $this->pass('Exception for non-retrievable schema found.'); } - $this->assertFalse(db_table_exists($table), "'$table' database table not found."); + $this->assertFalse(\Drupal::database()->schema()->tableExists($table), "'$table' database table not found."); $schema = drupal_get_module_schema($module, $table); $this->assertTrue($schema, "'$table' table schema found."); // Verify that the same table can be installed after enabling the module. $this->enableModules([$module]); $this->installSchema($module, $table); - $this->assertTrue(db_table_exists($table), "'$table' database table found."); + $this->assertTrue(\Drupal::database()->schema()->tableExists($table), "'$table' database table found."); $schema = drupal_get_module_schema($module, $table); $this->assertTrue($schema, "'$table' table schema found."); } @@ -206,7 +206,7 @@ public function testInstallEntitySchema() { $this->enableModules(['user']); // Verity that the entity schema is created properly. $this->installEntitySchema($entity); - $this->assertTrue(db_table_exists($entity), "'$entity' database table found."); + $this->assertTrue(\Drupal::database()->schema()->tableExists($entity), "'$entity' database table found."); } /** diff --git a/core/modules/system/src/Tests/Database/TemporaryQueryTest.php b/core/modules/system/src/Tests/Database/TemporaryQueryTest.php index d0dce74e46..8a8c240053 100644 --- a/core/modules/system/src/Tests/Database/TemporaryQueryTest.php +++ b/core/modules/system/src/Tests/Database/TemporaryQueryTest.php @@ -31,7 +31,7 @@ public function testTemporaryQuery() { $data = json_decode($this->getRawContent()); if ($data) { $this->assertEqual($this->countTableRows('test'), $data->row_count, 'The temporary table contains the correct amount of rows.'); - $this->assertFalse(db_table_exists($data->table_name), 'The temporary table is, indeed, temporary.'); + $this->assertFalse(\Drupal::database()->schema()->tableExists($data->table_name), 'The temporary table is, indeed, temporary.'); } else { $this->fail('The creation of the temporary table failed.'); diff --git a/core/modules/system/src/Tests/Module/ModuleTestBase.php b/core/modules/system/src/Tests/Module/ModuleTestBase.php index a0a4ed226a..f7e29d882f 100644 --- a/core/modules/system/src/Tests/Module/ModuleTestBase.php +++ b/core/modules/system/src/Tests/Module/ModuleTestBase.php @@ -60,7 +60,7 @@ public function assertModuleTablesExist($module) { $tables = array_keys(drupal_get_module_schema($module)); $tables_exist = TRUE; foreach ($tables as $table) { - if (!db_table_exists($table)) { + if (!(\Drupal::database()->schema()->tableExists($table))) { $tables_exist = FALSE; } } @@ -77,7 +77,7 @@ public function assertModuleTablesDoNotExist($module) { $tables = array_keys(drupal_get_module_schema($module)); $tables_exist = FALSE; foreach ($tables as $table) { - if (db_table_exists($table)) { + if (\Drupal::database()->schema()->tableExists($table)) { $tables_exist = TRUE; } } diff --git a/core/modules/system/tests/src/Functional/Module/ModuleTestBase.php b/core/modules/system/tests/src/Functional/Module/ModuleTestBase.php index 392f2875e6..16dd0a4ab8 100644 --- a/core/modules/system/tests/src/Functional/Module/ModuleTestBase.php +++ b/core/modules/system/tests/src/Functional/Module/ModuleTestBase.php @@ -57,7 +57,7 @@ public function assertModuleTablesExist($module) { $tables = array_keys(drupal_get_module_schema($module)); $tables_exist = TRUE; foreach ($tables as $table) { - if (!db_table_exists($table)) { + if (!(\Drupal::database()->schema()->tableExists($table))) { $tables_exist = FALSE; } } @@ -74,7 +74,7 @@ public function assertModuleTablesDoNotExist($module) { $tables = array_keys(drupal_get_module_schema($module)); $tables_exist = FALSE; foreach ($tables as $table) { - if (db_table_exists($table)) { + if (\Drupal::database()->schema()->tableExists($table)) { $tables_exist = TRUE; } } diff --git a/core/tests/Drupal/KernelTests/Core/Database/RegressionTest.php b/core/tests/Drupal/KernelTests/Core/Database/RegressionTest.php index db4c7deda6..19a114abca 100644 --- a/core/tests/Drupal/KernelTests/Core/Database/RegressionTest.php +++ b/core/tests/Drupal/KernelTests/Core/Database/RegressionTest.php @@ -42,6 +42,14 @@ public function testDBTableExists() { } /** + * Tests \Drupal::database()->schema()->tableExists() function. + */ + public function testDBTableExistsDrupal8() { + $this->assertIdentical(TRUE, \Drupal::database()->schema->tableExists('test'), 'Returns true for existent table.'); + $this->assertIdentical(FALSE, \Drupal::database()->schema->tableExists('nosuchtable'), 'Returns false for nonexistent table.'); + } + + /** * Tests the db_field_exists() function. */ public function testDBFieldExists() { diff --git a/core/tests/Drupal/KernelTests/Core/Database/SchemaTest.php b/core/tests/Drupal/KernelTests/Core/Database/SchemaTest.php index e239098715..0a10b05c37 100644 --- a/core/tests/Drupal/KernelTests/Core/Database/SchemaTest.php +++ b/core/tests/Drupal/KernelTests/Core/Database/SchemaTest.php @@ -55,7 +55,7 @@ public function testSchema() { db_create_table('test_table', $table_specification); // Assert that the table exists. - $this->assertTrue(db_table_exists('test_table'), 'The table exists.'); + $this->assertTrue(\Drupal::database()->schema()->tableExists('test_table'), 'The table exists.'); // Assert that the table comment has been set. $this->checkSchemaComment($table_specification['description'], 'test_table'); @@ -118,7 +118,7 @@ public function testSchema() { // Try to drop the table. db_drop_table('test_table2'); - $this->assertFalse(db_table_exists('test_table2'), 'The dropped table does not exist.'); + $this->assertFalse(\Drupal::database()->schema()->tableExists('test_table2'), 'The dropped table does not exist.'); // Recreate the table. db_create_table('test_table', $table_specification); @@ -254,7 +254,7 @@ public function testSchema() { } catch (\Exception $e) { } - $this->assertTrue(db_table_exists('test_timestamp'), 'Table with database specific datatype was created.'); + $this->assertTrue(\Drupal::database()->schema()->tableExists('test_timestamp'), 'Table with database specific datatype was created.'); } /** diff --git a/core/tests/Drupal/KernelTests/Core/Entity/FieldSqlStorageTest.php b/core/tests/Drupal/KernelTests/Core/Entity/FieldSqlStorageTest.php index 884ee89956..e1ea5c77ac 100644 --- a/core/tests/Drupal/KernelTests/Core/Entity/FieldSqlStorageTest.php +++ b/core/tests/Drupal/KernelTests/Core/Entity/FieldSqlStorageTest.php @@ -381,7 +381,7 @@ public function testFieldUpdateFailure() { $this->tableMapping->getDedicatedRevisionTableName($prior_field_storage), ]; foreach ($tables as $table_name) { - $this->assertTrue(db_table_exists($table_name), t('Table %table exists.', ['%table' => $table_name])); + $this->assertTrue(\Drupal::database()->schema()->tableExists($table_name), t('Table %table exists.', ['%table' => $table_name])); } }