Browse Source

Use parse_known_args so we can handle extra testrunner named parameters

Patrick Woods 7 years ago
parent
commit
fa853de486
2 changed files with 4 additions and 4 deletions
  1. 1 0
      CONTRIBUTORS.rst
  2. 3 4
      runtests.py

+ 1 - 0
CONTRIBUTORS.rst

@@ -256,6 +256,7 @@ Contributors
 * Anselm Bradford
 * Mads Jensen
 * Samir Shah
+* Patrick Woods
 
 Translators
 ===========

+ 3 - 4
runtests.py

@@ -20,16 +20,15 @@ def make_parser():
     parser.add_argument('--elasticsearch', action='store_true')
     parser.add_argument('--elasticsearch2', action='store_true')
     parser.add_argument('--elasticsearch5', action='store_true')
-    parser.add_argument('rest', nargs='*')
     return parser
 
 
 def parse_args(args=None):
-    return make_parser().parse_args(args)
+    return make_parser().parse_known_args(args)
 
 
 def runtests():
-    args = parse_args()
+    args, rest = parse_args()
 
     only_wagtail = r'^wagtail(\.|$)'
     if args.deprecation == 'all':
@@ -66,7 +65,7 @@ def runtests():
         # forcibly delete the ELASTICSEARCH_URL setting to skip those tests
         del os.environ['ELASTICSEARCH_URL']
 
-    argv = [sys.argv[0], 'test'] + args.rest
+    argv = [sys.argv[0], 'test'] + rest
     try:
         execute_from_command_line(argv)
     finally: