mirror of
https://github.com/adamhathcock/sharpcompress.git
synced 2026-09-24 16:05:27 +00:00
62 lines
2.2 KiB
C#
62 lines
2.2 KiB
C#
using System;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
using SharpCompress.Archive;
|
|
using SharpCompress.Archive.GZip;
|
|
|
|
namespace SharpCompress.Test
|
|
{
|
|
[TestClass]
|
|
public class GZipArchiveTests : ArchiveTests
|
|
{
|
|
public GZipArchiveTests()
|
|
{
|
|
UseExtensionInsteadOfNameToVerify = true;
|
|
}
|
|
|
|
[TestMethod]
|
|
public void GZip_Archive_Generic()
|
|
{
|
|
ResetScratch();
|
|
using (Stream stream = File.Open(Path.Combine(TEST_ARCHIVES_PATH, "Tar.tar.gz"), FileMode.Open))
|
|
using (var archive = ArchiveFactory.Open(stream))
|
|
{
|
|
var entry = archive.Entries.First();
|
|
entry.WriteToFile(Path.Combine(SCRATCH_FILES_PATH, entry.FilePath));
|
|
}
|
|
CompareArchivesByPath(Path.Combine(SCRATCH_FILES_PATH, "Tar.tar"),
|
|
Path.Combine(TEST_ARCHIVES_PATH, "Tar.tar"));
|
|
}
|
|
|
|
[TestMethod]
|
|
public void GZip_Archive()
|
|
{
|
|
ResetScratch();
|
|
using (Stream stream = File.Open(Path.Combine(TEST_ARCHIVES_PATH, "Tar.tar.gz"), FileMode.Open))
|
|
using (var archive = GZipArchive.Open(stream))
|
|
{
|
|
var entry = archive.Entries.First();
|
|
entry.WriteToFile(Path.Combine(SCRATCH_FILES_PATH, entry.FilePath));
|
|
}
|
|
CompareArchivesByPath(Path.Combine(SCRATCH_FILES_PATH, "Tar.tar"),
|
|
Path.Combine(TEST_ARCHIVES_PATH, "Tar.tar"));
|
|
}
|
|
|
|
|
|
[TestMethod]
|
|
[ExpectedException(typeof(InvalidOperationException))]
|
|
public void GZip_Archive_NoAdd()
|
|
{
|
|
string jpg = Path.Combine(ORIGINAL_FILES_PATH, "jpg\\test.jpg");
|
|
ResetScratch();
|
|
using (Stream stream = File.Open(Path.Combine(TEST_ARCHIVES_PATH, "Tar.tar.gz"), FileMode.Open))
|
|
using (var archive = GZipArchive.Open(stream))
|
|
{
|
|
archive.AddEntry("jpg\\test.jpg", jpg);
|
|
archive.SaveTo(Path.Combine(SCRATCH_FILES_PATH, "Tar.tar.gz"));
|
|
}
|
|
}
|
|
}
|
|
}
|