01: /* ====================================================================
02: Licensed to the Apache Software Foundation (ASF) under one or more
03: contributor license agreements. See the NOTICE file distributed with
04: this work for additional information regarding copyright ownership.
05: The ASF licenses this file to You under the Apache License, Version 2.0
06: (the "License"); you may not use this file except in compliance with
07: the License. You may obtain a copy of the License at
08:
09: http://www.apache.org/licenses/LICENSE-2.0
10:
11: Unless required by applicable law or agreed to in writing, software
12: distributed under the License is distributed on an "AS IS" BASIS,
13: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: See the License for the specific language governing permissions and
15: limitations under the License.
16: ==================================================================== */
17:
18: package org.apache.poi.hwpf.model;
19:
20: import org.apache.poi.hwpf.*;
21: import org.apache.poi.hwpf.model.io.*;
22:
23: public class TestListTables extends HWPFTestCase {
24:
25: public TestListTables() {
26: }
27:
28: public void testReadWrite() throws Exception {
29: FileInformationBlock fib = _hWPFDocFixture._fib;
30: byte[] tableStream = _hWPFDocFixture._tableStream;
31:
32: int listOffset = fib.getFcPlcfLst();
33: int lfoOffset = fib.getFcPlfLfo();
34: if (listOffset != 0 && fib.getLcbPlcfLst() != 0) {
35: ListTables listTables = new ListTables(tableStream, fib
36: .getFcPlcfLst(), fib.getFcPlfLfo());
37: HWPFFileSystem fileSys = new HWPFFileSystem();
38:
39: HWPFOutputStream tableOut = fileSys.getStream("1Table");
40:
41: listTables.writeListDataTo(tableOut);
42: int offset = tableOut.getOffset();
43: listTables.writeListOverridesTo(tableOut);
44:
45: ListTables newTables = new ListTables(tableOut
46: .toByteArray(), 0, offset);
47:
48: assertEquals(listTables, newTables);
49:
50: }
51: }
52:
53: }
|