diff options
author | Brian Maissy <brian@medigate.io> | 2019-10-24 09:29:00 +0300 |
---|---|---|
committer | Brian Maissy <brian@medigate.io> | 2019-10-24 09:36:21 +0300 |
commit | 2592b20d68a55c3b53f116410dfd515b995b7881 (patch) | |
tree | d0380651346c15047167803e8f9d3251f61bd24e /tests/test_pipeline.py | |
parent | fa0b0392c86126cae1a264197dddab647fa37821 (diff) | |
download | redis-py-2592b20d68a55c3b53f116410dfd515b995b7881.tar.gz |
Pipeline.execute() doesn't short-circuit on empty command stack if it is watching keysdont-short-circuit-execute-when-watching
Diffstat (limited to 'tests/test_pipeline.py')
-rw-r--r-- | tests/test_pipeline.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/test_pipeline.py b/tests/test_pipeline.py index 2e2507a..264a64f 100644 --- a/tests/test_pipeline.py +++ b/tests/test_pipeline.py @@ -191,6 +191,19 @@ class TestPipeline(object): assert not pipe.watching + def test_watch_failure_in_empty_transaction(self, r): + r['a'] = 1 + r['b'] = 2 + + with r.pipeline() as pipe: + pipe.watch('a', 'b') + r['b'] = 3 + pipe.multi() + with pytest.raises(redis.WatchError): + pipe.execute() + + assert not pipe.watching + def test_unwatch(self, r): r['a'] = 1 r['b'] = 2 |