poi-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cen...@apache.org
Subject svn commit: r1857068 - /poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestBug47563.java
Date Sun, 07 Apr 2019 07:17:48 GMT
Author: centic
Date: Sun Apr  7 07:17:47 2019
New Revision: 1857068

URL: http://svn.apache.org/viewvc?rev=1857068&view=rev
Log:
Fix a flaky test, it seems if the document is not closed, the automatic
closing of file-handles interferes with subsequent tests, by closing the
document this flakiness seems to be gone.

Flakiness could be reproduced locally by continuously running test with IntelliJ
"run until failure" run-config option and after aprox. 17,000 test-executions!

Modified:
    poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestBug47563.java

Modified: poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestBug47563.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestBug47563.java?rev=1857068&r1=1857067&r2=1857068&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestBug47563.java (original)
+++ poi/trunk/src/scratchpad/testcases/org/apache/poi/hwpf/usermodel/TestBug47563.java Sun
Apr  7 07:17:47 2019
@@ -49,7 +49,7 @@ public class TestBug47563 {
 		data.add(new Object[] {6, 1});
 		data.add(new Object[] {2, 2});
 		data.add(new Object[] {3, 2});
-		data.add(new Object[] {2, 3});
+		data.add(new Object[] {2, 3});	//
 		data.add(new Object[] {3, 3});
 
 		return data;
@@ -62,46 +62,47 @@ public class TestBug47563 {
 
 		// POI apparently can't create a document from scratch,
 		// so we need an existing empty dummy document
-		HWPFDocument doc = HWPFTestDataSamples.openSampleFile("empty.doc");
+		try (HWPFDocument doc = HWPFTestDataSamples.openSampleFile("empty.doc")) {
+			Range range = doc.getRange();
+			range.sanityCheck();
 
-		Range range = doc.getRange();
-		range.sanityCheck();
+			Table table = range.insertTableBefore((short) columns, rows);
+			table.sanityCheck();
 
-		Table table = range.insertTableBefore((short) columns, rows);
-		table.sanityCheck();
-
-		for (int rowIdx = 0; rowIdx < table.numRows(); rowIdx++) {
-			TableRow row = table.getRow(rowIdx);
-			row.sanityCheck();
-
-			System.out.println("row " + rowIdx);
-			for (int colIdx = 0; colIdx < row.numCells(); colIdx++) {
-				TableCell cell = row.getCell(colIdx);
-				cell.sanityCheck();
-
-				System.out.println("column " + colIdx + ", num paragraphs "
-						+ cell.numParagraphs());
-
-				Paragraph par = cell.getParagraph(0);
-				par.sanityCheck();
-
-				par.insertBefore("" + (rowIdx * row.numCells() + colIdx));
-				par.sanityCheck();
-				
+			for (int rowIdx = 0; rowIdx < table.numRows(); rowIdx++) {
+				TableRow row = table.getRow(rowIdx);
 				row.sanityCheck();
-				table.sanityCheck();
-				range.sanityCheck();
+
+				System.out.println("row " + rowIdx);
+				for (int colIdx = 0; colIdx < row.numCells(); colIdx++) {
+					TableCell cell = row.getCell(colIdx);
+					cell.sanityCheck();
+
+					System.out.println("column " + colIdx + ", num paragraphs "
+							+ cell.numParagraphs());
+
+					Paragraph par = cell.getParagraph(0);
+					par.sanityCheck();
+
+					par.insertBefore("" + (rowIdx * row.numCells() + colIdx));
+					par.sanityCheck();
+
+					row.sanityCheck();
+					table.sanityCheck();
+					range.sanityCheck();
+				}
 			}
-		}
 
-		String text = range.text();
-		int mustBeAfter = 0;
-		for (int i = 0; i < rows * columns; i++) {
-			int next = text.indexOf(Integer.toString(i), mustBeAfter);
-			assertTrue("Test with " + rows + "/" + columns + ": Should not find " + i + " but found
it at " + next + " with " + mustBeAfter + " in " + text + "\n" +
-							text.indexOf(Integer.toString(i), mustBeAfter),
-					next != -1);
-			mustBeAfter = next;
+			String text = range.text();
+			int mustBeAfter = 0;
+			for (int i = 0; i < rows * columns; i++) {
+				int next = text.indexOf(Integer.toString(i), mustBeAfter);
+				assertTrue("Test with " + rows + "/" + columns + ": Should not find " + i +
+								" but found it at " + next + " with " + mustBeAfter + " in " + text + "\n" +
+								text.indexOf(Integer.toString(i), mustBeAfter),
+						next != -1);
+				mustBeAfter = next;
+			}
 		}
 	}
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org


Mime
View raw message