| 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: |
| * |
| * <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 { |
| public void run(IHookCallBack callBack, ITestResult testResult); |
| } |