    001    package org.junit.runners.parameterized;
    002
    003    import org.junit.runner.Runner;
    004    import org.junit.runners.model.InitializationError;
    005
    006    /**
    007     * A {@code ParametersRunnerFactory} creates a runner for a single
    008     * {@link TestWithParameters}.
    009     *
    010     * @since 4.12
    011     */
    012    public interface ParametersRunnerFactory {
    013        /**
    014         * Returns a runner for the specified {@link TestWithParameters}.
    015         *
    016         * @throws InitializationError
    017         *             if the runner could not be created.
    018         */
    019        Runner createRunnerForTestWithParameters(TestWithParameters test)
    020                throws InitializationError;
    021    }