Fixed #23136 -- Added a message when sqlclear does nothing

This commit is contained in:
Gabriel Muñumel 2014-08-04 20:00:00 -04:30 committed by Tim Graham
parent 5853c87a45
commit 3e241313a4
3 changed files with 15 additions and 2 deletions

View File

@ -113,6 +113,8 @@ def sql_delete(app_config, style, connection, close_connection=True):
cursor.close()
connection.close()
if not output:
output.append('-- App creates no tables in the database. Nothing to do.')
return output[::-1] # Reverse it, to deal with table dependencies.

View File

@ -297,7 +297,8 @@ class DjangoAdminFullPathDefaultSettings(AdminScriptTestCase):
contains the test application specified using a full path.
"""
def setUp(self):
self.write_settings('settings.py', ['django.contrib.auth', 'django.contrib.contenttypes', 'admin_scripts'])
self.write_settings('settings.py', ['django.contrib.auth', 'django.contrib.contenttypes',
'admin_scripts', 'admin_scripts.complex_app'])
def tearDown(self):
self.remove_settings('settings.py')
@ -316,6 +317,13 @@ class DjangoAdminFullPathDefaultSettings(AdminScriptTestCase):
self.assertNoOutput(err)
self.assertOutput(out, 'CREATE TABLE')
def test_sqlclear_builtin_with_settings(self):
"fulldefault: django-admin builtin commands succeed if a setting file is provided"
args = ['sqlclear', '--settings=test_project.settings', 'complex_app']
out, err = self.run_django_admin(args)
self.assertNoOutput(err)
self.assertOutput(out, '-- App creates no tables in the database. Nothing to do.')
def test_builtin_with_environment(self):
"fulldefault: django-admin builtin commands succeed if the environment contains settings"
args = ['sqlall', 'admin_scripts']

View File

@ -73,7 +73,10 @@ class SQLCommandsRouterTestCase(TestCase):
for sql_command in (sql_all, sql_create, sql_delete, sql_indexes, sql_destroy_indexes):
if sql_command is sql_delete:
output = sql_command(app_config, no_style(), connections[DEFAULT_DB_ALIAS], close_connection=False)
# "App creates no tables in the database. Nothing to do."
expected_output = 1
else:
output = sql_command(app_config, no_style(), connections[DEFAULT_DB_ALIAS])
self.assertEqual(len(output), 0,
expected_output = 0
self.assertEqual(len(output), expected_output,
"%s command is not honoring routers" % sql_command.__name__)