class documentation

class DatabaseCreation(BaseDatabaseCreation):

View In Hierarchy

Undocumented

Static Method is​_in​_memory​_db Undocumented
Method ​_clone​_test​_db Internal implementation - duplicate the test db tables.
Method ​_create​_test​_db Internal implementation - create the test db tables.
Method ​_destroy​_test​_db Internal implementation - remove the test db tables.
Method ​_get​_test​_db​_name No summary
Method get​_test​_db​_clone​_settings Return a modified connection settings dict for the n-th clone of a DB.
Method test​_db​_signature Return a tuple that uniquely identifies a test database.

Inherited from BaseDatabaseCreation:

Method __init__ Undocumented
Method ​_execute​_create​_test​_db Undocumented
Method ​_get​_database​_display​_str Return display string for a database for use in various actions.
Method ​_nodb​_cursor Undocumented
Method clone​_test​_db Clone a test database.
Method create​_test​_db Create a test database, prompting the user for confirmation if the database already exists. Return the name of the test database created.
Method deserialize​_db​_from​_string Reload the database with data from a string generated by the serialize_db_to_string() method.
Method destroy​_test​_db Destroy a test database, prompting the user for confirmation if the database already exists.
Method log Undocumented
Method mark​_expected​_failures​_and​_skips Mark tests in Django's test suite which are expected failures on this database and test which should be skipped on this database.
Method serialize​_db​_to​_string Serialize all data in the database into a JSON string. Designed only for test runner usage; will not handle large amounts of data.
Method set​_as​_test​_mirror Set this database up to be used in testing as a mirror of a primary database whose settings are given.
Method sql​_table​_creation​_suffix SQL to append to the end of the test table creation statements.
Instance Variable connection Undocumented
@staticmethod
def is_in_memory_db(database_name):

Undocumented

def _clone_test_db(self, suffix, verbosity, keepdb=False):
Internal implementation - duplicate the test db tables.
def _create_test_db(self, verbosity, autoclobber, keepdb=False):
Internal implementation - create the test db tables.
def _destroy_test_db(self, test_database_name, verbosity):
Internal implementation - remove the test db tables.
def _get_test_db_name(self):
Internal implementation - return the name of the test DB that will be created. Only useful when called from create_test_db() and _create_test_db() and when no external munging is done with the 'NAME' settings.
def get_test_db_clone_settings(self, suffix):
Return a modified connection settings dict for the n-th clone of a DB.
def test_db_signature(self):

Return a tuple that uniquely identifies a test database.

This takes into account the special cases of ":memory:" and "" for SQLite since the databases will be distinct despite having the same TEST NAME. See https://www.sqlite.org/inmemorydb.html