Issue #2991542 by mondrake, voleger: Introduce a DatabaseLegacyTest class for deprecation testing

8.7.x
Alex Pott 2018-08-15 22:39:37 +01:00
parent 69501f3062
commit 3f44f5bbcb
No known key found for this signature in database
GPG Key ID: 31905460D4A69276
2 changed files with 42 additions and 31 deletions

View File

@ -0,0 +1,40 @@
<?php
namespace Drupal\KernelTests\Core\Database;
/**
* Deprecation tests cases for the database layer.
*
* @group legacy
*/
class DatabaseLegacyTest extends DatabaseTestBase {
/**
* Tests the db_table_exists() function.
*
* @expectedDeprecation db_table_exists() is deprecated in Drupal 8.0.x and will be removed before Drupal 9.0.0. Use $injected_database->schema()->tableExists($table) instead. See https://www.drupal.org/node/2947929.
*/
public function testDbTableExists() {
$this->assertTrue(db_table_exists('test'));
}
/**
* Tests the db_set_active() function.
*
* @expectedDeprecation db_set_active() is deprecated in Drupal 8.0.x and will be removed before Drupal 9.0.0. Use \Drupal\Core\Database\Database::setActiveConnection() instead. See https://www.drupal.org/node/2944084.
*/
public function testDbSetActive() {
$get_active_db = $this->connection->getKey();
$this->assert(db_set_active($get_active_db), 'Database connection is active');
}
/**
* Tests the db_drop_table() function.
*
* @expectedDeprecation db_drop_table() is deprecated in Drupal 8.0.x and will be removed before Drupal 9.0.0. Use \Drupal\Core\Database\Database::getConnection()->schema()->dropTable() instead. See https://www.drupal.org/node/2987737
*/
public function testDbDropTable() {
$this->assertFalse(db_drop_table('temp_test_table'));
}
}

View File

@ -2,8 +2,6 @@
namespace Drupal\KernelTests\Core\Database;
use Drupal\Core\Database\Database;
/**
* Regression tests cases for the database layer.
*
@ -37,14 +35,10 @@ class RegressionTest extends DatabaseTestBase {
/**
* Tests the db_table_exists() function.
*
* @group legacy
*
* @expectedDeprecation db_table_exists() is deprecated in Drupal 8.0.x and will be removed before Drupal 9.0.0. Use $injected_database->schema()->tableExists($table) instead. See https://www.drupal.org/node/2947929.
*/
public function testDBTableExists() {
$this->assertSame(TRUE, db_table_exists('test'), 'Returns true for existent table.');
$this->assertSame(FALSE, db_table_exists('nosuchtable'), 'Returns false for nonexistent table.');
$this->assertSame(TRUE, $this->connection->schema()->tableExists('test'), 'Returns true for existent table.');
$this->assertSame(FALSE, $this->connection->schema()->tableExists('nosuchtable'), 'Returns false for nonexistent table.');
}
/**
@ -63,27 +57,4 @@ class RegressionTest extends DatabaseTestBase {
$this->assertSame(FALSE, db_index_exists('test', 'nosuchindex'), 'Returns false for nonexistent index.');
}
/**
* Tests the db_set_active() function.
*
* @group legacy
*
* @expectedDeprecation db_set_active() is deprecated in Drupal 8.0.x and will be removed before Drupal 9.0.0. Use \Drupal\Core\Database\Database::setActiveConnection() instead. See https://www.drupal.org/node/2944084.
*/
public function testDBIsActive() {
$get_active_db = Database::getConnection()->getKey();
$this->assert(db_set_active($get_active_db), 'Database connection is active');
}
/**
* Tests the db_drop_table() function.
*
* @group legacy
*
* @expectedDeprecation db_drop_table() is deprecated in Drupal 8.0.x and will be removed before Drupal 9.0.0. Use \Drupal\Core\Database\Database::getConnection()->schema()->dropTable() instead. See https://www.drupal.org/node/2987737
*/
public function testDbDropTable() {
$this->assertFalse(db_drop_table('temp_test_table'));
}
}