def test_pickle_serialized(self): obj = {'a': 1.45345, 'b': 'asdfsdf', 'c': 10000L} original = ns.UnSerialized(obj) originalSer = ns.SerializeIt(original) firstData = originalSer.getData() firstTD = originalSer.getTypeDescriptor() firstMD = originalSer.getMetadata() self.assertEquals(firstTD, 'pickle') self.assertEquals(firstMD, {}) unSerialized = ns.UnSerializeIt(originalSer) secondObj = unSerialized.getObject() for k, v in secondObj.iteritems(): self.assertEquals(obj[k], v) secondSer = ns.SerializeIt(ns.UnSerialized(secondObj)) self.assertEquals(firstData, secondSer.getData()) self.assertEquals(firstTD, secondSer.getTypeDescriptor()) self.assertEquals(firstMD, secondSer.getMetadata())
def test_ndarray_serialized(self): import numpy a = numpy.linspace(0.0, 1.0, 1000) unSer1 = ns.UnSerialized(a) ser1 = ns.SerializeIt(unSer1) td = ser1.getTypeDescriptor() self.assertEquals(td, 'ndarray') md = ser1.getMetadata() self.assertEquals(md['shape'], a.shape) self.assertEquals(md['dtype'], a.dtype.str) buff = ser1.getData() self.assertEquals(buff, numpy.getbuffer(a)) s = ns.Serialized(buff, td, md) final = ns.unserialize(s) self.assertEquals(numpy.getbuffer(a), numpy.getbuffer(final)) self.assertTrue((a == final).all()) self.assertEquals(a.dtype.str, final.dtype.str) self.assertEquals(a.shape, final.shape) # test non-copying: a[2] = 1e9 self.assertTrue((a == final).all())