コード例 #1
0
        public void WriteSwfFileInfoTest()
        {
            var fileInfo = new SwfFileInfo {
                Format     = SwfFormat.CWS,
                Version    = 10,
                FileLength = 0x12345678
            };
            var mem    = new MemoryStream();
            var writer = new SwfStreamWriter(mem);

            writer.WriteSwfFileInfo(fileInfo);

            mem.Seek(0, SeekOrigin.Begin);

            Assert.AreEqual((byte)'C', mem.ReadByte());
            Assert.AreEqual((byte)'W', mem.ReadByte());
            Assert.AreEqual((byte)'S', mem.ReadByte());

            Assert.AreEqual(10, mem.ReadByte());

            Assert.AreEqual(0x78, mem.ReadByte());
            Assert.AreEqual(0x56, mem.ReadByte());
            Assert.AreEqual(0x34, mem.ReadByte());
            Assert.AreEqual(0x12, mem.ReadByte());

            Assert.AreEqual(mem.Length, mem.Position, "Should reach end of the stream");
        }
コード例 #2
0
        public void WriteSwfFileInfoTest()
        {
            var fileInfo = new SwfFileInfo {
                Format = "CWS",
                Version = 10,
                FileLength = 0x12345678
            };
            var mem = new MemoryStream();
            var writer = new SwfStreamWriter(mem);
            writer.WriteSwfFileInfo(fileInfo);

            mem.Seek(0, SeekOrigin.Begin);

            Assert.AreEqual((byte)'C', mem.ReadByte());
            Assert.AreEqual((byte)'W', mem.ReadByte());
            Assert.AreEqual((byte)'S', mem.ReadByte());

            Assert.AreEqual(10, mem.ReadByte());

            Assert.AreEqual(0x78, mem.ReadByte());
            Assert.AreEqual(0x56, mem.ReadByte());
            Assert.AreEqual(0x34, mem.ReadByte());
            Assert.AreEqual(0x12, mem.ReadByte());

            Assert.AreEqual(mem.Length, mem.Position, "Should reach end of the stream");
        }
コード例 #3
0
ファイル: SwfMillFacadeTest.cs プロジェクト: shhadi/SwfLib
        protected static SwfStreamReader GetSwfStreamReader(SwfFileInfo info, Stream stream)
        {
            if (info.Format == SwfFormat.Unknown)
            {
                throw new NotSupportedException("Illegal file format");
            }
            if (info.Format == SwfFormat.FWS)
            {
                return(new SwfStreamReader(stream));
            }
            var mem = new MemoryStream();

            SwfZip.Decompress(stream, mem, info.Format);
            return(new SwfStreamReader(mem));
        }
コード例 #4
0
        private static Stream DecompressIfNeeded(SwfFileInfo info, Stream stream)
        {
            if (info.Format == SwfFormat.Unknown)
            {
                throw new NotSupportedException("Illegal file format");
            }
            if (info.Format == SwfFormat.FWS)
            {
                return(stream);
            }

            var mem = new MemoryStream();

            SwfZip.Decompress(stream, mem, info.Format);
            return(mem);
        }
コード例 #5
0
 private static Stream DecompressIfNeeded(SwfFileInfo info, Stream stream)
 {
     switch (info.Format) {
         case "CWS":
             var mem = new MemoryStream();
             SwfZip.Decompress(stream, mem);
             return mem;
         case "FWS":
             return stream;
         default:
             throw new NotSupportedException("Illegal file format");
     }
 }