From 3362164579e5f4f35a38f82a335c5d150528aeef Mon Sep 17 00:00:00 2001 From: Miepee Date: Tue, 24 Jan 2023 15:17:11 +0100 Subject: [PATCH] Test zips with invalid data files --- AM2RPortHelperTests/RawModsTests.cs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/AM2RPortHelperTests/RawModsTests.cs b/AM2RPortHelperTests/RawModsTests.cs index dc2839d..8314bac 100644 --- a/AM2RPortHelperTests/RawModsTests.cs +++ b/AM2RPortHelperTests/RawModsTests.cs @@ -68,6 +68,28 @@ public class RawModsTests ZipFile.CreateFromDirectory(testTempDir, destinationZip); Assert.Throws(() => RawMods.GetModOSOfRawZip(destinationZip)); } + + [Fact] + public void WindowsZipWithInvalidDataFileShouldThrow() + { + var destinationZip = Path.GetTempPath() + Guid.NewGuid() + ".zip"; + ZipFile.ExtractToDirectory("./GameWin.zip", testTempDir); + File.Move(testTempDir + "/data.win", testTempDir + "/data.win_"); + ZipFile.CreateFromDirectory(testTempDir, destinationZip); + Assert.Throws(() => RawMods.GetModOSOfRawZip(destinationZip)); + } + + [Fact] + public void LinuxZipWithInvalidDataFileShouldThrow() + { + var destinationZip = Path.GetTempPath() + Guid.NewGuid() + ".zip"; + ZipFile.ExtractToDirectory("./GameLin.zip", testTempDir); + File.Move(testTempDir + "/assets/game.unx", testTempDir + "/assets/game.unx_"); + ZipFile.CreateFromDirectory(testTempDir, destinationZip); + Assert.Throws(() => RawMods.GetModOSOfRawZip(destinationZip)); + } + + #endregion #region GetProperPathToBuiltinIcons