/** * Set the JVM in headless mode */ public static void setHeadless(){ if(isDefaultHeadless){ //already headless: nothing to do return; } setHeadless(true); }
@Test public void testWhenHeadless(){ Assume.assumeTrue(GraphicsEnvironment.isHeadless()); GuiSupport.setHeadless(); //should do nothing Assert.assertTrue(GraphicsEnvironment.isHeadless()); GuiSupport.restoreHeadlessMode(); //should do nothing Assert.assertTrue(GraphicsEnvironment.isHeadless()); }
@After public void doneWithTestCase(){ threadStopper.killAndJoinClientThreads(); org.evosuite.runtime.jvm.ShutdownHookHandler.getInstance().safeExecuteAddedHooks(); org.evosuite.runtime.classhandling.JDKClassResetter.reset(); org.evosuite.runtime.sandbox.Sandbox.doneWithExecutingSUTCode(); org.evosuite.runtime.agent.InstrumentingAgent.deactivate(); org.evosuite.runtime.GuiSupport.restoreHeadlessMode(); }
@BeforeClass public static void initEvoSuiteFramework() { org.evosuite.runtime.RuntimeSettings.className = "com.examples.with.different.packagename.Euclidean"; org.evosuite.runtime.GuiSupport.initialize(); org.evosuite.runtime.RuntimeSettings.maxNumberOfThreads = 100; org.evosuite.runtime.RuntimeSettings.maxNumberOfIterationsPerLoop = 10000; org.evosuite.runtime.RuntimeSettings.mockSystemIn = true; org.evosuite.runtime.RuntimeSettings.sandboxMode = org.evosuite.runtime.sandbox.Sandbox.SandboxMode.RECOMMENDED; org.evosuite.runtime.sandbox.Sandbox.initializeSecurityManagerForSUT(); org.evosuite.runtime.classhandling.JDKClassResetter.init(); initializeClasses(); org.evosuite.runtime.Runtime.getInstance().resetRuntime(); }
@Test public void testWhenNotHeadless(){ Assume.assumeTrue(! GraphicsEnvironment.isHeadless()); GuiSupport.setHeadless(); Assert.assertTrue(GraphicsEnvironment.isHeadless()); GuiSupport.restoreHeadlessMode(); //should restore headless Assert.assertTrue(! GraphicsEnvironment.isHeadless()); } }
/** * Restore the original headless setting of when the JVM was started. * This is necessary for when EvoSuite tests (which are in headless mode) are * run together with manual tests that are not headless. */ public static void restoreHeadlessMode(){ if(GraphicsEnvironment.isHeadless() && !isDefaultHeadless){ setHeadless(false); } }
@Before public void initTestCase(){ threadStopper.storeCurrentThreads(); threadStopper.startRecordingTime(); org.evosuite.runtime.jvm.ShutdownHookHandler.getInstance().initHandler(); org.evosuite.runtime.sandbox.Sandbox.goingToExecuteSUTCode(); org.evosuite.runtime.GuiSupport.setHeadless(); org.evosuite.runtime.Runtime.getInstance().resetRuntime(); org.evosuite.runtime.agent.InstrumentingAgent.activate(); }