← Back to team overview

testtools-dev team mailing list archive

[Bug 666345] Re: test_spinner.TestRunInReactor.test_clean_running_threads fails with an extra thread

 

Thanks for the report. The test looks to be passing on Hudson, so I
think we can rule out Python 2.4.

 * Do you get the failure reliably, or does it only happen from time to time?
 * Could you please try with latest trunk and see if you still get the failure?
 * If trunk still fails, could you please try this patch:


=== modified file 'testtools/tests/test_spinner.py'
--- testtools/tests/test_spinner.py	2010-10-26 10:42:59 +0000
+++ testtools/tests/test_spinner.py	2010-10-31 17:32:33 +0000
@@ -237,7 +237,7 @@ class TestRunInReactor(TestCase):
         reactor = self.make_reactor()
         timeout = self.make_timeout()
         spinner = self.make_spinner(reactor)
-        spinner.run(timeout, reactor.callInThread, time.sleep, timeout / 2.0)
+        spinner.run(timeout * 10, reactor.callInThread, time.sleep, timeout)
         self.assertThat(list(threading.enumerate()), Equals(current_threads))
 
     def test_leftover_junk_available(self):


** Changed in: testtools
   Importance: Undecided => High

** Changed in: testtools
       Status: New => Incomplete

-- 
test_spinner.TestRunInReactor.test_clean_running_threads fails with an extra thread
https://bugs.launchpad.net/bugs/666345
You received this bug notification because you are a member of testtools
developers, which is subscribed to testtools.

Status in testtools: Incomplete

Bug description:
======================================================================
FAIL: testtools.tests.test_spinner.TestRunInReactor.test_clean_running_threads
----------------------------------------------------------------------
Text attachment: traceback
------------
Traceback (most recent call last):
  File "C:\bzr\testtools\testtools\runtest.py", line 143, in _run_user
    return fn(*args)
  File "C:\bzr\testtools\testtools\testcase.py", line 539, in _run_test_method
    return self._get_test_method()()
  File "C:\bzr\testtools\testtools\tests\test_spinner.py", line 241, in test_clean_running_threads
    self.assertThat(list(threading.enumerate()), Equals(current_threads))
  File "C:\bzr\testtools\testtools\testcase.py", line 384, in assertThat
    self.fail('Match failed. Matchee: "%s"\nMatcher: %s\nDifference: %s\n'
AssertionError: Match failed. Matchee: "[<_MainThread(MainThread, started)>, <Thread(PoolThread-twisted.internet.reactor-1, stopped)>]"
Matcher: Equals([<_MainThread(MainThread, started)>])
Difference: !=:
reference = [<_MainThread(MainThread, started)>]
actual = [<_MainThread(MainThread, started)>,
 <Thread(PoolThread-twisted.internet.reactor-1, stopped)>]

This may be related to my OS, my Python version (2.4) or my twisted version (8.1.0).





References