summaryrefslogtreecommitdiff
path: root/tests/test_memcache.py
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2017-11-04 19:56:57 -0400
committerTim Graham <timograham@gmail.com>2017-11-14 14:33:26 -0500
commit2e9dcfbb8efb8726468b02a2ed79f01a18ec2c26 (patch)
treebbfe781084a50e9da5e7bf18732625acce8103cd /tests/test_memcache.py
parenta565216013a98b23996de97bc3324992a278011d (diff)
downloadpython-memcached-2e9dcfbb8efb8726468b02a2ed79f01a18ec2c26.tar.gz
Capture and verify logging in tests
Diffstat (limited to 'tests/test_memcache.py')
-rw-r--r--tests/test_memcache.py25
1 files changed, 21 insertions, 4 deletions
diff --git a/tests/test_memcache.py b/tests/test_memcache.py
index 0072813..6408e81 100644
--- a/tests/test_memcache.py
+++ b/tests/test_memcache.py
@@ -5,6 +5,7 @@ import unittest
import six
from memcache import Client, SERVER_MAX_KEY_LENGTH, SERVER_MAX_VALUE_LENGTH # noqa: H301
+from .utils import captured_stderr
class FooStruct(object):
@@ -135,7 +136,13 @@ class TestMemcache(unittest.TestCase):
self.assertEqual(self.mc.get(key), value)
value = 'a' * SERVER_MAX_VALUE_LENGTH
- self.assertFalse(self.mc.set(key, value))
+ with captured_stderr() as log:
+ self.assertIs(self.mc.set(key, value), False)
+ self.assertEqual(
+ log.getvalue(),
+ "MemCached: while expecting 'STORED', got unexpected response "
+ "'SERVER_ERROR object too large for cache'\n"
+ )
# This test fails if the -I option is used on the memcached server
self.assertTrue(self.mc.get(key) is None)
@@ -155,16 +162,26 @@ class TestMemcache(unittest.TestCase):
"""Testing set_multi() with no memcacheds running."""
self.mc.disconnect_all()
- for server in self.mc.servers:
- server.mark_dead('test')
+ with captured_stderr() as log:
+ for server in self.mc.servers:
+ server.mark_dead('test')
+ self.assertIn('Marking dead.', log.getvalue())
errors = self.mc.set_multi({'key1': 'a', 'key2': 'b'})
self.assertEqual(sorted(errors), ['key1', 'key2'])
def test_disconnect_all_delete_multi(self):
"""Testing delete_multi() with no memcacheds running."""
self.mc.disconnect_all()
- ret = self.mc.delete_multi({'keyhere': 'a', 'keythere': 'b'})
+ with captured_stderr() as output:
+ ret = self.mc.delete_multi({'keyhere': 'a', 'keythere': 'b'})
self.assertEqual(ret, 1)
+ self.assertEqual(
+ output.getvalue(),
+ "MemCached: while expecting 'DELETED', got unexpected response "
+ "'NOT_FOUND'\n"
+ "MemCached: while expecting 'DELETED', got unexpected response "
+ "'NOT_FOUND'\n"
+ )
if __name__ == '__main__':