From 5e72ce5fbe595be4197c9c2d9eb717700cff212c Mon Sep 17 00:00:00 2001 From: Morilli <35152647+Morilli@users.noreply.github.com> Date: Tue, 22 Jul 2025 20:11:13 +0200 Subject: [PATCH] add failing test --- tests/SharpCompress.Test/Zip/ZipArchiveTests.cs | 11 +++++++++++ tests/TestArchives/Archives/Zip.644.zip | Bin 0 -> 171 bytes 2 files changed, 11 insertions(+) create mode 100644 tests/TestArchives/Archives/Zip.644.zip diff --git a/tests/SharpCompress.Test/Zip/ZipArchiveTests.cs b/tests/SharpCompress.Test/Zip/ZipArchiveTests.cs index 8b886afe..58ebfa1c 100644 --- a/tests/SharpCompress.Test/Zip/ZipArchiveTests.cs +++ b/tests/SharpCompress.Test/Zip/ZipArchiveTests.cs @@ -832,4 +832,15 @@ public class ZipArchiveTests : ArchiveTests using var _ = firstEntry.OpenEntryStream(); Assert.Equal(29, firstEntry.Comment.Length); } + + [Fact] + public void Zip_FilePermissions() + { + using var archive = ArchiveFactory.Open(Path.Combine(TEST_ARCHIVES_PATH, "Zip.644.zip")); + + var firstEntry = archive.Entries.First(); + const int S_IFREG = 0x8000; + const int expected = (S_IFREG | 0b110_100_100) << 16; // 0644 mode regular file + Assert.Equal(expected, firstEntry.Attrib); + } } diff --git a/tests/TestArchives/Archives/Zip.644.zip b/tests/TestArchives/Archives/Zip.644.zip new file mode 100644 index 0000000000000000000000000000000000000000..71a786be37451c96d25f9a9363d0e0897ad12dee GIT binary patch literal 171 zcmWIWW@h1H00F_a&r!!rcUrSDFff2H2ZIblNosM4UP(nsXb2|*v(tv^j2}CyGfFGC z85mh!Ff%ZK36L7D0B=SnIc8i2Nr22}U}RumSkee$g0w)4WrY}vW@LajD;r21BLgFY M9|Hq}JBY&o0Ee$3jsO4v literal 0 HcmV?d00001