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"); }
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"); }
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)); }
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); }
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"); } }