Fix file handle leak in TestPublicSuffixMatcher
- Add message to assertion - Use tryt-with-resources
This commit is contained in:
parent
883dbe3ce7
commit
044a71755c
|
@ -49,14 +49,11 @@ class TestPublicSuffixListParser {
|
||||||
@BeforeEach
|
@BeforeEach
|
||||||
void setUp() throws Exception {
|
void setUp() throws Exception {
|
||||||
final ClassLoader classLoader = getClass().getClassLoader();
|
final ClassLoader classLoader = getClass().getClassLoader();
|
||||||
final InputStream in = classLoader.getResourceAsStream(SOURCE_FILE);
|
|
||||||
Assertions.assertNotNull(in);
|
|
||||||
final PublicSuffixList suffixList;
|
final PublicSuffixList suffixList;
|
||||||
try {
|
try (InputStream in = classLoader.getResourceAsStream(SOURCE_FILE)) {
|
||||||
|
Assertions.assertNotNull(in, SOURCE_FILE);
|
||||||
final PublicSuffixListParser parser = PublicSuffixListParser.INSTANCE;
|
final PublicSuffixListParser parser = PublicSuffixListParser.INSTANCE;
|
||||||
suffixList = parser.parse(new InputStreamReader(in, StandardCharsets.UTF_8));
|
suffixList = parser.parse(new InputStreamReader(in, StandardCharsets.UTF_8));
|
||||||
} finally {
|
|
||||||
in.close();
|
|
||||||
}
|
}
|
||||||
final PublicSuffixMatcher matcher = new PublicSuffixMatcher(suffixList.getRules(), suffixList.getExceptions());
|
final PublicSuffixMatcher matcher = new PublicSuffixMatcher(suffixList.getRules(), suffixList.getExceptions());
|
||||||
this.filter = new PublicSuffixDomainFilter(BasicDomainHandler.INSTANCE, matcher);
|
this.filter = new PublicSuffixDomainFilter(BasicDomainHandler.INSTANCE, matcher);
|
||||||
|
|
|
@ -39,17 +39,17 @@ import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
class TestPublicSuffixListParser {
|
class TestPublicSuffixListParser {
|
||||||
|
|
||||||
|
private static final String SUFFIXLIST_TXT = "suffixlist.txt";
|
||||||
|
private static final String SUFFIXLIST2_TXT = "suffixlist2.txt";
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testParse() throws Exception {
|
void testParse() throws Exception {
|
||||||
final ClassLoader classLoader = getClass().getClassLoader();
|
final ClassLoader classLoader = getClass().getClassLoader();
|
||||||
final InputStream in = classLoader.getResourceAsStream("suffixlist.txt");
|
|
||||||
Assertions.assertNotNull(in);
|
|
||||||
final PublicSuffixList suffixList;
|
final PublicSuffixList suffixList;
|
||||||
try {
|
try (InputStream in = classLoader.getResourceAsStream(SUFFIXLIST_TXT)) {
|
||||||
|
Assertions.assertNotNull(in, SUFFIXLIST_TXT);
|
||||||
final PublicSuffixListParser parser = PublicSuffixListParser.INSTANCE;
|
final PublicSuffixListParser parser = PublicSuffixListParser.INSTANCE;
|
||||||
suffixList = parser.parse(new InputStreamReader(in, StandardCharsets.UTF_8));
|
suffixList = parser.parse(new InputStreamReader(in, StandardCharsets.UTF_8));
|
||||||
} finally {
|
|
||||||
in.close();
|
|
||||||
}
|
}
|
||||||
Assertions.assertNotNull(suffixList);
|
Assertions.assertNotNull(suffixList);
|
||||||
Assertions.assertEquals(Arrays.asList("xx", "jp", "ac.jp", "*.tokyo.jp", "no", "h\u00E5.no"), suffixList.getRules());
|
Assertions.assertEquals(Arrays.asList("xx", "jp", "ac.jp", "*.tokyo.jp", "no", "h\u00E5.no"), suffixList.getRules());
|
||||||
|
@ -59,14 +59,11 @@ class TestPublicSuffixListParser {
|
||||||
@Test
|
@Test
|
||||||
void testParseByType() throws Exception {
|
void testParseByType() throws Exception {
|
||||||
final ClassLoader classLoader = getClass().getClassLoader();
|
final ClassLoader classLoader = getClass().getClassLoader();
|
||||||
final InputStream in = classLoader.getResourceAsStream("suffixlist2.txt");
|
|
||||||
Assertions.assertNotNull(in);
|
|
||||||
final List<PublicSuffixList> suffixLists;
|
final List<PublicSuffixList> suffixLists;
|
||||||
try {
|
try (InputStream in = classLoader.getResourceAsStream(SUFFIXLIST2_TXT)) {
|
||||||
|
Assertions.assertNotNull(in, SUFFIXLIST2_TXT);
|
||||||
final PublicSuffixListParser parser = PublicSuffixListParser.INSTANCE;
|
final PublicSuffixListParser parser = PublicSuffixListParser.INSTANCE;
|
||||||
suffixLists = parser.parseByType(new InputStreamReader(in, StandardCharsets.UTF_8));
|
suffixLists = parser.parseByType(new InputStreamReader(in, StandardCharsets.UTF_8));
|
||||||
} finally {
|
|
||||||
in.close();
|
|
||||||
}
|
}
|
||||||
Assertions.assertNotNull(suffixLists);
|
Assertions.assertNotNull(suffixLists);
|
||||||
Assertions.assertEquals(2, suffixLists.size());
|
Assertions.assertEquals(2, suffixLists.size());
|
||||||
|
|
|
@ -48,14 +48,12 @@ class TestPublicSuffixMatcher {
|
||||||
@BeforeEach
|
@BeforeEach
|
||||||
void setUp() throws Exception {
|
void setUp() throws Exception {
|
||||||
final ClassLoader classLoader = getClass().getClassLoader();
|
final ClassLoader classLoader = getClass().getClassLoader();
|
||||||
|
|
||||||
// Create a matcher using a custom crafted public suffix list file
|
// Create a matcher using a custom crafted public suffix list file
|
||||||
final InputStream in = classLoader.getResourceAsStream(SOURCE_FILE);
|
try (InputStream in = classLoader.getResourceAsStream(SOURCE_FILE)) {
|
||||||
Assertions.assertNotNull(in);
|
Assertions.assertNotNull(in, SOURCE_FILE);
|
||||||
final List<PublicSuffixList> lists = PublicSuffixListParser.INSTANCE.parseByType(
|
final List<PublicSuffixList> lists = PublicSuffixListParser.INSTANCE.parseByType(new InputStreamReader(in, StandardCharsets.UTF_8));
|
||||||
new InputStreamReader(in, StandardCharsets.UTF_8));
|
matcher = new PublicSuffixMatcher(lists);
|
||||||
matcher = new PublicSuffixMatcher(lists);
|
}
|
||||||
|
|
||||||
// Create a matcher using the public suffix list file provided by Mozilla
|
// Create a matcher using the public suffix list file provided by Mozilla
|
||||||
// Note: the test requires `mvn generate-resources` to have been called to fetch the Mozilla file into
|
// Note: the test requires `mvn generate-resources` to have been called to fetch the Mozilla file into
|
||||||
// target/classes so that it is on the classpath
|
// target/classes so that it is on the classpath
|
||||||
|
|
Loading…
Reference in New Issue