Opened 7 years ago
Closed 7 years ago
#30353 closed Bug (invalid)
Recursion Error while running tests
| Reported by: | Manan | Owned by: | nobody |
|---|---|---|---|
| Component: | Testing framework | Version: | dev |
| Severity: | Normal | Keywords: | recustion, tests |
| Cc: | Triage Stage: | Unreviewed | |
| Has patch: | yes | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description
This is the output I get -
$ ./runtests.py queries
Testing against Django installed in '<path>' with up to 4 processes
Creating test database for alias 'default'...
Cloning test database for alias 'default'...
Cloning test database for alias 'default'...
Cloning test database for alias 'default'...
Cloning test database for alias 'default'...
System check identified no issues (1 silenced).
s.....sss........s.......................s..........s......................s.......x................x.........................................................................................s...................................................................................F........................................................................................
======================================================================
FAIL: test_avoid_infinite_loop_on_too_many_subqueries (queries.tests.Queries1Tests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib/python3.6/unittest/case.py", line 59, in testPartExecutor
yield
File "/usr/lib/python3.6/unittest/case.py", line 605, in run
testMethod()
File "/tmp/django/tests/queries/tests.py", line 409, in test_avoid_infinite_loop_on_too_many_subqueries
x = Tag.objects.filter(pk__in=x)
File "/usr/lib/python3.6/contextlib.py", line 99, in __exit__
self.gen.throw(type, value, traceback)
File "<path>/django/django/test/testcases.py", line 676, in _assert_raises_or_warns_cm
self.assertIn(expected_message, str(getattr(cm, cm_attr)))
File "/usr/lib/python3.6/unittest/case.py", line 1089, in assertIn
self.fail(self._formatMessage(msg, standardMsg))
File "/usr/lib/python3.6/unittest/case.py", line 670, in fail
raise self.failureException(msg)
AssertionError: 'Maximum recursion depth exceeded: too many subqueries.' not found in 'maximum recursion depth exceeded in comparison'
----------------------------------------------------------------------
Ran 363 tests in 0.622s
FAILED (failures=1, skipped=9, expected failures=2)
Destroying test database for alias 'default'...
Destroying test database for alias 'default'...
Destroying test database for alias 'default'...
Destroying test database for alias 'default'...
Destroying test database for alias 'default'...
Change History (1)
comment:1 by , 7 years ago
| Easy pickings: | unset |
|---|---|
| Resolution: | → invalid |
| Status: | assigned → closed |
Note:
See TracTickets
for help on using tickets.
Thanks for the report, however error message is correct. You get different message because recursion limit on your system is lower then we expected in a test (probably 1000). PR with fix is already prepared and it is waiting for merging.