[Zope] Overriding DateTime
Chris Withers
chris at simplistix.co.uk
Mon Mar 23 08:45:06 EDT 2009
Tim Knapp wrote:
> I would like to override the DateTime.DateTime class within my
> functional tests. I have tried mocking (via mocker) and injecting the
> subclassed DateTime class into sys.modules (results in a
> TraversalError). The fartherest I've gotten is to set DateTime.DateTime
> = MySubclassedDateTime in my tests.py, which does work for the code
> 'within' the package(s) I'm testing but all the Zope core code (i.e. the
> instance created within PloneTestCase) is still referencing the global
> DateTime module. Has anyone successfully done this?
You should take a look at testfixtures ;-)
http://pypi.python.org/pypi/testfixtures
Specifically, the @replace decorator for one test or the Replacer (to
use in setUp and tearDown)
NB: Make sure you replace it in the module where's *used*, not the
module where it comes from...
cheers,
Chris
--
Simplistix - Content Management, Zope & Python Consulting
- http://www.simplistix.co.uk
More information about the Zope
mailing list