package test;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import test.junit4.*;
public class JUnit4Test extends BaseTest {
@BeforeMethod(dependsOnGroups = {"initTest"})
public void initJUnitFlag() {
getTest().setJUnit(true);
}
@DataProvider
public static Object[][] dp() {
return new Object[][]{
new Object[]{
new Class<?>[]{JUnit4Sample2.class},
JUnit4Sample2.EXPECTED, JUnit4Sample2.FAILED, JUnit4Sample2.SKIPPED
},
new Object[]{
new Class<?>[]{JUnit4SampleSuite.class},
JUnit4SampleSuite.EXPECTED, JUnit4SampleSuite.FAILED, JUnit4SampleSuite.SKIPPED
},
new Object[]{
new Class<?>[]{JUnit4Child.class},
JUnit4Child.EXPECTED, new String[0], new String[0]
},
new Object[]{
new Class<?>[]{InheritedTest.class, JUnit4Sample1.class},
new String[]{"t1", "t1"}, new String[0], new String[0]
},
new Object[]{
new Class<?>[]{JUnit4ParameterizedTest.class},
JUnit4ParameterizedTest.EXPECTED, JUnit4ParameterizedTest.FAILED, JUnit4ParameterizedTest.SKIPPED
},
new Object[]{
new Class<?>[]{BeforeClassJUnit4Sample.class},
new String[0], new String[0], new String[]{"myTest"}
},
new Object[]{
new Class<?>[]{ClassRuleJUnit4Sample.class},
new String[0], new String[0], new String[]{"myTest"}
}
};
}
@Test(dataProvider = "dp")
public void testTests(Class<?>[] classes, String[] expectedPassedTests, String[] expectedFailedTests, String[] expectedSkippedTests) {
addClasses(classes);
assert getTest().isJUnit();
run();
verifyPassedTests(expectedPassedTests);
verifyFailedTests(expectedFailedTests);
verifySkippedTests(expectedSkippedTests);
}
}