FileDocCategorySizeDatePackage
TestCHPBinTable.javaAPI DocApache Poi 3.0.12892Mon Jan 01 18:55:36 GMT 2007org.apache.poi.hwpf.model

TestCHPBinTable

public class TestCHPBinTable extends TestCase

Fields Summary
private CHPBinTable
_cHPBinTable
private HWPFDocFixture
_hWPFDocFixture
Constructors Summary
public TestCHPBinTable(String name)


    
  
    super(name);
  
Methods Summary
protected voidsetUp()

    super.setUp();
    _hWPFDocFixture = new HWPFDocFixture(this);

    _hWPFDocFixture.setUp();
  
protected voidtearDown()

    _cHPBinTable = null;
    _hWPFDocFixture.tearDown();

    _hWPFDocFixture = null;
    super.tearDown();
  
public voidtestReadWrite()

    FileInformationBlock fib = _hWPFDocFixture._fib;
    byte[] mainStream = _hWPFDocFixture._mainStream;
    byte[] tableStream = _hWPFDocFixture._tableStream;
    int fcMin = fib.getFcMin();

    _cHPBinTable = new CHPBinTable(mainStream, tableStream, fib.getFcPlcfbteChpx(), fib.getLcbPlcfbteChpx(), fcMin);

    HWPFFileSystem fileSys = new HWPFFileSystem();

    _cHPBinTable.writeTo(fileSys, 0);
    ByteArrayOutputStream tableOut = fileSys.getStream("1Table");
    ByteArrayOutputStream mainOut =  fileSys.getStream("WordDocument");

    byte[] newTableStream = tableOut.toByteArray();
    byte[] newMainStream = mainOut.toByteArray();

    CHPBinTable newBinTable = new CHPBinTable(newMainStream, newTableStream, 0, newTableStream.length, 0);

    ArrayList oldTextRuns = _cHPBinTable._textRuns;
    ArrayList newTextRuns = newBinTable._textRuns;

    assertEquals(oldTextRuns.size(), newTextRuns.size());

    int size = oldTextRuns.size();
    for (int x = 0; x < size; x++)
    {
      PropertyNode oldNode = (PropertyNode)oldTextRuns.get(x);
      PropertyNode newNode = (PropertyNode)newTextRuns.get(x);
      assertTrue(oldNode.equals(newNode));
    }