def test_setPickled(self): """ Ensure that pickled object can be stored. """ client = YamClient(['one', 'two'], connect=False) transports = makeTestConnections(client) # Set a value that should hit first client and not second value = cPickle.dumps({'foo': 'bar'}, cPickle.HIGHEST_PROTOCOL) send = "set aaa 0 0 %i\r\n%s\r\n" % (len(value), value) recv = ["STORED\r\n"] yield self._test(client.setPickled("aaa", {'foo': 'bar'}), transports[:1], send, recv, True) self.assertEqual(transports[1].value(), "") # Set a value that should hit second client and not first value = cPickle.dumps({'foo': 'bar'}, cPickle.HIGHEST_PROTOCOL) send = "set foo 0 0 %i\r\n%s\r\n" % (len(value), value) recv = ["STORED\r\n"] transports[0].clear() yield self._test(client.setPickled("foo", {'foo': 'bar'}), transports[1:], send, recv, True) self.assertEqual(transports[0].value(), "")
def test_setPickledWithCompression(self): """ Ensure that pickled object can be stored with compression. """ client = YamClient(['one', 'two'], connect=False) transports = makeTestConnections(client) # Set a value that should hit first client and not second, and is gzipped value = zlib.compress(cPickle.dumps({'foo': 'bar'}, cPickle.HIGHEST_PROTOCOL)) send = "set aaa 0 0 %i\r\n%s\r\n" % (len(value), value) recv = ["STORED\r\n"] d = client.setPickled("aaa", {'foo': 'bar'}, compress=True) yield self._test(d, transports[:1], send, recv, True) self.assertEqual(transports[1].value(), "")
def test_setPickledWithCompression(self): """ Ensure that pickled object can be stored with compression. """ client = YamClient(['one', 'two'], connect=False) transports = makeTestConnections(client) # Set a value that should hit first client and not second, and is gzipped value = zlib.compress( cPickle.dumps({'foo': 'bar'}, cPickle.HIGHEST_PROTOCOL)) send = "set aaa 0 0 %i\r\n%s\r\n" % (len(value), value) recv = ["STORED\r\n"] d = client.setPickled("aaa", {'foo': 'bar'}, compress=True) yield self._test(d, transports[:1], send, recv, True) self.assertEqual(transports[1].value(), "")