public ArchiveExtraction Extract(string fileName) { var uuid = Path.GetFileNameWithoutExtension(fileName); var targetFolderName = TemporaryFolder + Path.DirectorySeparatorChar + uuid; _compressionUtility.ExtractFolderFromArchive(fileName, targetFolderName); return(new ArchiveExtraction(uuid, targetFolderName)); }
public TestSession NewSession(ArchiveFile archiveFile) { ReadingArchiveStartedEvent(); _log.Information( $"Building new TestSession from file [archiveType: {archiveFile.ArchiveType}] [directory: {archiveFile.File.FullName}]"); Uuid uuid = Uuid.Of(Path.GetFileNameWithoutExtension(archiveFile.File.Name)); ArchiveInformationEvent(archiveFile.File.FullName, archiveFile.ArchiveType, uuid); WorkingDirectory workingDirectory = WorkingDirectory.FromUuid(uuid); TarExtractionStartedEvent(); _compressionUtility.ExtractFolderFromArchive(archiveFile.File, workingDirectory.Root().DirectoryInfo()); TarExtractionFinishedEvent(workingDirectory); TestSession testSession = NewSession(workingDirectory, archiveFile.ArchiveType, uuid); ReadingArchiveFinishedEvent(); return(testSession); }