package org.testng;
If a test class implements this interface, its run() method will be invoked instead of each @Test
method found. The invocation of the test method will then be performed upon invocation of the
callBack() method of the IHookCallBack parameter.
This is useful to test classes that require JAAS authentication, which can be implemented as
follows:
public void run(final IHookCallBack icb, ITestResult testResult) {
// Preferably initialized in a @Configuration method
mySubject = authenticateWithJAAs();
Subject.doAs(mySubject, new PrivilegedExceptionAction() {
public Object run() {
icb.callback(testResult);
}
};
}
Author: cbeust Jan 28, 2006
/**
* If a test class implements this interface, its run() method will be invoked instead of each @Test
* method found. The invocation of the test method will then be performed upon invocation of the
* callBack() method of the IHookCallBack parameter.
*
* <p>This is useful to test classes that require JAAS authentication, which can be implemented as
* follows:
*
* <pre>
* public void run(final IHookCallBack icb, ITestResult testResult) {
* // Preferably initialized in a @Configuration method
* mySubject = authenticateWithJAAs();
*
* Subject.doAs(mySubject, new PrivilegedExceptionAction() {
* public Object run() {
* icb.callback(testResult);
* }
* };
* }
* </pre>
*
* @author cbeust Jan 28, 2006
*/
public interface IHookable extends ITestNGListener {
void run(IHookCallBack callBack, ITestResult testResult);
}