Пример #1
0
    def testReadAndWriteSerializedTaskCompletion(self):
        """Test ReadSerialized and WriteSerialized of TaskCompletion."""
        timestamp = int(time.time() * 1000000)
        session_identifier = '{0:s}'.format(uuid.uuid4().hex)
        task_identifier = '{0:s}'.format(uuid.uuid4().hex)

        expected_task_completion = tasks.TaskCompletion(
            identifier=task_identifier, session_identifier=session_identifier)
        expected_task_completion.timestamp = timestamp

        json_string = (json_serializer.JSONAttributeContainerSerializer.
                       WriteSerialized(expected_task_completion))

        self.assertIsNotNone(json_string)

        task_completion = (json_serializer.JSONAttributeContainerSerializer.
                           ReadSerialized(json_string))

        self.assertIsNotNone(task_completion)
        self.assertIsInstance(task_completion, tasks.TaskCompletion)

        expected_task_completion_dict = {
            'aborted': False,
            'identifier': task_identifier,
            'session_identifier': session_identifier,
            'timestamp': timestamp
        }

        task_completion_dict = task_completion.CopyToDict()
        self.assertEqual(sorted(task_completion_dict.items()),
                         sorted(expected_task_completion_dict.items()))
Пример #2
0
  def testWriteTaskStartAndCompletion(self):
    """Tests the WriteTaskStart and WriteTaskCompletion functions."""
    session = sessions.Session()
    task_start = tasks.TaskStart(session_identifier=session.identifier)
    task_completion = tasks.TaskCompletion(
        identifier=task_start.identifier,
        session_identifier=session.identifier)

    with shared_test_lib.TempDirectory() as temp_directory:
      temp_file = os.path.join(temp_directory, u'storage.plaso')
      storage_file = gzip_file.GZIPStorageFile(
          storage_type=definitions.STORAGE_TYPE_TASK)
      storage_file.Open(path=temp_file, read_only=False)

      storage_file.WriteTaskStart(task_start)
      storage_file.WriteTaskCompletion(task_completion)

      storage_file.Close()
Пример #3
0
  def testCopyToDict(self):
    """Tests the CopyToDict function."""
    session_identifier = '{0:s}'.format(uuid.uuid4().hex)
    timestamp = int(time.time() * 1000000)
    task_identifier = '{0:s}'.format(uuid.uuid4().hex)
    task_completion = tasks.TaskCompletion(
        identifier=task_identifier, session_identifier=session_identifier)
    task_completion.timestamp = timestamp

    self.assertEqual(task_completion.identifier, task_identifier)

    expected_dict = {
        'aborted': False,
        'identifier': task_completion.identifier,
        'session_identifier': task_completion.session_identifier,
        'timestamp': timestamp}

    test_dict = task_completion.CopyToDict()

    self.assertEqual(test_dict, expected_dict)