runner.py 865 B

1234567891011121314151617181920212223242526272829
  1. from django.test.runner import DiscoverRunner
  2. class CustomOptionsTestRunner(DiscoverRunner):
  3. def __init__(
  4. self,
  5. verbosity=1,
  6. interactive=True,
  7. failfast=True,
  8. option_a=None,
  9. option_b=None,
  10. option_c=None,
  11. **kwargs,
  12. ):
  13. super().__init__(
  14. verbosity=verbosity, interactive=interactive, failfast=failfast
  15. )
  16. self.option_a = option_a
  17. self.option_b = option_b
  18. self.option_c = option_c
  19. @classmethod
  20. def add_arguments(cls, parser):
  21. parser.add_argument("--option_a", "-a", default="1"),
  22. parser.add_argument("--option_b", "-b", default="2"),
  23. parser.add_argument("--option_c", "-c", default="3"),
  24. def run_tests(self, test_labels, **kwargs):
  25. print("%s:%s:%s" % (self.option_a, self.option_b, self.option_c))