diff --git a/flask/testing.py b/flask/testing.py index c0b01a7a..d2957036 100644 --- a/flask/testing.py +++ b/flask/testing.py @@ -59,7 +59,7 @@ class FlaskClient(Client): raise RuntimeError('Session transactions only make sense ' 'with cookies enabled.') app = self.application - environ_overrides = kwargs.pop('environ_overrides', {}) + environ_overrides = kwargs.setdefault('environ_overrides', {}) self.cookie_jar.inject_wsgi(environ_overrides) outer_reqctx = _request_ctx_stack.top with app.test_request_context(*args, **kwargs) as c: diff --git a/flask/testsuite/testing.py b/flask/testsuite/testing.py index 2b073fd3..6574e77d 100644 --- a/flask/testsuite/testing.py +++ b/flask/testsuite/testing.py @@ -62,6 +62,9 @@ class TestToolsTestCase(FlaskTestCase): self.assert_equal(len(sess), 1) rv = c.get('/') self.assert_equal(rv.data, '[42]') + with c.session_transaction() as sess: + self.assert_equal(len(sess), 1) + self.assert_equal(sess['foo'], [42]) def test_session_transactions_no_null_sessions(self): app = flask.Flask(__name__)