### Question:
JythonScriptEngineService implements ScriptEngineService { @Override public ScriptEngine createScriptEngine(ScriptLocation script) throws EngineException { if (m_pyFileMatcher.accept(script.getFile())) { return new JythonScriptEngine(script); } return null; } JythonScriptEngineService(GrinderProperties properties,
                                   DCRContext dcrContext,
                                   ScriptLocation scriptLocation);  JythonScriptEngineService(); @Override List<Instrumenter> createInstrumenters(); @Override ScriptEngine createScriptEngine(ScriptLocation script);  }### Answer:
@Test public void testInitialisationWithCollocatedGrinderAndJythonJars() throws Exception { System.clearProperty("python.cachedir"); final String originalClasspath = System.getProperty("java.class.path"); final File grinderJar = new File(getDirectory(), "grinder.jar"); grinderJar.createNewFile(); final File jythonJar = new File(getDirectory(), "jython.jar"); jythonJar.createNewFile(); System.setProperty("java.class.path", grinderJar.getAbsolutePath() + File.pathSeparator + jythonJar.getAbsolutePath()); try { m_jythonScriptEngineService.createScriptEngine(m_pyScript); assertNotNull(System.getProperty("python.cachedir")); System.clearProperty("python.cachedir"); } finally { System.setProperty("java.class.path", originalClasspath); } }