### Question:
MimeTypeFilter { @NonNull public static String[] matchesMany( @Nullable String[] mimeTypes, @NonNull String filter) { if (mimeTypes == null) { return new String[] {}; } final ArrayList<String> list = new ArrayList<>(); final String[] filterParts = filter.split("/"); for (String mimeType : mimeTypes) { final String[] mimeTypeParts = mimeType.split("/"); if (mimeTypeAgainstFilter(mimeTypeParts, filterParts)) { list.add(mimeType); } } return list.toArray(new String[list.size()]); } private  MimeTypeFilter(); static boolean matches(@Nullable String mimeType, @NonNull String filter); @Nullable static String matches(
            @Nullable String mimeType, @NonNull String[] filters); @Nullable static String matches(
            @Nullable String[] mimeTypes, @NonNull String filter); @NonNull static String[] matchesMany(
            @Nullable String[] mimeTypes, @NonNull String filter);  }### Answer:
@Test public void matchesManyMimeTypes() throws Exception { assertArrayEquals(new String[] {"image/jpeg", "image/png"}, MimeTypeFilter.matchesMany(new String[] {"image/jpeg", "image/png"}, "imageJpEg")); assertArrayEquals(new String[] {}, MimeTypeFilter.matchesMany(new String[] {"*/", "image/"}, "**")); }