Return-Path: X-Original-To: apmail-poi-commits-archive@minotaur.apache.org Delivered-To: apmail-poi-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A21CC7189 for ; Thu, 11 Aug 2011 16:37:53 +0000 (UTC) Received: (qmail 57857 invoked by uid 500); 11 Aug 2011 16:37:53 -0000 Delivered-To: apmail-poi-commits-archive@poi.apache.org Received: (qmail 57812 invoked by uid 500); 11 Aug 2011 16:37:53 -0000 Mailing-List: contact commits-help@poi.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@poi.apache.org Delivered-To: mailing list commits@poi.apache.org Received: (qmail 57805 invoked by uid 99); 11 Aug 2011 16:37:53 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 11 Aug 2011 16:37:53 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 11 Aug 2011 16:37:51 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 8952923889E7 for ; Thu, 11 Aug 2011 16:37:32 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1156662 [3/3] - in /poi/trunk/src/scratchpad: src/org/apache/poi/hwpf/ src/org/apache/poi/hwpf/dev/ src/org/apache/poi/hwpf/model/ src/org/apache/poi/hwpf/model/types/ testcases/org/apache/poi/hwpf/model/ testcases/org/apache/poi/hwpf/user... Date: Thu, 11 Aug 2011 16:37:32 -0000 To: commits@poi.apache.org From: sergey@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20110811163732.8952923889E7@eris.apache.org> Modified: poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/model/TestDocumentProperties.java URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/model/TestDocumentProperties.java?rev=1156662&r1=1156661&r2=1156662&view=diff ============================================================================== --- poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/model/TestDocumentProperties.java (original) +++ poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/model/TestDocumentProperties.java Thu Aug 11 16:37:31 2011 @@ -39,7 +39,7 @@ public final class TestDocumentPropertie _documentProperties.serialize(buf, 0); DocumentProperties newDocProperties = - new DocumentProperties(buf, 0); + new DocumentProperties(buf, 0, size); Field[] fields = DocumentProperties.class.getSuperclass().getDeclaredFields(); AccessibleObject.setAccessible(fields, true); @@ -71,7 +71,7 @@ public final class TestDocumentPropertie _hWPFDocFixture.setUp(); - _documentProperties = new DocumentProperties(_hWPFDocFixture._tableStream, _hWPFDocFixture._fib.getFcDop()); + _documentProperties = new DocumentProperties(_hWPFDocFixture._tableStream, _hWPFDocFixture._fib.getFcDop(), _hWPFDocFixture._fib.getLcbDop()); } protected void tearDown() Modified: poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestBugs.java URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestBugs.java?rev=1156662&r1=1156661&r2=1156662&view=diff ============================================================================== --- poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestBugs.java (original) +++ poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestBugs.java Thu Aug 11 16:37:31 2011 @@ -16,21 +16,15 @@ ==================================================================== */ package org.apache.poi.hwpf.usermodel; +import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.util.Arrays; import java.util.Collection; import java.util.List; -import org.apache.poi.util.LittleEndian; - -import junit.framework.AssertionFailedError; import junit.framework.TestCase; -import org.apache.poi.hwpf.model.SubdocumentType; - -import org.apache.poi.hwpf.model.FileInformationBlock; - import org.apache.commons.codec.digest.DigestUtils; import org.apache.poi.POIDataSamples; import org.apache.poi.hwpf.HWPFDocument; @@ -39,8 +33,12 @@ import org.apache.poi.hwpf.HWPFTestDataS import org.apache.poi.hwpf.extractor.Word6Extractor; import org.apache.poi.hwpf.extractor.WordExtractor; import org.apache.poi.hwpf.model.FieldsDocumentPart; +import org.apache.poi.hwpf.model.FileInformationBlock; import org.apache.poi.hwpf.model.PlexOfField; +import org.apache.poi.hwpf.model.SubdocumentType; +import org.apache.poi.hwpf.model.io.HWPFOutputStream; import org.apache.poi.util.IOUtils; +import org.apache.poi.util.LittleEndian; /** * Test different problems reported in Apache Bugzilla @@ -549,11 +547,13 @@ public class TestBugs extends TestCase /** * [RESOLVED FIXED] Bug 51604 - replace text fails for doc ( poi 3.8 beta * release from download site ) + * + * @throws IOException + * @throws FileNotFoundException */ - public void test51604p2() + public void test51604p2() throws FileNotFoundException, IOException { - HWPFDocument doc = HWPFTestDataSamples - .openSampleFile( "Bug51604.doc" ); + HWPFDocument doc = HWPFTestDataSamples.openSampleFile( "Bug51604.doc" ); Range range = doc.getRange(); int numParagraph = range.numParagraphs(); @@ -583,7 +583,49 @@ public class TestBugs extends TestCase totalLength += partLength; } + } + + /** + * [RESOLVED FIXED] Bug 51604 - replace text fails for doc ( poi 3.8 beta + * release from download site ) + */ + public void test51604p3() throws IOException + { + HWPFDocument doc = HWPFTestDataSamples.openSampleFile( "Bug51604.doc" ); + + byte[] originalData = new byte[doc.getFileInformationBlock() + .getLcbDop()]; + System.arraycopy( doc.getTableStream(), doc.getFileInformationBlock() + .getFcDop(), originalData, 0, originalData.length ); + + HWPFOutputStream outputStream = new HWPFOutputStream(); + doc.getDocProperties().writeTo( outputStream ); + final byte[] oldData = outputStream.toByteArray(); + + assertEquals( Arrays.toString( originalData ), + Arrays.toString( oldData ) ); + + Range range = doc.getRange(); + int numParagraph = range.numParagraphs(); + for ( int i = 0; i < numParagraph; i++ ) + { + Paragraph paragraph = range.getParagraph( i ); + int numCharRuns = paragraph.numCharacterRuns(); + for ( int j = 0; j < numCharRuns; j++ ) + { + CharacterRun charRun = paragraph.getCharacterRun( j ); + String text = charRun.text(); + if ( text.contains( "Header" ) ) + charRun.replaceText( text, "added" ); + } + } + + doc = HWPFTestDataSamples.writeOutAndReadBack( doc ); + + outputStream = new HWPFOutputStream(); + doc.getDocProperties().writeTo( outputStream ); + final byte[] newData = outputStream.toByteArray(); - assertEquals( doc.getText().length(), totalLength ); + assertEquals( Arrays.toString( oldData ), Arrays.toString( newData ) ); } } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org For additional commands, e-mail: commits-help@poi.apache.org