示例#1
0
        public void TestWrite()
        {
            HSSFRichTextString str = new HSSFRichTextString("Hello, World!");

            TextObjectRecord record = new TextObjectRecord();
            record.Str = (/*setter*/str);
            record.HorizontalTextAlignment = (/*setter*/ TextObjectRecord.HORIZONTAL_TEXT_ALIGNMENT_LEFT_ALIGNED);
            record.VerticalTextAlignment = (/*setter*/ TextObjectRecord.VERTICAL_TEXT_ALIGNMENT_TOP);
            record.IsTextLocked = (/*setter*/ true);
            record.TextOrientation = (/*setter*/ TextObjectRecord.TEXT_ORIENTATION_NONE);

            byte[] ser = record.Serialize();
            Assert.AreEqual(ser.Length, simpleData.Length);

            Assert.IsTrue(Arrays.Equals(simpleData, ser));

            //read again
            RecordInputStream is1 = TestcaseRecordInputStream.Create(simpleData);
            record = new TextObjectRecord(is1);
        }
示例#2
0
        public void TestWrite()
        {
            HSSFRichTextString str = new HSSFRichTextString("Hello, World!");

            TextObjectRecord record = new TextObjectRecord();
            record.Str = (/*setter*/str);
            record.HorizontalTextAlignment = (/*setter*/ HorizontalTextAlignment.Left);
            record.VerticalTextAlignment = (/*setter*/ VerticalTextAlignment.Top);
            record.IsTextLocked = (/*setter*/ true);
            record.TextOrientation = (/*setter*/ TextOrientation.None);

            byte[] ser = record.Serialize();
            Assert.AreEqual(ser.Length, simpleData.Length);

            Assert.IsTrue(Arrays.Equals(simpleData, ser));

            //read again
            RecordInputStream is1 = TestcaseRecordInputStream.Create(simpleData);
            record = new TextObjectRecord(is1);
        }
        public void TestStore()
        {
            TextObjectRecord record = new TextObjectRecord();
            HSSFRichTextString str = new HSSFRichTextString("AB");
            str.ApplyFont(0, 2, (short)0x0018);
            str.ApplyFont(2, 2, (short)0x0320);

            record.HorizontalTextAlignment = (TextObjectRecord.HORIZONTAL_TEXT_ALIGNMENT_CENTERED);
            record.VerticalTextAlignment = (TextObjectRecord.VERTICAL_TEXT_ALIGNMENT_JUSTIFY);
            record.IsTextLocked = (true);
            record.TextOrientation = (TextObjectRecord.TEXT_ORIENTATION_ROT_RIGHT);
            record.Str = (str);

            byte[] recordBytes = record.Serialize();
            Assert.AreEqual(recordBytes.Length, data.Length);
            for (int i = 0; i < data.Length; i++)
                Assert.AreEqual(data[i], recordBytes[i], "At offset " + i);
        }
示例#4
0
        public void TestWriteEmpty()
        {
            HSSFRichTextString str = new HSSFRichTextString("");

            TextObjectRecord record = new TextObjectRecord();
            record.Str = (/*setter*/str);

            byte[] ser = record.Serialize();

            int formatDataLen = LittleEndian.GetUShort(ser, 16);
            Assert.AreEqual(0, formatDataLen, "formatDataLength");

            Assert.AreEqual(22, ser.Length); // just the TXO record

            //read again
            RecordInputStream is1 = TestcaseRecordInputStream.Create(ser);
            record = new TextObjectRecord(is1);
            Assert.AreEqual(0, record.Str.Length);
        }
示例#5
0
        public void TestLinkFormula()
        {
            RecordInputStream is1 = new RecordInputStream(new MemoryStream(linkData));
            is1.NextRecord();
            TextObjectRecord rec = new TextObjectRecord(is1);

            Ptg ptg = rec.LinkRefPtg;
            Assert.IsNotNull(ptg);
            Assert.AreEqual(typeof(RefPtg), ptg.GetType());
            RefPtg rptg = (RefPtg)ptg;
            Assert.AreEqual("T2", rptg.ToFormulaString());

            byte[] data2 = rec.Serialize();
            Assert.AreEqual(linkData.Length, data2.Length);
            Assert.IsTrue(Arrays.Equals(linkData, data2));
        }
示例#6
0
        public void TestClone()
        {
            String text = "Hello, World";
            HSSFRichTextString str = new HSSFRichTextString(text);

            TextObjectRecord obj = new TextObjectRecord();
            obj.Str = (/*setter*/ str);


            TextObjectRecord Cloned = (TextObjectRecord)obj.Clone();
            Assert.AreEqual(obj.RecordSize, Cloned.RecordSize);
            Assert.AreEqual(obj.HorizontalTextAlignment, Cloned.HorizontalTextAlignment);
            Assert.AreEqual(obj.Str.String, Cloned.Str.String);

            //finally check that the Serialized data is the same
            byte[] src = obj.Serialize();
            byte[] cln = Cloned.Serialize();
            Assert.IsTrue(Arrays.Equals(src, cln));
        }
示例#7
0
        public void TestLongRecords()
        {
            int[] length = { 1024, 2048, 4096, 8192, 16384 }; //test against strings of different length
            for (int i = 0; i < length.Length; i++)
            {
                StringBuilder buff = new StringBuilder(length[i]);
                for (int j = 0; j < length[i]; j++)
                {
                    buff.Append("x");
                }
                IRichTextString str = new HSSFRichTextString(buff.ToString());

                TextObjectRecord obj = new TextObjectRecord();
                obj.Str = (/*setter*/str);

                byte[] data = obj.Serialize();
                RecordInputStream is1 = new RecordInputStream(new MemoryStream(data));
                is1.NextRecord();
                TextObjectRecord record = new TextObjectRecord(is1);
                str = record.Str;

                Assert.AreEqual(buff.Length, str.Length);
                Assert.AreEqual(buff.ToString(), str.String);
            }
        }
示例#8
0
        public void TestStore()
        {
            TextObjectRecord record = new TextObjectRecord();
            HSSFRichTextString str = new HSSFRichTextString("AB");
            str.ApplyFont(0, 2, (short)0x0018);
            str.ApplyFont(2, 2, (short)0x0320);

            record.HorizontalTextAlignment = HorizontalTextAlignment.Center;
            record.VerticalTextAlignment = VerticalTextAlignment.Justify;
            record.IsTextLocked = (true);
            record.TextOrientation = TextOrientation.RotRight;
            record.Str = (str);

            byte[] recordBytes = record.Serialize();
            Assert.AreEqual(recordBytes.Length, data.Length);
            for (int i = 0; i < data.Length; i++)
                Assert.AreEqual(data[i], recordBytes[i], "At offset " + i);
        }