diff --git a/test/eu/simstadt/regionchooser/test/RegionExtractorTests.java b/test/eu/simstadt/regionchooser/test/RegionExtractorTests.java index b73b7204568c8d97e82c0115cea7fd9222296c35..db9d5eddc4a929c247de187882770732b035f5df 100644 --- a/test/eu/simstadt/regionchooser/test/RegionExtractorTests.java +++ b/test/eu/simstadt/regionchooser/test/RegionExtractorTests.java @@ -4,14 +4,22 @@ import static org.junit.Assert.assertTrue; import java.nio.file.Path; import java.nio.file.Paths; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import org.junit.Test; import eu.simstadt.regionchooser.RegionExtractor; public class RegionExtractorTests { - public static int countSubstring(String str, String subStr) { - return (str.length() - str.replace(subStr, "").length()) / subStr.length(); + public static int countRegexMatches(String str, String subStr) { + Pattern pattern = Pattern.compile(subStr); + Matcher matcher = pattern.matcher(str); + int count = 0; + while (matcher.find()) { + count++; + } + return count; } @Test @@ -21,7 +29,7 @@ public void testExtract3BuildingsFromGSK3Model() throws Throwable { Path repo = Paths.get("../TestRepository"); Path citygmlPath = repo.resolve("Gruenbuehl.proj\\20140218_Gruenbuehl_LOD2.gml"); String churchGMLString = RegionExtractor.selectRegionDirectlyFromCityGML(citygmlPath, wktPolygon).toString(); - assertEquals(countSubstring(churchGMLString, "