| package org.junit.tests.experimental.max; |
| |
| import static org.junit.Assert.assertEquals; |
| |
| import java.io.File; |
| import java.util.List; |
| |
| import junit.framework.TestCase; |
| import org.junit.After; |
| import org.junit.Before; |
| import org.junit.Test; |
| import org.junit.experimental.max.MaxCore; |
| import org.junit.runner.Description; |
| import org.junit.runner.Request; |
| |
| public class JUnit38SortingTest { |
| private MaxCore fMax; |
| private File fMaxFile; |
| |
| @Before |
| public void createMax() { |
| fMaxFile = new File("MaxCore.ser"); |
| if (fMaxFile.exists()) { |
| fMaxFile.delete(); |
| } |
| fMax = MaxCore.storedLocally(fMaxFile); |
| } |
| |
| @After |
| public void forgetMax() { |
| fMaxFile.delete(); |
| } |
| |
| public static class JUnit4Test { |
| @Test |
| public void pass() { |
| } |
| } |
| |
| public static class JUnit38Test extends TestCase { |
| public void testFails() { |
| fail(); |
| } |
| |
| public void testSucceeds() { |
| } |
| |
| public void testSucceedsToo() { |
| } |
| } |
| |
| @Test |
| public void preferRecentlyFailed38Test() { |
| Request request = Request.classes(JUnit4Test.class, JUnit38Test.class); |
| fMax.run(request); |
| List<Description> tests = fMax.sortedLeavesForTest(request); |
| Description dontSucceed = Description.createTestDescription( |
| JUnit38Test.class, "testFails"); |
| assertEquals(dontSucceed, tests.get(0)); |
| } |
| |
| } |