Opened 7 years ago

Closed 7 years ago

#5453 closed (fixed)

Test database used in runtests.py does not match documented behavior

Reported by: mcroydon Owned by: nobody
Component: Testing framework Version: master
Severity: Keywords:
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation:
Needs tests: Patch needs improvement:
Easy pickings: UI/UX:

Description

As of [6184], it is impossible to set TEST_DATABASE_NAME and have that be used when tests/runtests.py is run. The test runner overrides settings.TEST_DATABASE_NAME with the hard-coded value 'django_test_db', so that even if TEST_DATABASE_NAME is set, it will be ignored:

mattbookpro:~/code/python/sprint/django-trunk mcroydon$ python tests/runtests.py --settings=sprint.settings
Got an error creating the test database: database "django_test_db" already exists

After applying the patch, what actually happens matches the test documentation. If your DATABASE_NAME is "mydatabase" and TEST_DATABASE_NAME is not set, the test framework will use "test_mydatabase":

mattbookpro:~/code/python/sprint/django-trunk mcroydon$ python tests/runtests.py --settings=sprint.settings    
Got an error creating the test database: database "test_mydatabase" already exists

If you set TEST_DATABASE_NAME to "arbitrarytestdb" that database will be used for testing instead:

mattbookpro:~/code/python/sprint/django-trunk mcroydon$ python tests/runtests.py --settings=sprint.settings
Got an error creating the test database: database "arbitrarytestdb" already exists

Attachments (1)

test_database_name.diff (1.2 KB) - added by mcroydon 7 years ago.
Patch to make TEST_DATABASE_NAME behavior match documentation

Download all attachments as: .zip

Change History (2)

Changed 7 years ago by mcroydon

Patch to make TEST_DATABASE_NAME behavior match documentation

comment:1 Changed 7 years ago by mtredinnick

  • Resolution set to fixed
  • Status changed from new to closed

(In [6186]) Fixed #5453 -- Fixed TEST_DATABASE_NAME handling to match documentation. Thanks, Matt Croydon.

Note: See TracTickets for help on using tickets.
Back to Top