You can prevent
System.exit()
by setting the appropriate thing in the SecurityManager. Try something like this in your JUnit test:public void setUp() {
System.setSecurityManager(new CatchSystemExit());
}
public void tearDown() {
System.setSecurityManager(null);
}
private static class CatchSystemExit extends SecurityManager {
/** @see SecurityManager */
public void checkExit(int status) {
m_exitCode = status;
throw new SecurityException("System.exit() attempt caught");
}
/** @see SecurityManager */
public void checkPermission(Permission perm, Object context) {
}
/** @see SecurityManager */
public void checkPermission(Permission perm) {
}
}
No comments:
Post a Comment