예제 #1
0
        public static async Task testFolder(String s)
        {
            var zs = new LocalMemoryStream();
            await ZipTest.CreateFromDir(ZipTest.zfolder(s), zs, ZipArchiveMode.Update);

            ZipTest.IsZipSameAsDir(zs.Clone(), ZipTest.zfolder(s), ZipArchiveMode.Read, false, false);
        }
예제 #2
0
        public static async Task ReadNormal()
        {
            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("normal.zip"), ZipTest.zfolder("normal"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("fake64.zip"), ZipTest.zfolder("small"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("empty.zip"), ZipTest.zfolder("empty"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("appended.zip"), ZipTest.zfolder("small"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("prepended.zip"), ZipTest.zfolder("small"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("emptydir.zip"), ZipTest.zfolder("emptydir"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("small.zip"), ZipTest.zfolder("small"), ZipArchiveMode.Read);

            if (Interop.IsWindows) // [ActiveIssue(846, PlatformID.AnyUnix)]
            {
                await ZipTest.IsZipSameAsDirAsync(
                    ZipTest.zfile("unicode.zip"), ZipTest.zfolder("unicode"), ZipArchiveMode.Read);
            }
        }
예제 #3
0
        public static async Task ReadNormal()
        {
            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("normal.zip"), ZipTest.zfolder("normal"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("fake64.zip"), ZipTest.zfolder("small"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("empty.zip"), ZipTest.zfolder("empty"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("appended.zip"), ZipTest.zfolder("small"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("prepended.zip"), ZipTest.zfolder("small"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("emptydir.zip"), ZipTest.zfolder("emptydir"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("small.zip"), ZipTest.zfolder("small"), ZipArchiveMode.Read);

            await ZipTest.IsZipSameAsDirAsync(
                ZipTest.zfile("unicode.zip"), ZipTest.zfolder("unicode"), ZipArchiveMode.Read);
        }
예제 #4
0
        public static async Task testCreate(String folder, bool seekable)
        {
            using (var s = new MemoryStream())
            {
                var testStream = new WrappedStream(s, false, true, seekable, null);
                await ZipTest.CreateFromDir(ZipTest.zfolder(folder), testStream, ZipArchiveMode.Create);

                ZipTest.IsZipSameAsDir(s, ZipTest.zfolder(folder), ZipArchiveMode.Read, false, false);
            }
        }
예제 #5
0
        public static async Task ReadStreaming()
        {
            //don't include large, because that means loading the whole thing in memory

            await TestStreamingRead(ZipTest.zfile("normal.zip"), ZipTest.zfolder("normal"));
            await TestStreamingRead(ZipTest.zfile("fake64.zip"), ZipTest.zfolder("small"));
            await TestStreamingRead(ZipTest.zfile("unicode.zip"), ZipTest.zfolder("unicode"));
            await TestStreamingRead(ZipTest.zfile("empty.zip"), ZipTest.zfolder("empty"));
            await TestStreamingRead(ZipTest.zfile("appended.zip"), ZipTest.zfolder("small"));
            await TestStreamingRead(ZipTest.zfile("prepended.zip"), ZipTest.zfolder("small"));
            await TestStreamingRead(ZipTest.zfile("emptydir.zip"), ZipTest.zfolder("emptydir"));
        }
예제 #6
0
 public static async Task CompatibilityTests()
 {
     ZipTest.IsZipSameAsDir(await StreamHelpers.CreateTempCopyStream(
                                ZipTest.compat("7zip.zip")), ZipTest.zfolder("normal"), ZipArchiveMode.Update, false, false);
     ZipTest.IsZipSameAsDir(await StreamHelpers.CreateTempCopyStream(
                                ZipTest.compat("windows.zip")), ZipTest.zfolder("normalWithoutEmptyDir"), ZipArchiveMode.Update, true, false);
     ZipTest.IsZipSameAsDir(await StreamHelpers.CreateTempCopyStream(
                                ZipTest.compat("dotnetzipstreaming.zip")), ZipTest.zfolder("normal"), ZipArchiveMode.Update, true, true);
     ZipTest.IsZipSameAsDir(await StreamHelpers.CreateTempCopyStream(
                                ZipTest.compat("sharpziplib.zip")), ZipTest.zfolder("normalWithoutEmptyDir"), ZipArchiveMode.Update, true, true);
     ZipTest.IsZipSameAsDir(await StreamHelpers.CreateTempCopyStream(
                                ZipTest.compat("xceedstreaming.zip")), ZipTest.zfolder("normal"), ZipArchiveMode.Update, true, true);
 }
예제 #7
0
        public static async Task ReadStreaming()
        {
            //don't include large, because that means loading the whole thing in memory

            await TestStreamingRead(ZipTest.zfile("normal.zip"), ZipTest.zfolder("normal"));
            await TestStreamingRead(ZipTest.zfile("fake64.zip"), ZipTest.zfolder("small"));

            if (Interop.IsWindows) // [ActiveIssue(846, PlatformID.AnyUnix)]
            {
                await TestStreamingRead(ZipTest.zfile("unicode.zip"), ZipTest.zfolder("unicode"));
            }
            await TestStreamingRead(ZipTest.zfile("empty.zip"), ZipTest.zfolder("empty"));
            await TestStreamingRead(ZipTest.zfile("appended.zip"), ZipTest.zfolder("small"));
            await TestStreamingRead(ZipTest.zfile("prepended.zip"), ZipTest.zfolder("small"));
            await TestStreamingRead(ZipTest.zfile("emptydir.zip"), ZipTest.zfolder("emptydir"));
        }
예제 #8
0
 public static async Task UpdateReadNormal()
 {
     ZipTest.IsZipSameAsDir(
         await StreamHelpers.CreateTempCopyStream(ZipTest.zfile("normal.zip")), ZipTest.zfolder("normal"), ZipArchiveMode.Update, false, false);
     ZipTest.IsZipSameAsDir(
         await StreamHelpers.CreateTempCopyStream(ZipTest.zfile("fake64.zip")), ZipTest.zfolder("small"), ZipArchiveMode.Update, false, false);
     ZipTest.IsZipSameAsDir(
         await StreamHelpers.CreateTempCopyStream(ZipTest.zfile("unicode.zip")), ZipTest.zfolder("unicode"), ZipArchiveMode.Update, false, false);
     ZipTest.IsZipSameAsDir(
         await StreamHelpers.CreateTempCopyStream(ZipTest.zfile("empty.zip")), ZipTest.zfolder("empty"), ZipArchiveMode.Update, false, false);
     ZipTest.IsZipSameAsDir(
         await StreamHelpers.CreateTempCopyStream(ZipTest.zfile("appended.zip")), ZipTest.zfolder("small"), ZipArchiveMode.Update, false, false);
     ZipTest.IsZipSameAsDir(
         await StreamHelpers.CreateTempCopyStream(ZipTest.zfile("prepended.zip")), ZipTest.zfolder("small"), ZipArchiveMode.Update, false, false);
 }
예제 #9
0
 public static async Task StrangeFiles5()
 {
     ZipTest.IsZipSameAsDir(await StreamHelpers.CreateTempCopyStream(
                                ZipTest.strange("filenameTimeAndSizesDifferentInLH.zip")), ZipTest.zfolder("verysmall"), ZipArchiveMode.Update, true, false);
 }
예제 #10
0
 public static async Task StrangeFiles4()
 {
     ZipTest.IsZipSameAsDir(await StreamHelpers.CreateTempCopyStream(
                                ZipTest.strange("dataDescriptor.zip")), ZipTest.zfolder("normalWithoutBinary"), ZipArchiveMode.Update, true, false);
 }
예제 #11
0
 public static async Task StrangeFiles3()
 {
     ZipTest.IsZipSameAsDir(await StreamHelpers.CreateTempCopyStream(
                                ZipTest.strange(Path.Combine("extradata", "zip64ThenExtraData.zip"))), ZipTest.zfolder("verysmall"), ZipArchiveMode.Update, false, false);
 }
예제 #12
0
 public static async Task StrangeFiles1()
 {
     ZipTest.IsZipSameAsDir(await StreamHelpers.CreateTempCopyStream(
                                ZipTest.strange(Path.Combine("extradata", "extraDataLHandCDentryAndArchiveComments.zip"))), ZipTest.zfolder("verysmall"), ZipArchiveMode.Update, false, false);
 }