package test.methodselectors; | |
import java.util.List; | |
import org.testng.Assert; | |
import org.testng.ITestResult; | |
import org.testng.TestListenerAdapter; | |
import org.testng.TestNG; | |
import org.testng.annotations.Test; | |
public class PriorityTest { | |
private void runTest(int priority, String[] passedTests) { | |
TestNG tng = new TestNG(); | |
tng.setVerbose(0); | |
tng.setTestClasses(new Class[] { PrioritySampleTest.class }); | |
tng.addMethodSelector("test.methodselectors.NoTestSelector", priority); | |
TestListenerAdapter tla = new TestListenerAdapter(); | |
tng.addListener(tla); | |
tng.run(); | |
List<ITestResult> passed = tla.getPassedTests(); | |
Assert.assertEquals(passedTests.length, passed.size()); | |
if (passedTests.length == 1) { | |
String passed0 = passed.get(0).getName(); | |
Assert.assertEquals(passed0, passedTests[0]); | |
} | |
if (passedTests.length == 2) { | |
String passed0 = passed.get(0).getName(); | |
String passed1 = passed.get(1).getName(); | |
Assert.assertTrue(passed0.equals(passedTests[0]) | |
|| passed0.equals(passedTests[1])); | |
Assert.assertTrue(passed1.equals(passedTests[0]) | |
|| passed1.equals(passedTests[1])); | |
} | |
} | |
// @Test | |
public void negativePriority() { | |
runTest(-5, new String[] {}); | |
} | |
@Test | |
public void lessThanTenPriority() { | |
runTest(5, new String[] { "alwaysRun" }); | |
} | |
// @Test | |
public void greaterThanTenPriority() { | |
runTest(15, new String[] { "alwaysRun", "neverRun" }); | |
} | |
} |