From 56db36da943fa86de7c4d505cbd66babe54b5752 Mon Sep 17 00:00:00 2001 From: Brandon Rodriguez <brodriguez8774@gmail.com> Date: Tue, 6 Jun 2023 22:04:51 -0400 Subject: [PATCH] Correct UnitTests to always try to reset databases for consistent initial state --- py_dbcn/connectors/core/database.py | 4 +- py_dbcn/connectors/postgresql/database.py | 2 +- tests/connectors/core/test_database.py | 89 +++++++++++++------- tests/connectors/core/test_display.py | 28 +++++- tests/connectors/mysql/test_database.py | 12 ++- tests/connectors/mysql/test_display.py | 36 +++++++- tests/connectors/mysql/test_query.py | 12 ++- tests/connectors/mysql/test_records.py | 12 ++- tests/connectors/mysql/test_tables.py | 12 ++- tests/connectors/mysql/test_utils.py | 12 ++- tests/connectors/mysql/test_validate.py | 12 ++- tests/connectors/postgresql/test_database.py | 12 ++- tests/connectors/postgresql/test_display.py | 36 +++++++- tests/connectors/postgresql/test_query.py | 12 ++- tests/connectors/postgresql/test_records.py | 12 ++- tests/connectors/postgresql/test_tables.py | 12 ++- tests/connectors/postgresql/test_validate.py | 12 ++- 17 files changed, 274 insertions(+), 53 deletions(-) diff --git a/py_dbcn/connectors/core/database.py b/py_dbcn/connectors/core/database.py index e2e9133..53fdf0e 100644 --- a/py_dbcn/connectors/core/database.py +++ b/py_dbcn/connectors/core/database.py @@ -133,7 +133,7 @@ class BaseDatabase: # Check if provided database matches value in list. if db_name in available_databases: # Database already exists. Raise error. - raise ValueError( + raise self._base.errors.database_already_exists( 'Could not find database "{0}". Valid options are {1}.'.format(db_name, available_databases) ) @@ -160,7 +160,7 @@ class BaseDatabase: # Check if provided database matches value in list. if db_name not in available_databases: # Database does not exist. Raise error. - raise ValueError('Database with name "{0}" does not exist.'.format(db_name)) + raise self._base.errors.database_does_not_exist('Database with name "{0}" does not exist.'.format(db_name)) # Remove database. query = 'DROP DATABASE {0};'.format(db_name) diff --git a/py_dbcn/connectors/postgresql/database.py b/py_dbcn/connectors/postgresql/database.py index 64ee6f2..5ce18a8 100644 --- a/py_dbcn/connectors/postgresql/database.py +++ b/py_dbcn/connectors/postgresql/database.py @@ -98,7 +98,7 @@ class PostgresqlDatabase(BaseDatabase): break if not db_found: # Database does not exist. Raise error. - raise ValueError( + raise self._base.errors.database_does_not_exist( 'Could not find database "{0}". Valid options are {1}.'.format(db_name, available_databases) ) diff --git a/tests/connectors/core/test_database.py b/tests/connectors/core/test_database.py index f935d6c..df28a1a 100644 --- a/tests/connectors/core/test_database.py +++ b/tests/connectors/core/test_database.py @@ -53,13 +53,17 @@ class CoreDatabaseTestMixin: with self.subTest('With select_1 database selected'): db_name = '{0}__select_1'.format(self.test_db_name) - # Verify database exists. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. try: - self.connector.database.create(db_name) - except self.connector.errors.database_already_exists: + self.connector.database.drop(db_name, display_query=False, display_results=False) + except self.connector.errors.database_does_not_exist: # Database already exists, as we want. pass + # Create desired database. + self.connector.database.create(db_name) + # Switch databases and verify select changed. self.connector.database.use(db_name) result = self.connector.database.select() @@ -72,13 +76,17 @@ class CoreDatabaseTestMixin: with self.subTest('With select_2 database selected'): db_name = '{0}__select_2'.format(self.test_db_name) - # Verify database exists. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. try: - self.connector.database.create(db_name) - except self.connector.errors.database_already_exists: + self.connector.database.drop(db_name, display_query=False, display_results=False) + except self.connector.errors.database_does_not_exist: # Database already exists, as we want. pass + # Create desired database. + self.connector.database.create(db_name) + # Switch databases and verify select changed. self.connector.database.use(db_name) result = self.connector.database.select() @@ -95,13 +103,17 @@ class CoreDatabaseTestMixin: db_name = '{0}__show'.format(self.test_db_name) with self.subTest('SHOW query when database exists'): - # Verify database exists. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. try: - self.connector.database.create(db_name) - except self.connector.errors.database_already_exists: + self.connector.database.drop(db_name, display_query=False, display_results=False) + except self.connector.errors.database_does_not_exist: # Database already exists, as we want. pass + # Create desired database. + self.connector.database.create(db_name) + # Run test query. results = self.connector.database.show() @@ -132,18 +144,19 @@ class CoreDatabaseTestMixin: """ db_name = '{0}__create__success'.format(self.test_db_name) - # Verify database does not yet exist. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. try: - self.connector.database.drop(db_name) - except ValueError: - # Database does not yet exist, as we want. + self.connector.database.drop(db_name, display_query=False, display_results=False) + except self.connector.errors.database_does_not_exist: + # Database already exists, as we want. pass # Check databases prior to test query. Verify expected database did not return. results = self.connector.database.show() self.assertNotIn(db_name.casefold(), (str(x).casefold() for x in results)) - # Run test query. + # Create desired database. self.connector.database.create(db_name) # Check databases after test query. Verify expected database returned. @@ -157,13 +170,17 @@ class CoreDatabaseTestMixin: """ db_name = '{0}__create__failure'.format(self.test_db_name) - # Verify database does not yet exist. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. try: - self.connector.database.create(db_name) - except self.connector.errors.database_already_exists: + self.connector.database.drop(db_name, display_query=False, display_results=False) + except self.connector.errors.database_does_not_exist: # Database already exists, as we want. pass + # Create desired database. + self.connector.database.create(db_name) + # Check databases prior to test query. Verify expected database returned. results = self.connector.database.show() self.assertGreaterEqual(len(results), 1) @@ -184,13 +201,17 @@ class CoreDatabaseTestMixin: """ db_name = '{0}__use__success'.format(self.test_db_name) - # Verify database exists. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. try: - self.connector.database.create(db_name) - except self.connector.errors.database_already_exists: + self.connector.database.drop(db_name, display_query=False, display_results=False) + except self.connector.errors.database_does_not_exist: # Database already exists, as we want. pass + # Create desired database. + self.connector.database.create(db_name) + # Check databases prior to test query. Verify expected database returned. results = self.connector.database.show() self.assertGreaterEqual(len(results), 1) @@ -212,11 +233,12 @@ class CoreDatabaseTestMixin: """ db_name = '{0}__use__failure'.format(self.test_db_name) - # Verify database does not yet exist. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. try: - self.connector.database.drop(db_name) - except ValueError: - # Database does not exist, as we want. + self.connector.database.drop(db_name, display_query=False, display_results=False) + except self.connector.errors.database_does_not_exist: + # Database already exists, as we want. pass # Check databases prior to test query. Verify expected database did not return. @@ -233,13 +255,17 @@ class CoreDatabaseTestMixin: """ db_name = '{0}__delete__success'.format(self.test_db_name) - # Verify database does not yet exist. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. try: - self.connector.database.create(db_name) - except self.connector.errors.database_already_exists: + self.connector.database.drop(db_name, display_query=False, display_results=False) + except self.connector.errors.database_does_not_exist: # Database already exists, as we want. pass + # Create desired database. + self.connector.database.create(db_name) + # Check databases prior to test query. Verify expected database returned. results = self.connector.database.show() self.assertGreaterEqual(len(results), 1) @@ -259,10 +285,11 @@ class CoreDatabaseTestMixin: """ db_name = '{0}__delete__failure'.format(self.test_db_name) - # Verify database does not yet exist. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. try: - self.connector.database.drop(db_name) - except ValueError: + self.connector.database.drop(db_name, display_query=False, display_results=False,) + except self.connector.errors.database_does_not_exist: # Database does not yet exist, as we want. pass @@ -271,5 +298,5 @@ class CoreDatabaseTestMixin: self.assertNotIn(db_name, results) # Run test query. - with self.assertRaises(ValueError): + with self.assertRaises(self.connector.errors.database_does_not_exist): self.connector.database.delete(db_name) diff --git a/tests/connectors/core/test_display.py b/tests/connectors/core/test_display.py index 32005a5..29184bb 100644 --- a/tests/connectors/core/test_display.py +++ b/tests/connectors/core/test_display.py @@ -196,7 +196,19 @@ class CoreDisplayTablesTestMixin: # Since this directly tests display of tables, ensure we use a fresh database. db_name = '{0}d__tables__show'.format(self.test_db_name[0:-15]) - self.connector.database.create(db_name, display_query=False) + + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + self.connector.database.drop(db_name, display_query=False, display_results=False) + except self.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. + self.connector.database.create(db_name) + + # Select desired database. self.connector.database.use(db_name, display_query=False) with self.subTest('With no tables present'): @@ -315,7 +327,19 @@ class CoreDisplayTablesTestMixin: # Since this directly tests display of tables, ensure we use a fresh database. db_name = '{0}d__tables__desc'.format(self.test_db_name[0:-15]) - self.connector.database.create(db_name, display_query=False) + + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + self.connector.database.drop(db_name, display_query=False, display_results=False) + except self.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. + self.connector.database.create(db_name) + + # Select desired database. self.connector.database.use(db_name, display_query=False) # Create initial table to describe. diff --git a/tests/connectors/mysql/test_database.py b/tests/connectors/mysql/test_database.py index f2c353f..ce4ec98 100644 --- a/tests/connectors/mysql/test_database.py +++ b/tests/connectors/mysql/test_database.py @@ -24,8 +24,18 @@ class TestMysqlDatabase(TestMysqlDatabaseParent, CoreDatabaseTestMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_database'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/mysql/test_display.py b/tests/connectors/mysql/test_display.py index 05f2403..26d3b1e 100644 --- a/tests/connectors/mysql/test_display.py +++ b/tests/connectors/mysql/test_display.py @@ -38,8 +38,18 @@ class TestMysqlDisplayCore(TestMysqlDatabaseParent, CoreDisplayBaseTestMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_display__core'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. @@ -70,8 +80,18 @@ class TestMysqlDisplayTables(TestMysqlDatabaseParent, CoreDisplayTablesTestMixin # Define database name to use in tests. cls.test_db_name = '{0}test_display__tables'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. @@ -105,8 +125,18 @@ class TestMysqlDisplayRecords(TestMysqlDatabaseParent, CoreDisplayRecordsMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_display__records'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/mysql/test_query.py b/tests/connectors/mysql/test_query.py index 0454b68..e97e790 100644 --- a/tests/connectors/mysql/test_query.py +++ b/tests/connectors/mysql/test_query.py @@ -24,8 +24,18 @@ class TestMysqlQuery(TestMysqlDatabaseParent, CoreQueryTestMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_query'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/mysql/test_records.py b/tests/connectors/mysql/test_records.py index d617c2f..5c68286 100644 --- a/tests/connectors/mysql/test_records.py +++ b/tests/connectors/mysql/test_records.py @@ -26,8 +26,18 @@ class TestMysqlRecords(TestMysqlDatabaseParent, CoreRecordsTestMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_records'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/mysql/test_tables.py b/tests/connectors/mysql/test_tables.py index 7012fb0..cfa91a5 100644 --- a/tests/connectors/mysql/test_tables.py +++ b/tests/connectors/mysql/test_tables.py @@ -29,8 +29,18 @@ class TestMysqlTables(TestMysqlDatabaseParent, CoreTablesTestMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_tables'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/mysql/test_utils.py b/tests/connectors/mysql/test_utils.py index 35c78e8..7597ab1 100644 --- a/tests/connectors/mysql/test_utils.py +++ b/tests/connectors/mysql/test_utils.py @@ -25,8 +25,18 @@ class TestMysqlUtils(TestMysqlDatabaseParent, CoreUtilsTestMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_utils'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/mysql/test_validate.py b/tests/connectors/mysql/test_validate.py index f32fd49..cec092f 100644 --- a/tests/connectors/mysql/test_validate.py +++ b/tests/connectors/mysql/test_validate.py @@ -24,8 +24,18 @@ class TestMysqlValidate(TestMysqlDatabaseParent, CoreValidateTestMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_validate'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/postgresql/test_database.py b/tests/connectors/postgresql/test_database.py index c59a5db..c255d95 100644 --- a/tests/connectors/postgresql/test_database.py +++ b/tests/connectors/postgresql/test_database.py @@ -24,8 +24,18 @@ class TestPostgresqlDatabase(TestPostgresqlDatabaseParent, CoreDatabaseTestMixin # Define database name to use in tests. cls.test_db_name = '{0}test_database'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/postgresql/test_display.py b/tests/connectors/postgresql/test_display.py index 32d87c3..10936ac 100644 --- a/tests/connectors/postgresql/test_display.py +++ b/tests/connectors/postgresql/test_display.py @@ -36,8 +36,18 @@ class TestPostgresqlDisplay(TestPostgresqlDatabaseParent, CoreDisplayBaseTestMix # Define database name to use in tests. cls.test_db_name = '{0}test_display__core'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. @@ -68,8 +78,18 @@ class TestPostgresqlDisplayTables(TestPostgresqlDatabaseParent, CoreDisplayTable # Define database name to use in tests. cls.test_db_name = '{0}test_display__tables'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. @@ -103,8 +123,18 @@ class TestPostgreSQLDisplayRecords(TestPostgresqlDatabaseParent, CoreDisplayReco # Define database name to use in tests. cls.test_db_name = '{0}test_display__records'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/postgresql/test_query.py b/tests/connectors/postgresql/test_query.py index db51b24..18a8ed1 100644 --- a/tests/connectors/postgresql/test_query.py +++ b/tests/connectors/postgresql/test_query.py @@ -24,8 +24,18 @@ class TestPostgresqlQuery(TestPostgresqlDatabaseParent, CoreQueryTestMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_query'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/postgresql/test_records.py b/tests/connectors/postgresql/test_records.py index 0027928..4acf243 100644 --- a/tests/connectors/postgresql/test_records.py +++ b/tests/connectors/postgresql/test_records.py @@ -26,8 +26,18 @@ class TestPostgresqlRecords(TestPostgresqlDatabaseParent, CoreRecordsTestMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_records'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/postgresql/test_tables.py b/tests/connectors/postgresql/test_tables.py index b199fdf..c912012 100644 --- a/tests/connectors/postgresql/test_tables.py +++ b/tests/connectors/postgresql/test_tables.py @@ -25,8 +25,18 @@ class TestPostgresqlTables(TestPostgresqlDatabaseParent, CoreTablesTestMixin): # Define database name to use in tests. cls.test_db_name = '{0}test_tables'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. diff --git a/tests/connectors/postgresql/test_validate.py b/tests/connectors/postgresql/test_validate.py index f551bdb..24e5659 100644 --- a/tests/connectors/postgresql/test_validate.py +++ b/tests/connectors/postgresql/test_validate.py @@ -24,8 +24,18 @@ class TestPostgresqlValidate(TestPostgresqlDatabaseParent, CoreValidateTestMixin # Define database name to use in tests. cls.test_db_name = '{0}test_validate'.format(cls.test_db_name_start) - # Initialize database for tests. + # Ensure database does not currently exists. + # Guarantees tests are done from a consistent state. + try: + cls.connector.database.drop(cls.test_db_name, display_query=False, display_results=False) + except cls.connector.errors.database_does_not_exist: + # Database already exists, as we want. + pass + + # Create desired database. cls.connector.database.create(cls.test_db_name) + + # Select desired database. cls.connector.database.use(cls.test_db_name) # Check that database has no tables. -- GitLab