public void TestReadPICT() { //provided in bug-44886 byte[] data = _samples.ReadFile("Container.dat"); EscherContainerRecord record = new EscherContainerRecord(); record.FillFields(data, 0, new DefaultEscherRecordFactory()); EscherContainerRecord bstore = (EscherContainerRecord)record.ChildRecords[1]; EscherBSERecord bse1 = (EscherBSERecord)bstore.ChildRecords[1]; //System.out.println(bse1); Assert.AreEqual(EscherBSERecord.BT_WMF, bse1.BlipTypeWin32); Assert.AreEqual(EscherBSERecord.BT_PICT, bse1.BlipTypeMacOS); Assert.IsTrue(Arrays.Equals(new byte[] { (byte)0xC7, 0x15, 0x69, 0x2D, (byte)0xE5, (byte)0x89, (byte)0xA3, 0x6F, 0x66, 0x03, (byte)0xD6, 0x24, (byte)0xF7, (byte)0xDB, 0x1D, 0x13 }, bse1.UID)); Assert.AreEqual(255, bse1.Tag); Assert.AreEqual(1133, bse1.Size); EscherMetafileBlip blip1 = (EscherMetafileBlip)bse1.BlipRecord; Assert.AreEqual(0x5430, blip1.Options); Assert.AreEqual(EscherMetafileBlip.RECORD_ID_PICT, blip1.RecordId); Assert.IsTrue(Arrays.Equals(new byte[] { 0x57, 0x32, 0x7B, (byte)0x91, 0x23, 0x5D, (byte)0xDB, 0x36, 0x7A, (byte)0xDB, (byte)0xFF, 0x17, (byte)0xFE, (byte)0xF3, (byte)0xA7, 0x05 }, blip1.UID)); Assert.IsTrue(Arrays.Equals(new byte[] { (byte)0xC7, 0x15, 0x69, 0x2D, (byte)0xE5, (byte)0x89, (byte)0xA3, 0x6F, 0x66, 0x03, (byte)0xD6, 0x24, (byte)0xF7, (byte)0xDB, 0x1D, 0x13 }, blip1.PrimaryUID)); //Serialize and Read again byte[] ser = bse1.Serialize(); EscherBSERecord bse2 = new EscherBSERecord(); bse2.FillFields(ser, 0, new DefaultEscherRecordFactory()); Assert.AreEqual(bse1.RecordId, bse2.RecordId); Assert.AreEqual(bse1.Options, bse2.Options); Assert.AreEqual(bse1.BlipTypeWin32, bse2.BlipTypeWin32); Assert.AreEqual(bse1.BlipTypeMacOS, bse2.BlipTypeMacOS); Assert.IsTrue(Arrays.Equals(bse1.UID, bse2.UID)); Assert.AreEqual(bse1.Tag, bse2.Tag); Assert.AreEqual(bse1.Size, bse2.Size); EscherMetafileBlip blip2 = (EscherMetafileBlip)bse1.BlipRecord; Assert.AreEqual(blip1.Options, blip2.Options); Assert.AreEqual(blip1.RecordId, blip2.RecordId); Assert.AreEqual(blip1.UID, blip2.UID); Assert.AreEqual(blip1.PrimaryUID, blip2.PrimaryUID); Assert.IsTrue(Arrays.Equals(blip1.PictureData, blip1.PictureData)); }
public void Test47143() { byte[] data = _samples.ReadFile("47143.dat"); EscherBSERecord bse = new EscherBSERecord(); bse.FillFields(data, 0, new DefaultEscherRecordFactory()); bse.ToString(); //assert that toString() works Assert.IsTrue(bse.BlipRecord is EscherMetafileBlip); EscherMetafileBlip blip = (EscherMetafileBlip)bse.BlipRecord; blip.ToString(); //assert that toString() works byte[] remaining = blip.RemainingData; Assert.IsNotNull(remaining); byte[] ser = bse.Serialize(); //serialize and assert against the source data Assert.IsTrue(Arrays.Equals(data, ser)); }