diff --git a/tests/SharpCompress.Test/Arc/ArcReaderAsyncTests.cs b/tests/SharpCompress.Test/Arc/ArcReaderAsyncTests.cs new file mode 100644 index 000000000..14eb76422 --- /dev/null +++ b/tests/SharpCompress.Test/Arc/ArcReaderAsyncTests.cs @@ -0,0 +1,24 @@ +using System.Threading.Tasks; +using SharpCompress.Common; +using Xunit; + +namespace SharpCompress.Test.Arc; + +public class ArcReaderAsyncTests : ReaderTests +{ + public ArcReaderAsyncTests() + { + UseExtensionInsteadOfNameToVerify = true; + UseCaseInsensitiveToVerify = true; + } + + [Fact] + public async Task Arc_Uncompressed_Read_Async() => + await ReadAsync("Arc.uncompressed.arc", CompressionType.None); + + [Fact] + public async Task Arc_Squeezed_Read_Async() => await ReadAsync("Arc.squeezed.arc"); + + [Fact] + public async Task Arc_Crunched_Read_Async() => await ReadAsync("Arc.crunched.arc"); +} diff --git a/tests/SharpCompress.Test/Arc/ArcReaderTests.cs b/tests/SharpCompress.Test/Arc/ArcReaderTests.cs index 915e2ae12..5ab79f022 100644 --- a/tests/SharpCompress.Test/Arc/ArcReaderTests.cs +++ b/tests/SharpCompress.Test/Arc/ArcReaderTests.cs @@ -1,12 +1,4 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Text; -using System.Threading.Tasks; using SharpCompress.Common; -using SharpCompress.Readers; -using SharpCompress.Readers.Arc; using Xunit; namespace SharpCompress.Test.Arc diff --git a/tests/SharpCompress.Test/ReaderTests.cs b/tests/SharpCompress.Test/ReaderTests.cs index cc5a75a76..86f1bf8b5 100644 --- a/tests/SharpCompress.Test/ReaderTests.cs +++ b/tests/SharpCompress.Test/ReaderTests.cs @@ -112,7 +112,7 @@ private void UseReader(IReader reader) protected async Task ReadAsync( string testArchive, - CompressionType expectedCompression, + CompressionType? expectedCompression = null, ReaderOptions? options = null, CancellationToken cancellationToken = default ) @@ -131,7 +131,7 @@ protected async Task ReadAsync( private async Task ReadImplAsync( string testArchive, - CompressionType expectedCompression, + CompressionType? expectedCompression, ReaderOptions options, CancellationToken cancellationToken = default ) @@ -158,7 +158,7 @@ private async Task ReadImplAsync( public async Task UseReaderAsync( IReader reader, - CompressionType expectedCompression, + CompressionType? expectedCompression, CancellationToken cancellationToken = default ) { @@ -166,7 +166,11 @@ public async Task UseReaderAsync( { if (!reader.Entry.IsDirectory) { - Assert.Equal(expectedCompression, reader.Entry.CompressionType); + if (expectedCompression.HasValue) + { + Assert.Equal(expectedCompression, reader.Entry.CompressionType); + } + await reader.WriteEntryToDirectoryAsync( SCRATCH_FILES_PATH, new ExtractionOptions { ExtractFullPath = true, Overwrite = true }, diff --git a/tests/SharpCompress.Test/WriterTests.cs b/tests/SharpCompress.Test/WriterTests.cs index 5212fab5d..1d2d8a134 100644 --- a/tests/SharpCompress.Test/WriterTests.cs +++ b/tests/SharpCompress.Test/WriterTests.cs @@ -91,9 +91,10 @@ await writer.WriteAllAsync( SharpCompressStream.Create(stream, leaveOpen: true), readerOptions ); - reader.WriteAllToDirectory( + await reader.WriteAllToDirectoryAsync( SCRATCH_FILES_PATH, - new ExtractionOptions { ExtractFullPath = true } + new ExtractionOptions { ExtractFullPath = true }, + cancellationToken ); } VerifyFiles();