Esempio n. 1
0
        public void RepackUncompressedV2()
        {
            var original = File.OpenRead("Data/UncompressedV2.mpk");
            var repacked = new MemoryStream((int)original.Length);

            original.CopyTo(repacked);

            using (var a = MagesArchive.Load(repacked, ArchiveMode.Update, leaveOpen: true))
            {
                a.SaveChanges();
            }

            using (var sha1 = SHA1.Create())
            {
                original.Position = 0;
                repacked.Position = 0;
                var correctHash  = sha1.ComputeHash(original);
                var repackedHash = sha1.ComputeHash(repacked);

                original.Dispose();
                repacked.Dispose();

                Assert.Equal(correctHash, repackedHash);
            }
        }
Esempio n. 2
0
        public void ReadUncompressedV2()
        {
            var archive = MagesArchive.Load("Data/UncompressedV2.mpk", ArchiveMode.Read);

            foreach (var entry in archive.Entries)
            {
                Assert.Contains(".scx", entry.Name);

                using (var stream = entry.Open())
                    using (var reader = new BinaryReader(stream))
                    {
                        string signature = new string(reader.ReadChars(4));
                        Assert.Equal("SC3\0", signature);
                    }
            }
        }
Esempio n. 3
0
 public override IArchive LoadArchive(Stream stream)
 {
     return(MagesArchive.Load(stream, ArchiveMode.Update));
 }