Skip to content

Commit 5ae8ad1

Browse files
committed
PDFBOX-5660: close input, as suggested by Valery Bokov; closes #304
git-svn-id: https://svn.apache.org/repos/asf/pdfbox/trunk@1929453 13f79535-47bb-0310-9956-ffa450edef68
1 parent 74d2e65 commit 5ae8ad1

File tree

1 file changed

+31
-30
lines changed

1 file changed

+31
-30
lines changed

fontbox/src/test/java/org/apache/fontbox/ttf/GlyphSubstitutionTableTest.java

Lines changed: 31 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
import java.io.BufferedReader;
2424
import java.io.IOException;
25+
import java.io.InputStream;
2526
import java.io.InputStreamReader;
2627
import java.nio.charset.StandardCharsets;
2728
import java.util.ArrayList;
@@ -52,38 +53,38 @@ class GlyphSubstitutionTableTest
5253
void testGetGsubData() throws IOException
5354
{
5455
// given
55-
RandomAccessReadBuffer randomAccessReadBuffer = new RandomAccessReadBuffer(
56-
GSUBTableDebugger.class.getResourceAsStream("/ttf/Lohit-Bengali.ttf"));
57-
RandomAccessReadDataStream randomAccessReadBufferDataStream = new RandomAccessReadDataStream(
58-
randomAccessReadBuffer);
59-
randomAccessReadBufferDataStream.seek(DATA_POSITION_FOR_GSUB_TABLE);
60-
61-
GlyphSubstitutionTable testClass = new GlyphSubstitutionTable();
62-
63-
// when
64-
testClass.read(null, randomAccessReadBufferDataStream);
65-
66-
// then
67-
GsubData gsubData = testClass.getGsubData();
68-
assertNotNull(gsubData);
69-
assertNotEquals(GsubData.NO_DATA_FOUND, gsubData);
70-
assertEquals(Language.BENGALI, gsubData.getLanguage());
71-
assertEquals("bng2", gsubData.getActiveScriptName());
72-
73-
assertEquals(new HashSet<>(EXPECTED_FEATURE_NAMES), gsubData.getSupportedFeatures());
74-
75-
String templatePathToFile = "/gsub/lohit_bengali/bng2/%s.txt";
76-
77-
for (String featureName : EXPECTED_FEATURE_NAMES)
56+
try (InputStream is = GSUBTableDebugger.class.getResourceAsStream("/ttf/Lohit-Bengali.ttf");
57+
RandomAccessReadBuffer rarb = new RandomAccessReadBuffer(is);
58+
RandomAccessReadDataStream rarbds = new RandomAccessReadDataStream(rarb))
7859
{
79-
System.out.println("******* Testing feature: " + featureName);
80-
Map<List<Integer>, List<Integer>> expectedGsubTableRawData = getExpectedGsubTableRawData(
81-
String.format(templatePathToFile, featureName));
82-
ScriptFeature scriptFeature = new MapBackedScriptFeature(featureName,
83-
expectedGsubTableRawData);
84-
assertEquals(scriptFeature, gsubData.getFeature(featureName));
60+
rarbds.seek(DATA_POSITION_FOR_GSUB_TABLE);
61+
62+
GlyphSubstitutionTable testClass = new GlyphSubstitutionTable();
63+
64+
// when
65+
testClass.read(null, rarbds);
66+
67+
// then
68+
GsubData gsubData = testClass.getGsubData();
69+
assertNotNull(gsubData);
70+
assertNotEquals(GsubData.NO_DATA_FOUND, gsubData);
71+
assertEquals(Language.BENGALI, gsubData.getLanguage());
72+
assertEquals("bng2", gsubData.getActiveScriptName());
73+
74+
assertEquals(new HashSet<>(EXPECTED_FEATURE_NAMES), gsubData.getSupportedFeatures());
75+
76+
String templatePathToFile = "/gsub/lohit_bengali/bng2/%s.txt";
77+
78+
for (String featureName : EXPECTED_FEATURE_NAMES)
79+
{
80+
System.out.println("******* Testing feature: " + featureName);
81+
Map<List<Integer>, List<Integer>> expectedGsubTableRawData = getExpectedGsubTableRawData(
82+
String.format(templatePathToFile, featureName));
83+
ScriptFeature scriptFeature = new MapBackedScriptFeature(featureName,
84+
expectedGsubTableRawData);
85+
assertEquals(scriptFeature, gsubData.getFeature(featureName));
86+
}
8587
}
86-
8788
}
8889

8990
private Map<List<Integer>, List<Integer>> getExpectedGsubTableRawData(String pathToResource)

0 commit comments

Comments
 (0)