diff options
| author | Ryan P Kilby <rpkilby@ncsu.edu> | 2018-05-08 14:50:35 -0400 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2018-05-14 22:18:22 -0400 |
| commit | 2dcc5d629a6439b5547cdd6e67815cabf608fcd4 (patch) | |
| tree | 888271928a4a7d53dbcbe956d96dd1de4a35ea2e /tests/user_commands | |
| parent | 265506bbc347a6b3fcc6c66ab1a2417b3b7ea57a (diff) | |
Fixed #29392 -- Disallowed use of abbreviated forms of --settings and --pythonpath management command options.
Diffstat (limited to 'tests/user_commands')
| -rw-r--r-- | tests/user_commands/management/commands/set_option.py | 10 | ||||
| -rw-r--r-- | tests/user_commands/tests.py | 10 |
2 files changed, 20 insertions, 0 deletions
diff --git a/tests/user_commands/management/commands/set_option.py b/tests/user_commands/management/commands/set_option.py new file mode 100644 index 0000000000..a6e3c9bb6a --- /dev/null +++ b/tests/user_commands/management/commands/set_option.py @@ -0,0 +1,10 @@ +from django.core.management.base import BaseCommand + + +class Command(BaseCommand): + + def add_arguments(self, parser): + parser.add_argument('--set') + + def handle(self, **options): + self.stdout.write('Set %s' % options['set']) diff --git a/tests/user_commands/tests.py b/tests/user_commands/tests.py index b5d29721b4..92263f58d6 100644 --- a/tests/user_commands/tests.py +++ b/tests/user_commands/tests.py @@ -232,6 +232,16 @@ class CommandRunTests(AdminScriptTestCase): self.assertNoOutput(err) self.assertEqual(out.strip(), '/PREFIX/some/url/') + def test_disallowed_abbreviated_options(self): + """ + To avoid conflicts with custom options, commands don't allow + abbreviated forms of the --setting and --pythonpath options. + """ + self.write_settings('settings.py', apps=['user_commands']) + out, err = self.run_manage(['set_option', '--set', 'foo']) + self.assertNoOutput(err) + self.assertEqual(out.strip(), 'Set foo') + class UtilsTests(SimpleTestCase): |
