Esempio n. 1
0
        public async Task ZipAndEncryptFileBySplitVolume()
        {
            // Arrange
            var unzippedFile = Path.Combine(InputDirectory, LargeFile);

            // Act
            SevenZipSharpService.CompressFileMultiVolume(OutputZipFile, unzippedFile, VolumeSize);

            // Assert
            // Should split Multi - Volume
            Directory.GetFiles(OutputDirectory).Length
            .Should()
            .BeGreaterThan(1);

            var newVolumes = new DirectoryInfo(OutputDirectory).EnumerateFiles();

            foreach (var volume in newVolumes)
            {
                volume.Length
                .Should()
                .BeLessOrEqualTo(VolumeSize);
            }

            // Should Compress
            var originalSize   = new FileInfo(unzippedFile).Length;
            var compressedSize = newVolumes
                                 .Sum(file => file.Length);

            compressedSize
            .Should()
            .BeGreaterThan(0)
            .And
            .BeLessThan(originalSize);
        }
Esempio n. 2
0
        public async Task ZipAndEncryptFileStreamDictionaryByVolume()
        {
            // Arrange
            var sourceFiles = Directory.GetFiles(InputDirectory);

            // Act
            SevenZipSharpService.CompressDictionary(OutputZipFile, sourceFiles, VolumeSize);

            // Assert
            // Should split Multi - Volume
            var newFiles = Directory.GetFiles(OutputDirectory);

            newFiles.Length
            .Should()
            .BeGreaterThan(sourceFiles.Length);
            var newFilesInfo = newFiles.Select(file => new FileInfo(file));
            var originalSize = sourceFiles
                               .Select(file => new FileInfo(file))
                               .Sum(file => file.Length);

            newFilesInfo.Sum(file => file.Length)
            .Should()
            .BeLessThan(originalSize);
            foreach (var newfile in newFilesInfo)
            {
                newfile.Length
                .Should()
                .BeLessOrEqualTo(VolumeSize);
            }
        }
Esempio n. 3
0
        public async Task ZipAndEncryptFileStream()
        {
            // Arrange
            var unzippedFile = Path.Combine(InputDirectory, LargeFile);

            // Act
            SevenZipSharpService.CompressAndEncryptFileStream(OutputZipFile, unzippedFile);

            // Assert
            File.Exists(OutputZipFile)
            .Should()
            .BeTrue();
        }
Esempio n. 4
0
        public async Task ZipAndEncryptFileStreamByVolume()
        {
            // Arrange
            var unzippedFile = Path.Combine(InputDirectory, LargeFile);

            // Act
            SevenZipSharpService.CompressFileStreamMultiVolume(OutputZipFile, unzippedFile, VolumeSize);

            // Assert
            // Should split Multi - Volume
            Directory.GetFiles(OutputDirectory).Length
            .Should()
            .BeGreaterThan(1);
        }
Esempio n. 5
0
        public async Task ZipAndSaveEncryptedByVolume()
        {
            // Arrange
            var unzippedFile = Path.Combine(InputDirectory, LargeFile);

            // Act
            SevenZipSharpService.CompressFileEncrypted(OutputZipFile, unzippedFile, VolumeSize);

            File.Exists(OutputZipFile)
            .Should()
            .BeTrue();

            var originalSize = new FileInfo(unzippedFile).Length;

            new FileInfo(OutputZipFile).Length
            .Should()
            .BeGreaterThan(0)
            .And
            .BeLessThan(originalSize);
        }