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()))
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()
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)