Пример #1
0
    def ProtoEncodeDecode():
      s = jobs_pb2.GrrMessage(name=u"foo", request_id=1, response_id=1,
                              session_id=u"session")
      data = s.SerializeToString()

      new_s = jobs_pb2.GrrMessage()
      new_s.ParseFromString(data)

      return s, new_s
Пример #2
0
    def testEncode(self):
        """Comparing encoding speed of a typical protobuf."""
        s = jobs_pb2.GrrMessage(name=u"foo",
                                request_id=1,
                                response_id=1,
                                session_id=u"session")
        serialized = s.SerializeToString()

        def ProtoEncode():
            s1 = jobs_pb2.GrrMessage(name=u"foo",
                                     request_id=1,
                                     response_id=1,
                                     session_id=u"session")

            test = s1.SerializeToString()
            self.assertEqual(len(serialized), len(test))

        def RDFStructEncode():
            s2 = StructGrrMessage(name=u"foo",
                                  request_id=1,
                                  response_id=1,
                                  session_id=u"session")

            test = s2.SerializeToString()
            self.assertEqual(len(serialized), len(test))

        self.TimeIt(RDFStructEncode)
        self.TimeIt(ProtoEncode)
Пример #3
0
    def testDecode(self):
        """Test decoding performance."""

        s = jobs_pb2.GrrMessage(name=u"foo",
                                request_id=1,
                                response_id=1,
                                session_id=u"session")
        data = s.SerializeToString()

        def ProtoDecode():
            new_s = jobs_pb2.GrrMessage()
            new_s.ParseFromString(data)

            self.assertEqual(new_s.session_id, "session")
            self.assertEqual(new_s.session_id.__class__, unicode)

        def RDFStructDecode():
            new_s = StructGrrMessage()
            new_s.ParseFromString(data)

            self.assertEqual(new_s.session_id, "session")
            self.assertEqual(new_s.session_id.__class__, unicode)

        self.TimeIt(RDFStructDecode)
        self.TimeIt(ProtoDecode)
Пример #4
0
 def ProtoEncode():
     s = jobs_pb2.GrrMessage(name=u"foo",
                             request_id=1,
                             response_id=1,
                             session_id=u"session")
     test = s.SerializeToString()
     self.assertEqual(len(serialized), len(test))
Пример #5
0
  def testDecodeEncode(self):
    """Test performance of decode/encode cycle."""

    s = jobs_pb2.GrrMessage(
        name=u"foo", request_id=1, response_id=1, session_id=u"session")
    data = s.SerializeToString()

    def ProtoDecodeEncode():
      new_s = jobs_pb2.GrrMessage()
      new_s.ParseFromString(data)
      new_s.SerializeToString()

    def RDFStructDecodeEncode():
      new_s = StructGrrMessage.FromSerializedString(data)
      new_s.SerializeToString()

    self.TimeIt(RDFStructDecodeEncode)
    self.TimeIt(ProtoDecodeEncode)
Пример #6
0
 def ProtoDecodeEncode():
     new_s = jobs_pb2.GrrMessage()
     new_s.ParseFromString(data)
     new_s.SerializeToString()
Пример #7
0
        def ProtoDecode():
            new_s = jobs_pb2.GrrMessage()
            new_s.ParseFromString(data)

            self.assertEqual(new_s.session_id, "session")
            self.assertEqual(new_s.session_id.__class__, unicode)
Пример #8
0
 def ProtoCreateAndSerialize():
     s = jobs_pb2.GrrMessage(name=u"foo",
                             request_id=1,
                             response_id=1,
                             session_id=u"session")
     return len(s.SerializeToString())
Пример #9
0
 def SendCallback(fs_msg):
     pb_msg = jobs_pb2.GrrMessage()
     fs_msg.data.Unpack(pb_msg)
     msg = rdf_flows.GrrMessage.FromSerializedString(
         pb_msg.SerializeToString())
     client_mock.mock_task_queue.append(msg)