You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2021/02/21 09:36:08 UTC
svn commit: r1886746 -
/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/text/BidiTest.java
Author: tilman
Date: Sun Feb 21 09:36:08 2021
New Revision: 1886746
URL: http://svn.apache.org/viewvc?rev=1886746&view=rev
Log:
PDFBOX-4892: use try-with-resources, remove double code, open file only once
Modified:
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/text/BidiTest.java
Modified: pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/text/BidiTest.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/text/BidiTest.java?rev=1886746&r1=1886745&r2=1886746&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/text/BidiTest.java (original)
+++ pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/text/BidiTest.java Sun Feb 21 09:36:08 2021
@@ -56,20 +56,15 @@ class BidiTest
private PDDocument document;
private PDFTextStripper stripper;
-
- private boolean bFail = false;
@BeforeEach
public void setUp() throws IOException
{
- if (!outDir.exists())
+ if (!outDir.exists() && !outDir.mkdirs())
{
- if (!outDir.mkdirs())
- {
- throw (new IOException("Error creating " + outDir.getAbsolutePath() + " directory"));
- }
+ throw (new IOException("Error creating " + outDir.getAbsolutePath() + " directory"));
}
-
+
document = Loader.loadPDF(new File(IN_DIR, NAME_OF_PDF));
stripper = new PDFTextStripper();
stripper.setLineSeparator("\n");
@@ -116,71 +111,48 @@ class BidiTest
log.info("Preparing to parse " + inFile.getName() + " for standard test");
}
- if (!outDir.exists())
+ File outFile;
+ File expectedFile;
+
+ if (bSort)
{
- if (!outDir.mkdirs())
- {
- throw (new IOException("Error creating " + outDir.getAbsolutePath() + " directory"));
- }
+ outFile = new File(outDir, inFile.getName() + "-sorted.txt");
+ expectedFile = new File(inFile.getParentFile(), inFile.getName() + "-sorted.txt");
+ }
+ else
+ {
+ outFile = new File(outDir, inFile.getName() + ".txt");
+ expectedFile = new File(inFile.getParentFile(), inFile.getName() + ".txt");
}
- PDDocument document = Loader.loadPDF(inFile);
- try
- {
- File outFile;
- File expectedFile;
-
- if(bSort)
- {
- outFile = new File(outDir, inFile.getName() + "-sorted.txt");
- expectedFile = new File(inFile.getParentFile(), inFile.getName() + "-sorted.txt");
- }
- else
- {
- outFile = new File(outDir, inFile.getName() + ".txt");
- expectedFile = new File(inFile.getParentFile(), inFile.getName() + ".txt");
- }
+ try (OutputStream os = new FileOutputStream(outFile);
+ Writer writer = new OutputStreamWriter(os, ENCODING))
+ {
+ //Allows for sorted tests
+ stripper.setSortByPosition(bSort);
+ stripper.writeText(document, writer);
- OutputStream os = new FileOutputStream(outFile);
- try
- {
- Writer writer = new OutputStreamWriter(os, ENCODING);
- try
- {
- //Allows for sorted tests
- stripper.setSortByPosition(bSort);
- stripper.writeText(document, writer);
- }
- finally
- {
- // close the written file before reading it again
- writer.close();
- }
- }
- finally
- {
- os.close();
- }
+ // close the written file before reading it again
+ }
- if (bLogResult)
- {
- log.info("Text for " + inFile.getName() + ":");
- log.info(stripper.getText(document));
- }
+ if (bLogResult)
+ {
+ log.info("Text for " + inFile.getName() + ":");
+ log.info(stripper.getText(document));
+ }
- if (!expectedFile.exists())
- {
- this.bFail = true;
- fail("FAILURE: Input verification file: " + expectedFile.getAbsolutePath() +
- " did not exist");
- return;
- }
+ if (!expectedFile.exists())
+ {
+ fail("FAILURE: Input verification file: " + expectedFile.getAbsolutePath() +
+ " did not exist");
+ return;
+ }
- LineNumberReader expectedReader =
+ try (LineNumberReader expectedReader =
new LineNumberReader(new InputStreamReader(new FileInputStream(expectedFile), ENCODING));
- LineNumberReader actualReader =
- new LineNumberReader(new InputStreamReader(new FileInputStream(outFile), ENCODING));
-
+ LineNumberReader actualReader =
+ new LineNumberReader(new InputStreamReader(new FileInputStream(outFile), ENCODING)))
+ {
while (true)
{
String expectedLine = expectedReader.readLine();
@@ -195,29 +167,22 @@ class BidiTest
}
if (!stringsEqual(expectedLine, actualLine))
{
- this.bFail = true;
fail("FAILURE: Line mismatch for file " + inFile.getName() +
" (sort = "+bSort+")" +
- " at expected line: " + expectedReader.getLineNumber() +
+ " at expected line: " + expectedReader.getLineNumber() +
" at actual line: " + actualReader.getLineNumber() +
"\nexpected line was: \"" + expectedLine + "\"" +
- "\nactual line was: \"" + actualLine + "\"" + "\n");
+ "\nactual line was: \"" + actualLine + "\"" + "\n");
//lets report all lines, even though this might produce some verbose logging
//break;
}
- if( expectedLine == null || actualLine==null)
+ if (expectedLine == null || actualLine == null)
{
break;
}
}
- expectedReader.close();
- actualReader.close();
- }
- finally
- {
- document.close();
}
}