Opened 12 years ago
Last modified 12 years ago
#19355 closed Bug
LiveServerThread handles caught exceptions incorrectly — at Version 1
Reported by: | Owned by: | nobody | |
---|---|---|---|
Component: | Testing framework | Version: | dev |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Accepted | |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | yes | UI/UX: | no |
Description (last modified by )
In django.test.testcases.LiveServerThread.run a WSGIServerException is caught and the code expects it to have an errno attribute. However not WSGIServerException is a subclass of Exception and thus not guaranteed to have the errno attribute. The following short patch avoids this problem:
diff --git a/django/test/testcases.py b/django/test/testcases.py index 3bb40a5..ef4c8118 100644 --- a/django/test/testcases.py +++ b/django/test/testcases.py @@ -1022,7 +1022,7 @@ class LiveServerThread(threading.Thread): (self.host, port), QuietWSGIRequestHandler) except WSGIServerException as e: if (index + 1 < len(self.possible_ports) and - e.args[0].errno == errno.EADDRINUSE): + getattr(e.args[0], 'errno', 0) == errno.EADDRINUSE): # This port is already in use, so we go on and try with # the next one in the list. continue
Change History (1)
comment:1 by , 12 years ago
Description: | modified (diff) |
---|---|
Triage Stage: | Unreviewed → Accepted |
Note:
See TracTickets
for help on using tickets.
Thanks for the report. I've fixed the formatting – please use 'Preview' in the future.