001package org.junit.runners.model;
002
003/**
004 * Represents a strategy for scheduling when individual test methods
005 * should be run (in serial or parallel)
006 *
007 * WARNING: still experimental, may go away.
008 *
009 * @since 4.7
010 */
011public interface RunnerScheduler {
012    /**
013     * Schedule a child statement to run
014     */
015    void schedule(Runnable childStatement);
016
017    /**
018     * Override to implement any behavior that must occur
019     * after all children have been scheduled (for example,
020     * waiting for them all to finish)
021     */
022    void finished();
023}