Ejemplo n.º 1
0
        public void GZipMemberEntry_GetAllMemberEntriesFromGZipContainingFileNames_GetsMemberExpectedEntryData(TestResource testResource, long expectedLength, uint expectedCrc32)
        {
            using (var stream = testResource.OpenResourceForReading())
            {
                var entry = GZipMemberEntry.GetMemberEntries(stream).Single();

                VerifyGZipMemberEntry(entry, testResource.ArchiveContents.First(), expectedCrc32, expectedLength, GZipOS.Unix);
            }
        }
Ejemplo n.º 2
0
        private static Stream CreateCorruptedGZipStream(TestResource testResource, int offsetToCorrupt)
        {
            var stream = new MemoryStream();

            using (var resourceStream = testResource.OpenResourceForReading())
            {
                resourceStream.CopyTo(stream);
            }
            stream.Seek(offsetToCorrupt, SeekOrigin.Begin);
            stream.WriteByte(0xFF);
            stream.Seek(0, SeekOrigin.Begin);
            return(stream);
        }
Ejemplo n.º 3
0
        public void GZipMemberEntry_GetAllMemberEntriesFromStreamContainingTwoConcatenatedGZips_GetsMembersWithExpectedEntryNames(TestResource testResource, IEnumerable <VerificationData> verificationData)
        {
            using (var stream = testResource.OpenResourceForReading())
            {
                var entries           = GZipMemberEntry.GetMemberEntries(stream).ToList();
                var verifyEntriesData = verificationData.ToList();

                for (var i = 0; i < entries.Count; ++i)
                {
                    var verifyData = verifyEntriesData[i];
                    VerifyGZipMemberEntry(entries[i], verifyData.ExpectedName, verifyData.ExpectedCrc32, verifyData.ExpectedLength, checkModificationDate: verifyData.CheckLastModificationTime);
                }
            }
        }
Ejemplo n.º 4
0
 public void TarArchiveAccess_OpenTar_HasExpectedEntries(TestResource testResource, bool expectAtLeastOneDirectoryEntry)
 {
     using (var tar = CompressedArchiveAccess.Open(testResource.OpenResourceForReading(), CompressedArchiveFormat.Tar, CompressedArchiveAccessMode.Read))
     {
         Assert.True(tar.IsArchive);
         Assert.False(tar.IsCompressed);
         Assert.Equal(CompressedArchiveFormat.Tar, tar.Format);
         var expectedEntryNames = testResource.ArchiveContents.ToList();
         Assert.Equal(expectedEntryNames.Count, tar.Entries.Count());
         Assert.Equal(expectAtLeastOneDirectoryEntry, tar.Entries.Any(e => e.IsDirectory));
         var i = 0;
         foreach (var entry in tar.Entries)
         {
             Assert.Equal(expectedEntryNames[i], entry.Name);
             Assert.True(entry.LastModificationTime.Year > 1977);
             if (!entry.IsDirectory)
             {
                 Assert.True(entry.Length > 0);
             }
             ++i;
         }
     }
 }