### Question:
StringUtils { public static int countMatches(String theString, String... sep) { return (theString == null) ? 0 : theString.length() - theString.replace(separator(sep), "").length(); }  static String arrayFormat(String format, Object[] items); static Optional<String> cdr(String name, String... sep); static String car(String name, String... sep); static String lastOf(String qualifiedName, String... sep); static String untill(String qualifiedName, String... sep); static String dotToUpperCamelCase(String input); static String dotToDash(String input); static String camelCaseToDash(String input); static boolean isPackageFriendly(String moduleName); static String withoutTypeArgs(String javaTypeString); static String notEmptytrimmed(String param); static Optional<Tuple<String, String>> splitIntoTwo(String mappingString); static int countMatches(String theString, String... sep);  }### Answer:
@Test void testCountMatches() { assertEquals(countMatches("a.b.c"),2); assertEquals(countMatches("a"),0); assertEquals(countMatches(""),0); assertEquals(countMatches(null),0); }