summaryrefslogtreecommitdiff
path: root/test/engine/test_execute.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2013-06-30 18:35:12 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2013-06-30 18:35:12 -0400
commitb38a76cd1d47cd6b8f1abef30ad7c3aeaa27d537 (patch)
tree7af1dba9e242c77a248cb2194434aa9bf3ca49b7 /test/engine/test_execute.py
parent715d6cf3d10a71acd7726b7e00c3ff40b4559bc7 (diff)
downloadsqlalchemy-b38a76cd1d47cd6b8f1abef30ad7c3aeaa27d537.tar.gz
- replace most explicitly-named test objects called "Mock..." with
actual mock objects from the mock library. I'd like to use mock for new tests so we might as well use it in obvious places. - use unittest.mock in py3.3 - changelog - add a note to README.unittests - add tests_require in setup.py - have tests import from sqlalchemy.testing.mock - apply usage of mock to one of the event tests. we can be using this approach all over the place.
Diffstat (limited to 'test/engine/test_execute.py')
-rw-r--r--test/engine/test_execute.py24
1 files changed, 14 insertions, 10 deletions
diff --git a/test/engine/test_execute.py b/test/engine/test_execute.py
index 1c577730b..9795e4c10 100644
--- a/test/engine/test_execute.py
+++ b/test/engine/test_execute.py
@@ -19,6 +19,8 @@ from sqlalchemy.dialects.oracle.zxjdbc import ReturningParam
from sqlalchemy.engine import result as _result, default
from sqlalchemy.engine.base import Connection, Engine
from sqlalchemy.testing import fixtures
+from sqlalchemy.testing.mock import Mock, call
+
users, metadata, users_autoinc = None, None, None
class ExecuteTest(fixtures.TestBase):
@@ -455,20 +457,22 @@ class ConvenienceExecuteTest(fixtures.TablesTest):
def test_transaction_engine_ctx_begin_fails(self):
engine = engines.testing_engine()
- class MockConnection(Connection):
- closed = False
- def begin(self):
- raise Exception("boom")
-
- def close(self):
- MockConnection.closed = True
- engine._connection_cls = MockConnection
- fn = self._trans_fn()
+
+ mock_connection = Mock(
+ return_value=Mock(
+ begin=Mock(side_effect=Exception("boom"))
+ )
+ )
+ engine._connection_cls = mock_connection
assert_raises(
Exception,
engine.begin
)
- assert MockConnection.closed
+
+ eq_(
+ mock_connection.return_value.close.mock_calls,
+ [call()]
+ )
def test_transaction_engine_ctx_rollback(self):
fn = self._trans_rollback_fn()