Example #1
0
   def test_roundtrip(self):
      for msg in generate_test_messages():
         for serializer in self.serializers:

            ## serialize message
            bytes, binary = serializer.serialize(msg)

            ## unserialize message again
            msg2 = serializer.unserialize(bytes, binary)

            ## must be equal: message roundtrips via the serializer
            self.assertEqual([msg], msg2)
Example #2
0
    def test_roundtrip(self):
        for msg in generate_test_messages():
            for serializer in self.serializers:

                ## serialize message
                bytes, binary = serializer.serialize(msg)

                ## unserialize message again
                msg2 = serializer.unserialize(bytes, binary)

                ## must be equal: message roundtrips via the serializer
                self.assertEqual([msg], msg2)
Example #3
0
   def test_caching(self):
      for msg in generate_test_messages():
         ## message serialization cache is initially empty
         self.assertEqual(msg._serialized, {})
         for serializer in self.serializers:

            ## verify message serialization is not yet cached
            self.assertFalse(serializer._serializer in msg._serialized)
            bytes, binary = serializer.serialize(msg)

            ## now the message serialization must be cached
            self.assertTrue(serializer._serializer in msg._serialized)
            self.assertEqual(msg._serialized[serializer._serializer], bytes)

            ## and after resetting the serialization cache, message
            ## serialization is gone
            msg.uncache()
            self.assertFalse(serializer._serializer in msg._serialized)
   def test_caching(self):
      for msg in generate_test_messages():
         ## message serialization cache is initially empty
         self.assertEqual(msg._serialized, {})
         for serializer in self.serializers:

            ## verify message serialization is not yet cached
            self.assertFalse(serializer._serializer in msg._serialized)
            payload, binary = serializer.serialize(msg)

            ## now the message serialization must be cached
            self.assertTrue(serializer._serializer in msg._serialized)
            self.assertEqual(msg._serialized[serializer._serializer], payload)

            ## and after resetting the serialization cache, message
            ## serialization is gone
            msg.uncache()
            self.assertFalse(serializer._serializer in msg._serialized)