diff --git a/src/SIL.Machine/Corpora/FileParatextProjectFileHandler.cs b/src/SIL.Machine/Corpora/FileParatextProjectFileHandler.cs index 3d336e3f..df6dd045 100644 --- a/src/SIL.Machine/Corpora/FileParatextProjectFileHandler.cs +++ b/src/SIL.Machine/Corpora/FileParatextProjectFileHandler.cs @@ -14,12 +14,23 @@ public FileParatextProjectFileHandler(string projectDir) public bool Exists(string fileName) { - return File.Exists(Path.Combine(_projectDir, fileName)); + return Directory + .EnumerateFiles(_projectDir) + .Any(f => Path.GetFileName(f).Equals(fileName, System.StringComparison.InvariantCultureIgnoreCase)); } public Stream Open(string fileName) { - return File.OpenRead(Path.Combine(_projectDir, fileName)); + return File.OpenRead( + Path.Combine( + _projectDir, + Directory + .EnumerateFiles(_projectDir) + .FirstOrDefault(f => + Path.GetFileName(f).Equals(fileName, System.StringComparison.InvariantCultureIgnoreCase) + ) + ) + ); } public UsfmStylesheet CreateStylesheet(string fileName) diff --git a/src/SIL.Machine/Corpora/ZipParatextProjectFileHandler.cs b/src/SIL.Machine/Corpora/ZipParatextProjectFileHandler.cs index 00338dda..2b614bbc 100644 --- a/src/SIL.Machine/Corpora/ZipParatextProjectFileHandler.cs +++ b/src/SIL.Machine/Corpora/ZipParatextProjectFileHandler.cs @@ -16,12 +16,16 @@ public ZipParatextProjectFileHandler(ZipArchive archive) public bool Exists(string fileName) { - return _archive.GetEntry(fileName) != null; + return _archive.Entries.Any(e => + e.FullName.Equals(fileName, System.StringComparison.InvariantCultureIgnoreCase) + ); } public Stream Open(string fileName) { - ZipArchiveEntry entry = _archive.GetEntry(fileName); + ZipArchiveEntry entry = _archive.Entries.FirstOrDefault(e => + e.FullName.Equals(fileName, System.StringComparison.InvariantCultureIgnoreCase) + ); if (entry == null) return null; return entry.Open(); @@ -29,7 +33,9 @@ public Stream Open(string fileName) public string Find(string extension) { - ZipArchiveEntry entry = _archive.Entries.FirstOrDefault(e => e.FullName.EndsWith(extension)); + ZipArchiveEntry entry = _archive.Entries.FirstOrDefault(e => + e.FullName.EndsWith(extension, System.StringComparison.InvariantCultureIgnoreCase) + ); if (entry == null) return null; return entry.FullName; diff --git a/tests/SIL.Machine.Tests/Corpora/TestData/usfm/Tes/custom.vrs b/tests/SIL.Machine.Tests/Corpora/TestData/usfm/Tes/Custom.vrs similarity index 100% rename from tests/SIL.Machine.Tests/Corpora/TestData/usfm/Tes/custom.vrs rename to tests/SIL.Machine.Tests/Corpora/TestData/usfm/Tes/Custom.vrs