### Question:
ResourceFilter implements IFilter { @Override public List<Resource> filter() { return new ArrayList<>(listAllParent()); } ResourceFilter(String suffix, List<Resource> resourceList); Set<Resource> fileFilter(); @Override List<Resource> filter();  }### Answer:
@Test public void filterTest(){ List<Resource> allList = new ArrayList<>(); Resource resource1 = new Resource(3,-1,"b","/b",true); Resource resource2 = new Resource(4,2,"a1.txt","/a/a1.txt",false); Resource resource3 = new Resource(5,3,"b1.txt","/b/b1.txt",false); Resource resource4 = new Resource(6,3,"b2.jar","/b/b2.jar",false); Resource resource5 = new Resource(7,-1,"b2","/b2",true); Resource resource6 = new Resource(8,-1,"b2","/b/b2",true); Resource resource7 = new Resource(9,8,"c2.jar","/b/b2/c2.jar",false); allList.add(resource1); allList.add(resource2); allList.add(resource3); allList.add(resource4); allList.add(resource5); allList.add(resource6); allList.add(resource7); ResourceFilter resourceFilter = new ResourceFilter(".jar",allList); List<Resource> resourceList = resourceFilter.filter(); Assert.assertNotNull(resourceList); resourceList.forEach(t -> logger.info(t.toString())); }