diff --git a/Wabbajack.Common/Paths.cs b/Wabbajack.Common/Paths.cs index dcc9ba05..f657947c 100644 --- a/Wabbajack.Common/Paths.cs +++ b/Wabbajack.Common/Paths.cs @@ -164,8 +164,7 @@ namespace Wabbajack.Common public static bool operator ==(Extension a, Extension b) { - // Super fast comparison because extensions are interned - return ReferenceEquals(a._extension, b._extension); + return string.Equals(a._extension, b._extension, StringComparison.CurrentCultureIgnoreCase); } public static bool operator !=(Extension a, Extension b) diff --git a/Wabbajack.Test/SanityTests.cs b/Wabbajack.Test/SanityTests.cs index 157b2a52..895dc4c0 100644 --- a/Wabbajack.Test/SanityTests.cs +++ b/Wabbajack.Test/SanityTests.cs @@ -42,6 +42,25 @@ namespace Wabbajack.Test await utils.VerifyInstalledFile(mod, @"Data\scripts\test.pex"); } + [Fact] + public async Task TestCacheFileAreIgnored() + { + + var profile = utils.AddProfile(); + var mod = await utils.AddMod(); + var testCache = await utils.AddModFile(mod, @"Data\scripts\test.cache", 10); + var testPex = await utils.AddModFile(mod, @"Data\scripts\test.pex", 10); + + await utils.Configure(); + + await utils.AddManualDownload( + new Dictionary {{"/baz/biz.pex", await testPex.ReadAllBytesAsync()}}); + + await CompileAndInstall(profile); + + await utils.VerifyInstalledFile(mod, @"Data\scripts\test.pex"); + } + [Fact] public async Task ExtraFilesInDownloadFolderDontStopCompilation() {