/*
* Copyright (C) 2006-2016 DLR, Germany
*
* All rights reserved
*
* http://www.rcenvironment.de/
*/
package de.rcenvironment.components.script.execution.python;
import java.io.File;
import java.io.IOException;
import java.util.LinkedList;
import javax.script.ScriptEngine;
import org.easymock.EasyMock;
import org.junit.Before;
import de.rcenvironment.components.script.execution.python.internal.PythonScriptExecutor;
import de.rcenvironment.components.script.execution.testutils.ScriptExecutorTest;
import de.rcenvironment.core.component.testutils.ComponentContextMock;
import de.rcenvironment.core.scripting.python.PythonScriptEngine;
import de.rcenvironment.core.utils.executor.LocalApacheCommandLineExecutor;
import de.rcenvironment.core.utils.scripting.ScriptLanguage;
/**
*
* @author Sascha Zur
*/
public class PythonScriptExecutorTest extends ScriptExecutorTest {
/**
* Common setup.
*
* @throws IOException e
*/
@Before
public void setUp() throws IOException {
context = new ComponentContextMock();
executor = new PythonScriptExecutor();
}
@Override
protected ScriptLanguage getScriptLanguage() {
return ScriptLanguage.Python;
}
@Override
protected void testPrepareHook() {
}
@Override
protected ScriptEngine getScriptingEngine() {
PythonScriptEngine pythonScriptEngine = EasyMock.createNiceMock(PythonScriptEngine.class);
EasyMock.expect(pythonScriptEngine.getCloseOutputChannelsList()).andReturn(new LinkedList<String>());
LocalApacheCommandLineExecutor executor = EasyMock.createNiceMock(LocalApacheCommandLineExecutor.class);
EasyMock.expect(executor.getWorkDir()).andReturn(new File("")).anyTimes();
EasyMock.replay(executor);
EasyMock.expect(pythonScriptEngine.getExecutor()).andReturn(executor).anyTimes();
return pythonScriptEngine;
}
}