def test_cpickle_serializer(self): v = 'string' self.assertEqual(cps.loads(cps.dumps(v)), v) v = u'unicode' self.assertEqual(cps.loads(cps.dumps(v)), v) v = (1, 2, 3) self.assertEqual(cps.loads(cps.dumps(v)), v) v = [1, 2, 3] self.assertEqual(cps.loads(cps.dumps(v)), v) v = {'a': 1, 'b': 2, 'c': 3} self.assertEqual(cps.loads(cps.dumps(v)), v)
def test_cpickle_serializer(self): v = 'string' self.assertEqual(cps.loads(cps.dumps(v)), v) v = u'unicode' self.assertEqual(cps.loads(cps.dumps(v)), v) v = (1,2,3) self.assertEqual(cps.loads(cps.dumps(v)), v) v = [1,2,3] self.assertEqual(cps.loads(cps.dumps(v)), v) v = {'a':1, 'b':2, 'c':3} self.assertEqual(cps.loads(cps.dumps(v)), v)
def test_cpickle_serializer(self): from kvlite.serializers import cPickleSerializer as cps v = 'string' self.assertEqual(cps.loads(cps.dumps(v)), v) v = u'unicode' self.assertEqual(cps.loads(cps.dumps(v)), v) v = (1,2,3) self.assertEqual(cps.loads(cps.dumps(v)), v) v = [1,2,3] self.assertEqual(cps.loads(cps.dumps(v)), v) v = {'a':1, 'b':2, 'c':3} self.assertEqual(cps.loads(cps.dumps(v)), v)
def prepare_kv(self, k, v, backend='sqlite'): ''' prepare key/value pair before insert to database backend can be 'mysql' or 'sqlite' ''' k = self.prepare_key(k) if k == self._ZEROS_KEY: v = cPickleSerializer.dumps(v) else: v = self._serializer.dumps(v) if backend == 'sqlite': return (k,v) elif backend == 'mysql': return (binascii.a2b_hex(k), v, v) else: raise RuntimeError('Uknown backend: %s' % backend)
def prepare_kv(self, k, v, backend='sqlite'): ''' prepare key/value pair before insert to database backend can be 'mysql' or 'sqlite' ''' k = self.prepare_key(k) if k == self._ZEROS_KEY: v = cPickleSerializer.dumps(v) else: v = self._serializer.dumps(v) if backend == 'sqlite': return (k, v) elif backend == 'mysql': return (binascii.a2b_hex(k), v, v) else: raise RuntimeError('Uknown backend: %s' % backend)