### Question:
ScriptContextImplementation implements InternalScriptContext { public void sleep(long meanTime) throws GrinderException { m_sleeper.sleepNormal(meanTime); } ScriptContextImplementation(
     WorkerIdentity workerIdentity,
     WorkerIdentity firstWorkerIdentity,
     ThreadContextLocator threadContextLocator,
     GrinderProperties properties,
     Logger logger,
     Sleeper sleeper,
     SSLControl sslControl,
     Statistics scriptStatistics,
     TestRegistry testRegistry,
     ThreadStarter threadStarter,
     ThreadStopper threadStopper,
     BarrierGroups barrierGroups,
     BarrierIdentity.Factory barrierIdentityFactory); int getAgentNumber(); String getProcessName(); int getProcessNumber(); int getFirstProcessNumber(); int getThreadNumber(); int getRunNumber(); Logger getLogger(); void sleep(long meanTime); void sleep(long meanTime, long sigma); int startWorkerThread(); int startWorkerThread(Object testRunner); void stopThisWorkerThread(); boolean stopWorkerThread(int threadNumber); GrinderProperties getProperties(); Statistics getStatistics(); SSLControl getSSLControl(); TestRegistry getTestRegistry(); Barrier barrier(String name);  }### Answer:
@Test public void testSleep() throws Exception { final Sleeper sleeper = new SleeperImplementation(new StandardTimeAuthority(), m_logger, 1, 0); final ScriptContextImplementation scriptContext = new ScriptContextImplementation( null, null, null, null, null, sleeper, null, null, null, null, null, null, null); assertTrue( new Time(50, 70) { public void doIt() throws Exception { scriptContext.sleep(50); } }.run()); assertTrue( new Time(40, 70) { public void doIt() throws Exception { scriptContext.sleep(50, 5); } }.run()); }