##// END OF EJS Templates
Work to address the review comments on Fernando's branch....
Work to address the review comments on Fernando's branch. * Added comment about Magic(object) (r1224) * Moved InteractiveTB.set_mode from IPythonApp -> InteractiveShell (r1229) * Moved pylabtools.py to IPython/lib (r1229) * Cleaned up comments and copyrights in testing (r1233) * Added comment about ip.shell._ofind (r1237) * Removed "Bye." from quitter (r1240). * Refactored and removed :mod:`IPython.utils.genutils` and :mod:`IPython.utils.platutils`. These modules have been replaced by topical focused modules in :mod:`IPython.utils`. * Refactored tests in :mod:`IPython.utils.tests`. * Moved :func:`IPython.testing.tools.temp_pyfile` to :mod:`IPython.utils.io`. * Moved :func:`IPython.testing.tools.cmd2argv` to :func:`IPython.testing.tools.pycmd2argv` and documented the fact that this only works with Python based command line programs. * Created a new :func:`IPython.utils.path.get_ipython_module_path` to use in finding paths to IPython modules.

File last commit:

r2498:3eae1372
r2498:3eae1372
Show More
util.py
65 lines | 2.5 KiB | text/x-python | PythonLexer
Brian E Granger
This is a manual merge of certain things in the ipython1-dev branch, revision 46, into the main ...
r1234 # encoding: utf-8
"""This file contains utility classes for performing tests with Deferreds.
"""
Brian Granger
Work to address the review comments on Fernando's branch....
r2498 #-----------------------------------------------------------------------------
# Copyright (C) 2009 The IPython Development Team
Brian E Granger
This is a manual merge of certain things in the ipython1-dev branch, revision 46, into the main ...
r1234 #
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
Brian Granger
Work to address the review comments on Fernando's branch....
r2498 #-----------------------------------------------------------------------------
Brian E Granger
This is a manual merge of certain things in the ipython1-dev branch, revision 46, into the main ...
r1234
Brian Granger
Work to address the review comments on Fernando's branch....
r2498 #-----------------------------------------------------------------------------
Brian E Granger
This is a manual merge of certain things in the ipython1-dev branch, revision 46, into the main ...
r1234 # Imports
Brian Granger
Work to address the review comments on Fernando's branch....
r2498 #-----------------------------------------------------------------------------
Brian E Granger
This is a manual merge of certain things in the ipython1-dev branch, revision 46, into the main ...
r1234
from twisted.trial import unittest
from twisted.internet import defer
Brian Granger
Work to address the review comments on Fernando's branch....
r2498 #-----------------------------------------------------------------------------
# Classes and functions
#-----------------------------------------------------------------------------
Brian E Granger
This is a manual merge of certain things in the ipython1-dev branch, revision 46, into the main ...
r1234 class DeferredTestCase(unittest.TestCase):
def assertDeferredEquals(self, deferred, expectedResult,
Fernando Perez
Cleanup check_sources and remove hard tabs from some files....
r2116 chainDeferred=None):
Brian E Granger
This is a manual merge of certain things in the ipython1-dev branch, revision 46, into the main ...
r1234 """Calls assertEquals on the result of the deferred and expectedResult.
chainDeferred can be used to pass in previous Deferred objects that
have tests being run on them. This chaining of Deferred's in tests
is needed to insure that all Deferred's are cleaned up at the end of
a test.
"""
if chainDeferred is None:
chainDeferred = defer.succeed(None)
Fernando Perez
Cleanup check_sources and remove hard tabs from some files....
r2116
Brian E Granger
This is a manual merge of certain things in the ipython1-dev branch, revision 46, into the main ...
r1234 def gotResult(actualResult):
self.assertEquals(actualResult, expectedResult)
deferred.addCallback(gotResult)
return chainDeferred.addCallback(lambda _: deferred)
def assertDeferredRaises(self, deferred, expectedException,
Fernando Perez
Cleanup check_sources and remove hard tabs from some files....
r2116 chainDeferred=None):
Brian E Granger
This is a manual merge of certain things in the ipython1-dev branch, revision 46, into the main ...
r1234 """Calls assertRaises on the Failure of the deferred and expectedException.
chainDeferred can be used to pass in previous Deferred objects that
have tests being run on them. This chaining of Deferred's in tests
is needed to insure that all Deferred's are cleaned up at the end of
a test.
"""
if chainDeferred is None:
chainDeferred = defer.succeed(None)
def gotFailure(f):
#f.printTraceback()
self.assertRaises(expectedException, f.raiseException)
#return f
deferred.addBoth(gotFailure)
return chainDeferred.addCallback(lambda _: deferred)