Search in sources :

Example 1 with ExtendedPivotTableViewFieldsRecord

use of org.apache.poi.hssf.record.pivottable.ExtendedPivotTableViewFieldsRecord in project poi by apache.

the class TestExtendedPivotTableViewFieldsRecord method testSubNameNotPresent_bug46693.

public void testSubNameNotPresent_bug46693() {
    // This data came from attachment 23347 of bug 46693 at offset 0xAA43
    byte[] data = HexRead.readFromString(// BIFF header
    "00 01 14 00" + "1E 14 00 0A FF FF FF FF 00 00 FF FF 00 00 00 00 00 00 00 00");
    RecordInputStream in = TestcaseRecordInputStream.create(data);
    ExtendedPivotTableViewFieldsRecord rec;
    try {
        rec = new ExtendedPivotTableViewFieldsRecord(in);
    } catch (RecordFormatException e) {
        if (e.getMessage().equals("Expected to find a ContinueRecord in order to read remaining 65535 of 65535 chars")) {
            throw new AssertionFailedError("Identified bug 46693a");
        }
        throw e;
    }
    assertEquals(data.length, rec.getRecordSize());
}
Also used : RecordFormatException(org.apache.poi.hssf.record.RecordFormatException) ExtendedPivotTableViewFieldsRecord(org.apache.poi.hssf.record.pivottable.ExtendedPivotTableViewFieldsRecord) AssertionFailedError(junit.framework.AssertionFailedError) RecordInputStream(org.apache.poi.hssf.record.RecordInputStream) TestcaseRecordInputStream(org.apache.poi.hssf.record.TestcaseRecordInputStream)

Example 2 with ExtendedPivotTableViewFieldsRecord

use of org.apache.poi.hssf.record.pivottable.ExtendedPivotTableViewFieldsRecord in project poi by apache.

the class TestExtendedPivotTableViewFieldsRecord method testOlderFormat_bug46918.

public void testOlderFormat_bug46918() {
    // There are 10 SXVDEX records in the file (not uploaded) that originated bugzilla 46918
    // They all had the following hex encoding:
    byte[] data = HexRead.readFromString("00 01 0A 00 1E 14 00 0A FF FF FF FF 00 00");
    RecordInputStream in = TestcaseRecordInputStream.create(data);
    ExtendedPivotTableViewFieldsRecord rec;
    try {
        rec = new ExtendedPivotTableViewFieldsRecord(in);
    } catch (RecordFormatException e) {
        if (e.getMessage().equals("Not enough data (0) to read requested (2) bytes")) {
            throw new AssertionFailedError("Identified bug 46918");
        }
        throw e;
    }
    byte[] expReserData = HexRead.readFromString("1E 14 00 0A FF FF FF FF 00 00" + "FF FF 00 00 00 00 00 00 00 00");
    TestcaseRecordInputStream.confirmRecordEncoding(ExtendedPivotTableViewFieldsRecord.sid, expReserData, rec.serialize());
}
Also used : RecordFormatException(org.apache.poi.hssf.record.RecordFormatException) ExtendedPivotTableViewFieldsRecord(org.apache.poi.hssf.record.pivottable.ExtendedPivotTableViewFieldsRecord) AssertionFailedError(junit.framework.AssertionFailedError) RecordInputStream(org.apache.poi.hssf.record.RecordInputStream) TestcaseRecordInputStream(org.apache.poi.hssf.record.TestcaseRecordInputStream)

Aggregations

AssertionFailedError (junit.framework.AssertionFailedError)2 RecordFormatException (org.apache.poi.hssf.record.RecordFormatException)2 RecordInputStream (org.apache.poi.hssf.record.RecordInputStream)2 TestcaseRecordInputStream (org.apache.poi.hssf.record.TestcaseRecordInputStream)2 ExtendedPivotTableViewFieldsRecord (org.apache.poi.hssf.record.pivottable.ExtendedPivotTableViewFieldsRecord)2