/*
 * Copyright (c) 2007 Mockito contributors
 * This program is made available under the terms of the MIT License.
 */
package org.mockito.runners;

import org.junit.internal.runners.InitializationError;
import org.junit.runner.Description;
import org.junit.runner.Runner;
import org.junit.runner.notification.RunNotifier;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.mockito.internal.runners.JUnit44RunnerImpl;
import org.mockito.internal.runners.RunnerImpl;


/**
 * <b>Deprecated: Simply use {@link MockitoJUnitRunner}</b>
 * <p>
 * Compatible only with <b>JUnit 4.4</b>, this runner adds following behavior:
 * <ul>
 *   <li>
 *      Initializes mocks annotated with {@link Mock},
 *      so that explicit usage of {@link MockitoAnnotations#initMocks(Object)} is not necessary. 
 *      Mocks are initialized before each test method.
 *   <li>
 *      validates framework usage after each test method. See javadoc for {@link Mockito#validateMockitoUsage()}.
 * </ul>
 * 
 * Runner is completely optional - there are other ways you can get &#064;Mock working, for example by writing a base class.
 * Explicitly validating framework usage is also optional because it is triggered automatically by Mockito every time you use the framework.
 * See javadoc for {@link Mockito#validateMockitoUsage()}.
 * <p>
 * Read more about &#064;Mock annotation in javadoc for {@link MockitoAnnotations}
 * <p>
 * Example:
 * <pre>
 * &#064;RunWith(MockitoJUnit44Runner.class)
 * public class ExampleTest {
 * 
 *     &#064;Mock
 *     private List list;
 * 
 *     &#064;Test
 *     public void shouldDoSomething() {
 *         list.add(100);
 *     }
 * }
 * <p>
 * 
 * </pre>
 */
@SuppressWarnings("deprecation")
@Deprecated
public class MockitoJUnit44Runner extends Runner {

    private RunnerImpl runner;

    public MockitoJUnit44Runner(Class<?> klass) throws InitializationError {
        this.runner = new JUnit44RunnerImpl(klass);
    }

    @Override
    public Description getDescription() {
        return runner.getDescription();
    }

    @Override
    public void run(RunNotifier notifier) {
        runner.run(notifier);
    }
}
@@ -1812,48 +1812,28 @@
 nds 
-Runner %7B%0A%0A    private RunnerImpl runner;
+MockitoJUnitRunner %7B
 %0A%0A  
@@ -1882,284 +1882,29 @@
 ss) 
-throws InitializationError %7B%0A        this.runner = new JUnit44RunnerImpl(klass);%0A    %7D%0A%0A    @Override%0A    public Description getDescription() %7B%0A        return runner.getDescription();%0A    %7D%0A%0A    @Override%0A    public void run(RunNotifier notifier) %7B%0A        runner.run(notifier
+%7B%0A        super(klass
 );%0A 

Simplified it