Example #1
0
    def test_getPickled(self):
        """
        Ensure that pickled object can be fetched.
        """
        client = YamClient(['one', 'two'], connect=False)
        transports = makeTestConnections(client)

        # Get a value that should hit first client and not second
        value = {'foo': 'bar', 'biz': 'baz'}
        pickled = cPickle.dumps(value, cPickle.HIGHEST_PROTOCOL)
        send = "get aaa\r\n"
        recv = ["VALUE aaa 0 %i\r\n%s\r\nEND\r\n" % (len(pickled), pickled)]
        yield self._test(client.getPickled("aaa"), transports[:1], send, recv, (0, value))
        self.assertEqual(transports[1].value(), "")
Example #2
0
    def test_getPickledWithCompression(self):
        """
        Ensure that pickled object can be fetched with compression.
        """
        client = YamClient(['one', 'two'], connect=False)
        transports = makeTestConnections(client)

        # Get a value that should hit first client and not second
        value = {'foo': 'bar', 'biz': 'baz'}
        pickled = zlib.compress(cPickle.dumps(value, cPickle.HIGHEST_PROTOCOL))
        send = "get aaa\r\n"
        recv = ["VALUE aaa 0 %i\r\n%s\r\nEND\r\n" % (len(pickled), pickled)]
        d = client.getPickled("aaa", uncompress=True)
        yield self._test(d, transports[:1], send, recv, (0, value))
        self.assertEqual(transports[1].value(), "")