diff --git a/Wabbajack.Common/Json.cs b/Wabbajack.Common/Json.cs index 4d2584c7..01a07fc3 100644 --- a/Wabbajack.Common/Json.cs +++ b/Wabbajack.Common/Json.cs @@ -78,10 +78,8 @@ namespace Wabbajack.Common using var tr = new StreamReader(stream, Encoding.UTF8, leaveOpen: true); using var reader = new JsonTextReader(tr); var ser = JsonSerializer.Create(JsonSettings); - return ser.Deserialize(reader); + return ser.Deserialize(reader)!; } - - private class HashJsonConverter : JsonConverter { diff --git a/Wabbajack.Test/ACompilerTest.cs b/Wabbajack.Test/ACompilerTest.cs index c980b234..a48d50a4 100644 --- a/Wabbajack.Test/ACompilerTest.cs +++ b/Wabbajack.Test/ACompilerTest.cs @@ -28,7 +28,7 @@ namespace Wabbajack.Test public override void Dispose() { - utils.Dispose(); + utils.DisposeAsync().AsTask().Wait(); _unsub.Dispose(); base.Dispose(); } diff --git a/Wabbajack.Test/EndToEndTests.cs b/Wabbajack.Test/EndToEndTests.cs index 70caa696..9ad82fb8 100644 --- a/Wabbajack.Test/EndToEndTests.cs +++ b/Wabbajack.Test/EndToEndTests.cs @@ -39,6 +39,7 @@ namespace Wabbajack.Test { Queue.Dispose(); _unsub.Dispose(); + utils.DisposeAsync().AsTask().Wait(); base.Dispose(); } diff --git a/Wabbajack.Test/TestUtils.cs b/Wabbajack.Test/TestUtils.cs index 5efdb7a1..0081c560 100644 --- a/Wabbajack.Test/TestUtils.cs +++ b/Wabbajack.Test/TestUtils.cs @@ -14,7 +14,7 @@ using Path = Alphaleonis.Win32.Filesystem.Path; namespace Wabbajack.Test { - public class TestUtils : IDisposable + public class TestUtils : IAsyncDisposable { private static Random _rng = new Random(); public TestUtils() @@ -119,13 +119,14 @@ namespace Wabbajack.Test return arr; } - public void Dispose() + public async ValueTask DisposeAsync() { - var exts = new [] {".md", ".exe"}; - WorkingDirectory.Combine(ID).DeleteDirectory(); + var exts = new[] { ".md", ".exe" }; + await WorkingDirectory.Combine(ID).DeleteDirectory(); Profiles.Do(p => { - foreach (var ext in exts) { + foreach (var ext in exts) + { var path = Path.Combine(Directory.GetCurrentDirectory(), p + ext); if (File.Exists(path)) File.Delete(path); @@ -246,7 +247,5 @@ namespace Wabbajack.Test GenerateRandomFileData(fullPath, i); return fullPath; } - - } } diff --git a/Wabbajack.VirtualFileSystem.Test/VirtualFileSystemTests.cs b/Wabbajack.VirtualFileSystem.Test/VirtualFileSystemTests.cs index eca1b235..b5ae80f4 100644 --- a/Wabbajack.VirtualFileSystem.Test/VirtualFileSystemTests.cs +++ b/Wabbajack.VirtualFileSystem.Test/VirtualFileSystemTests.cs @@ -56,7 +56,7 @@ namespace Wabbajack.VirtualFileSystem.Test public async Task ArchiveContentsAreIndexed() { await AddFile(ARCHIVE_TEST_TXT, "This is a test"); - ZipUpFolder(ARCHIVE_TEST_TXT.Parent, TEST_ZIP); + await ZipUpFolder(ARCHIVE_TEST_TXT.Parent, TEST_ZIP); await AddTestRoot(); var absPath = "test.zip".RelativeTo(VFS_TEST_DIR); @@ -78,7 +78,7 @@ namespace Wabbajack.VirtualFileSystem.Test public async Task DuplicateFileHashes() { await AddFile(ARCHIVE_TEST_TXT, "This is a test"); - ZipUpFolder(ARCHIVE_TEST_TXT.Parent, TEST_ZIP); + await ZipUpFolder(ARCHIVE_TEST_TXT.Parent, TEST_ZIP); await AddFile(TEST_TXT, "This is a test"); await AddTestRoot(); @@ -127,7 +127,7 @@ namespace Wabbajack.VirtualFileSystem.Test public async Task CanStageSimpleArchives() { await AddFile(ARCHIVE_TEST_TXT, "This is a test"); - ZipUpFolder(ARCHIVE_TEST_TXT.Parent, TEST_ZIP); + await ZipUpFolder(ARCHIVE_TEST_TXT.Parent, TEST_ZIP); await AddTestRoot(); var res = new FullPath(TEST_ZIP, new[] {(RelativePath)"test.txt"}); @@ -143,12 +143,12 @@ namespace Wabbajack.VirtualFileSystem.Test public async Task CanStageNestedArchives() { await AddFile(ARCHIVE_TEST_TXT, "This is a test"); - ZipUpFolder(ARCHIVE_TEST_TXT.Parent, TEST_ZIP); + await ZipUpFolder(ARCHIVE_TEST_TXT.Parent, TEST_ZIP); var inner_dir = @"archive\other\dir".RelativeTo(VFS_TEST_DIR); inner_dir.CreateDirectory(); TEST_ZIP.MoveTo( @"archive\other\dir\nested.zip".RelativeTo(VFS_TEST_DIR)); - ZipUpFolder(ARCHIVE_TEST_TXT.Parent, TEST_ZIP); + await ZipUpFolder(ARCHIVE_TEST_TXT.Parent, TEST_ZIP); await AddTestRoot(); @@ -168,10 +168,10 @@ namespace Wabbajack.VirtualFileSystem.Test await filename.WriteAllTextAsync(text); } - private static void ZipUpFolder(AbsolutePath folder, AbsolutePath output) + private static async Task ZipUpFolder(AbsolutePath folder, AbsolutePath output) { ZipFile.CreateFromDirectory((string)folder, (string)output); - folder.DeleteDirectory(); + await folder.DeleteDirectory(); } } }