001 package org.junit.runner.manipulation; 002 003 /** 004 * Runners that allow filtering should implement this interface. Implement {@link #filter(Filter)} 005 * to remove tests that don't pass the filter. 006 * 007 * @since 4.0 008 */ 009 public interface Filterable { 010 011 /** 012 * Remove tests that don't pass the parameter <code>filter</code>. 013 * 014 * @param filter the {@link Filter} to apply 015 * @throws NoTestsRemainException if all tests are filtered out 016 */ 017 void filter(Filter filter) throws NoTestsRemainException; 018 019 }