Commit 5156b59f authored by Tres Seaver's avatar Tres Seaver

Move utility helpers into shared module.

parent c729e5f9
...@@ -104,9 +104,9 @@ commit, we'll add failing resource manager to the transaction. ...@@ -104,9 +104,9 @@ commit, we'll add failing resource manager to the transaction.
>>> t.addBeforeCommitHook(hook, '2') >>> t.addBeforeCommitHook(hook, '2')
>>> from transaction.tests.test__transaction import DummyFile >>> from transaction.tests.common import DummyFile
>>> from transaction.tests.test__transaction import Monkey >>> from transaction.tests.common import Monkey
>>> from transaction.tests.test__transaction import assertRaisesEx >>> from transaction.tests.common import assertRaisesEx
>>> from transaction import _transaction >>> from transaction import _transaction
>>> buffer = DummyFile() >>> buffer = DummyFile()
>>> with Monkey(_transaction, _TB_BUFFER=buffer): >>> with Monkey(_transaction, _TB_BUFFER=buffer):
...@@ -270,9 +270,9 @@ commit, we'll add failing resource manager to the transaction. ...@@ -270,9 +270,9 @@ commit, we'll add failing resource manager to the transaction.
>>> t.join(FailingDataManager()) >>> t.join(FailingDataManager())
>>> t.addAfterCommitHook(hook, '2') >>> t.addAfterCommitHook(hook, '2')
>>> from transaction.tests.test__transaction import DummyFile >>> from transaction.tests.common import DummyFile
>>> from transaction.tests.test__transaction import Monkey >>> from transaction.tests.common import Monkey
>>> from transaction.tests.test__transaction import assertRaisesEx >>> from transaction.tests.common import assertRaisesEx
>>> from transaction import _transaction >>> from transaction import _transaction
>>> buffer = DummyFile() >>> buffer = DummyFile()
>>> with Monkey(_transaction, _TB_BUFFER=buffer): >>> with Monkey(_transaction, _TB_BUFFER=buffer):
......
##############################################################################
#
# Copyright (c) 2012 Zope Foundation and Contributors.
# All Rights Reserved.
#
# This software is subject to the provisions of the Zope Public License,
# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE
#
##############################################################################
class DummyFile(object):
def __init__(self):
self._lines = []
def write(self, text):
self._lines.append(text)
def writelines(self, lines):
self._lines.extend(lines)
class Monkey(object):
# context-manager for replacing module names in the scope of a test.
def __init__(self, module, **kw):
self.module = module
self.to_restore = dict([(key, getattr(module, key)) for key in kw])
for key, value in kw.items():
setattr(module, key, value)
def __enter__(self):
return self
def __exit__(self, exc_type, exc_val, exc_tb):
for key, value in self.to_restore.items():
setattr(self.module, key, value)
def assertRaisesEx(e_type, checked, *args, **kw):
try:
checked(*args, **kw)
except e_type as e:
return e
raise AssertionError("Didn't raise: %s" % e_type.__name__)
...@@ -39,37 +39,6 @@ TODO ...@@ -39,37 +39,6 @@ TODO
import unittest import unittest
class DummyFile(object):
def __init__(self):
self._lines = []
def write(self, text):
self._lines.append(text)
def writelines(self, lines):
self._lines.extend(lines)
class Monkey(object):
# context-manager for replacing module names in the scope of a test.
def __init__(self, module, **kw):
self.module = module
self.to_restore = dict([(key, getattr(module, key)) for key in kw])
for key, value in kw.items():
setattr(module, key, value)
def __enter__(self):
return self
def __exit__(self, exc_type, exc_val, exc_tb):
for key, value in self.to_restore.items():
setattr(self.module, key, value)
def assertRaisesEx(e_type, checked, *args, **kw):
try:
checked(*args, **kw)
except e_type as e:
return e
raise AssertionError("Didn't raise: %s" % e_type.__name__)
class TransactionTests(unittest.TestCase): class TransactionTests(unittest.TestCase):
def _getTargetClass(self): def _getTargetClass(self):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment