mirror of
https://github.com/adamhathcock/sharpcompress.git
synced 2026-02-04 05:25:00 +00:00
Restore AsyncOnlyStream in archive async tests as requested
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
This commit is contained in:
@@ -621,7 +621,12 @@ public class ArchiveTests : ReaderTests
|
||||
throwOnDispose: true
|
||||
)
|
||||
)
|
||||
await using (var archive = archiveFactory.OpenAsyncArchive(stream, readerOptions))
|
||||
await using (
|
||||
var archive = archiveFactory.OpenAsyncArchive(
|
||||
new AsyncOnlyStream(stream),
|
||||
readerOptions
|
||||
)
|
||||
)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
@@ -22,7 +22,7 @@ public class GZipArchiveAsyncTests : ArchiveTests
|
||||
#else
|
||||
await using (Stream stream = File.OpenRead(Path.Combine(TEST_ARCHIVES_PATH, "Tar.tar.gz")))
|
||||
#endif
|
||||
using (var archive = ArchiveFactory.OpenArchive(stream))
|
||||
using (var archive = ArchiveFactory.OpenArchive(new AsyncOnlyStream(stream)))
|
||||
{
|
||||
var entry = archive.Entries.First();
|
||||
await entry.WriteToFileAsync(Path.Combine(SCRATCH_FILES_PATH, entry.Key.NotNull()));
|
||||
@@ -49,7 +49,7 @@ public class GZipArchiveAsyncTests : ArchiveTests
|
||||
await using (Stream stream = File.OpenRead(Path.Combine(TEST_ARCHIVES_PATH, "Tar.tar.gz")))
|
||||
#endif
|
||||
{
|
||||
await using (var archive = GZipArchive.OpenAsyncArchive(stream))
|
||||
await using (var archive = GZipArchive.OpenAsyncArchive(new AsyncOnlyStream(stream)))
|
||||
{
|
||||
var entry = await archive.EntriesAsync.FirstAsync();
|
||||
await entry.WriteToFileAsync(Path.Combine(SCRATCH_FILES_PATH, entry.Key.NotNull()));
|
||||
@@ -77,7 +77,7 @@ public class GZipArchiveAsyncTests : ArchiveTests
|
||||
#else
|
||||
await using Stream stream = File.OpenRead(Path.Combine(TEST_ARCHIVES_PATH, "Tar.tar.gz"));
|
||||
#endif
|
||||
await using (var archive = GZipArchive.OpenAsyncArchive(stream))
|
||||
await using (var archive = GZipArchive.OpenAsyncArchive(new AsyncOnlyStream(stream)))
|
||||
{
|
||||
Assert.Throws<InvalidFormatException>(() => archive.AddEntry("jpg\\test.jpg", jpg));
|
||||
await archive.SaveToAsync(Path.Combine(SCRATCH_FILES_PATH, "Tar.tar.gz"));
|
||||
@@ -98,7 +98,7 @@ public class GZipArchiveAsyncTests : ArchiveTests
|
||||
inputStream.Position = 0;
|
||||
}
|
||||
|
||||
using var archive = GZipArchive.OpenArchive(inputStream);
|
||||
using var archive = GZipArchive.OpenArchive(new AsyncOnlyStream(inputStream));
|
||||
var archiveEntry = archive.Entries.First();
|
||||
|
||||
MemoryStream tarStream;
|
||||
@@ -148,7 +148,7 @@ public class GZipArchiveAsyncTests : ArchiveTests
|
||||
public async Task TestGzCrcWithMostSignificantBitNotNegative_Async()
|
||||
{
|
||||
using var stream = File.OpenRead(Path.Combine(TEST_ARCHIVES_PATH, "Tar.tar.gz"));
|
||||
await using var archive = GZipArchive.OpenAsyncArchive(stream);
|
||||
await using var archive = GZipArchive.OpenAsyncArchive(new AsyncOnlyStream(stream));
|
||||
await foreach (var entry in archive.EntriesAsync.Where(entry => !entry.IsDirectory))
|
||||
{
|
||||
Assert.InRange(entry.Crc, 0L, 0xFFFFFFFFL);
|
||||
@@ -159,7 +159,7 @@ public class GZipArchiveAsyncTests : ArchiveTests
|
||||
public async Task TestGzArchiveTypeGzip_Async()
|
||||
{
|
||||
using var stream = File.OpenRead(Path.Combine(TEST_ARCHIVES_PATH, "Tar.tar.gz"));
|
||||
await using var archive = GZipArchive.OpenAsyncArchive(stream);
|
||||
await using var archive = GZipArchive.OpenAsyncArchive(new AsyncOnlyStream(stream));
|
||||
Assert.Equal(archive.Type, ArchiveType.GZip);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -654,7 +654,9 @@ public class RarArchiveAsyncTests : ArchiveTests
|
||||
{
|
||||
testArchive = Path.Combine(TEST_ARCHIVES_PATH, testArchive);
|
||||
using var stream = File.OpenRead(testArchive);
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(stream);
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(
|
||||
new AsyncOnlyStream(stream)
|
||||
);
|
||||
Assert.True(await archive.IsSolidAsync());
|
||||
await using (var reader = await archive.ExtractAllEntriesAsync())
|
||||
{
|
||||
|
||||
@@ -19,7 +19,9 @@ public class SevenZipArchiveAsyncTests : ArchiveTests
|
||||
#else
|
||||
await using var stream = File.OpenRead(testArchive);
|
||||
#endif
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(stream);
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(
|
||||
new AsyncOnlyStream(stream)
|
||||
);
|
||||
|
||||
await foreach (var entry in archive.EntriesAsync.Where(entry => !entry.IsDirectory))
|
||||
{
|
||||
@@ -60,7 +62,9 @@ public class SevenZipArchiveAsyncTests : ArchiveTests
|
||||
#else
|
||||
await using var stream = File.OpenRead(testArchive);
|
||||
#endif
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(stream);
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(
|
||||
new AsyncOnlyStream(stream)
|
||||
);
|
||||
|
||||
await foreach (var entry in archive.EntriesAsync.Where(entry => !entry.IsDirectory))
|
||||
{
|
||||
@@ -101,7 +105,9 @@ public class SevenZipArchiveAsyncTests : ArchiveTests
|
||||
#else
|
||||
await using var stream = File.OpenRead(testArchive);
|
||||
#endif
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(stream);
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(
|
||||
new AsyncOnlyStream(stream)
|
||||
);
|
||||
|
||||
await foreach (var entry in archive.EntriesAsync.Where(entry => !entry.IsDirectory))
|
||||
{
|
||||
@@ -142,7 +148,9 @@ public class SevenZipArchiveAsyncTests : ArchiveTests
|
||||
#else
|
||||
await using var stream = File.OpenRead(testArchive);
|
||||
#endif
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(stream);
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(
|
||||
new AsyncOnlyStream(stream)
|
||||
);
|
||||
|
||||
await foreach (var entry in archive.EntriesAsync.Where(entry => !entry.IsDirectory))
|
||||
{
|
||||
@@ -183,7 +191,9 @@ public class SevenZipArchiveAsyncTests : ArchiveTests
|
||||
#else
|
||||
await using var stream = File.OpenRead(testArchive);
|
||||
#endif
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(stream);
|
||||
await using var archive = await ArchiveFactory.OpenAsyncArchive(
|
||||
new AsyncOnlyStream(stream)
|
||||
);
|
||||
|
||||
await foreach (var entry in archive.EntriesAsync.Where(entry => !entry.IsDirectory))
|
||||
{
|
||||
|
||||
@@ -35,7 +35,7 @@ public class TarArchiveAsyncTests : ArchiveTests
|
||||
using (Stream stream = File.OpenWrite(Path.Combine(SCRATCH2_FILES_PATH, archive)))
|
||||
using (
|
||||
var writer = WriterFactory.OpenAsyncWriter(
|
||||
stream,
|
||||
new AsyncOnlyStream(stream),
|
||||
ArchiveType.Tar,
|
||||
CompressionType.None
|
||||
)
|
||||
@@ -52,7 +52,11 @@ public class TarArchiveAsyncTests : ArchiveTests
|
||||
|
||||
// Step 2: check if the written tar file can be read correctly
|
||||
var unmodified = Path.Combine(SCRATCH2_FILES_PATH, archive);
|
||||
await using (var archive2 = TarArchive.OpenAsyncArchive(File.OpenRead(unmodified)))
|
||||
await using (
|
||||
var archive2 = TarArchive.OpenAsyncArchive(
|
||||
new AsyncOnlyStream(File.OpenRead(unmodified))
|
||||
)
|
||||
)
|
||||
{
|
||||
Assert.Equal(1, await archive2.EntriesAsync.CountAsync());
|
||||
Assert.Contains(
|
||||
@@ -88,7 +92,7 @@ public class TarArchiveAsyncTests : ArchiveTests
|
||||
using (Stream stream = File.OpenWrite(Path.Combine(SCRATCH2_FILES_PATH, archive)))
|
||||
using (
|
||||
var writer = WriterFactory.OpenAsyncWriter(
|
||||
stream,
|
||||
new AsyncOnlyStream(stream),
|
||||
ArchiveType.Tar,
|
||||
CompressionType.None
|
||||
)
|
||||
@@ -105,7 +109,11 @@ public class TarArchiveAsyncTests : ArchiveTests
|
||||
|
||||
// Step 2: check if the written tar file can be read correctly
|
||||
var unmodified = Path.Combine(SCRATCH2_FILES_PATH, archive);
|
||||
await using (var archive2 = TarArchive.OpenAsyncArchive(File.OpenRead(unmodified)))
|
||||
await using (
|
||||
var archive2 = TarArchive.OpenAsyncArchive(
|
||||
new AsyncOnlyStream(File.OpenRead(unmodified))
|
||||
)
|
||||
)
|
||||
{
|
||||
Assert.Equal(1, await archive2.EntriesAsync.CountAsync());
|
||||
Assert.Contains(
|
||||
@@ -191,7 +199,12 @@ public class TarArchiveAsyncTests : ArchiveTests
|
||||
using (var inputMemory = new MemoryStream(mstm.ToArray()))
|
||||
{
|
||||
var tropt = new ReaderOptions { ArchiveEncoding = enc };
|
||||
await using (var tr = await ReaderFactory.OpenAsyncReader(inputMemory, tropt))
|
||||
await using (
|
||||
var tr = await ReaderFactory.OpenAsyncReader(
|
||||
new AsyncOnlyStream(inputMemory),
|
||||
tropt
|
||||
)
|
||||
)
|
||||
{
|
||||
while (await tr.MoveToNextEntryAsync())
|
||||
{
|
||||
@@ -224,7 +237,9 @@ public class TarArchiveAsyncTests : ArchiveTests
|
||||
|
||||
var numberOfEntries = 0;
|
||||
|
||||
await using (var archiveFactory = TarArchive.OpenAsyncArchive(memoryStream))
|
||||
await using (
|
||||
var archiveFactory = TarArchive.OpenAsyncArchive(new AsyncOnlyStream(memoryStream))
|
||||
)
|
||||
{
|
||||
await foreach (var entry in archiveFactory.EntriesAsync)
|
||||
{
|
||||
|
||||
@@ -92,13 +92,15 @@ public class WriterTests : TestBase
|
||||
|
||||
readerOptions.ArchiveEncoding.Default = encoding ?? Encoding.Default;
|
||||
|
||||
using var reader = ReaderFactory.OpenReader(
|
||||
SharpCompressStream.Create(stream, leaveOpen: true),
|
||||
readerOptions
|
||||
await using var reader = await ReaderFactory.OpenAsyncReader(
|
||||
new AsyncOnlyStream(SharpCompressStream.Create(stream, leaveOpen: true)),
|
||||
readerOptions,
|
||||
cancellationToken
|
||||
);
|
||||
reader.WriteAllToDirectory(
|
||||
await reader.WriteAllToDirectoryAsync(
|
||||
SCRATCH_FILES_PATH,
|
||||
new ExtractionOptions { ExtractFullPath = true }
|
||||
new ExtractionOptions { ExtractFullPath = true },
|
||||
cancellationToken
|
||||
);
|
||||
}
|
||||
VerifyFiles();
|
||||
|
||||
@@ -185,7 +185,7 @@ public class ZipArchiveAsyncTests : ArchiveTests
|
||||
{
|
||||
using (Stream stream = File.OpenRead(Path.Combine(TEST_ARCHIVES_PATH, "Zip.deflate.zip")))
|
||||
{
|
||||
IAsyncArchive archive = ZipArchive.OpenAsyncArchive(stream);
|
||||
IAsyncArchive archive = ZipArchive.OpenAsyncArchive(new AsyncOnlyStream(stream));
|
||||
try
|
||||
{
|
||||
await foreach (var entry in archive.EntriesAsync.Where(entry => !entry.IsDirectory))
|
||||
@@ -209,7 +209,7 @@ public class ZipArchiveAsyncTests : ArchiveTests
|
||||
{
|
||||
using (Stream stream = File.OpenRead(Path.Combine(TEST_ARCHIVES_PATH, "Zip.deflate.zip")))
|
||||
{
|
||||
IAsyncArchive archive = ZipArchive.OpenAsyncArchive(stream);
|
||||
IAsyncArchive archive = ZipArchive.OpenAsyncArchive(new AsyncOnlyStream(stream));
|
||||
try
|
||||
{
|
||||
await archive.WriteToDirectoryAsync(
|
||||
@@ -233,7 +233,7 @@ public class ZipArchiveAsyncTests : ArchiveTests
|
||||
|
||||
using (Stream stream = File.OpenRead(Path.Combine(TEST_ARCHIVES_PATH, "Zip.deflate.zip")))
|
||||
{
|
||||
IAsyncArchive archive = ZipArchive.OpenAsyncArchive(stream);
|
||||
IAsyncArchive archive = ZipArchive.OpenAsyncArchive(new AsyncOnlyStream(stream));
|
||||
try
|
||||
{
|
||||
await archive.WriteToDirectoryAsync(
|
||||
|
||||
Reference in New Issue
Block a user