Search in sources :

Example 46 with Script

use of org.ow2.proactive.scripting.Script in project scheduling by ow2-proactive.

the class CheckEligibleTaskDescriptorScriptTest method testOnlyPostScriptContainsAPIBinding.

@Test
public void testOnlyPostScriptContainsAPIBinding() throws InvalidScriptException {
    Script s = scriptWithApiBindingClient();
    Script s2 = scriptWithoutApiBinding();
    FlowScript fs = flowScriptWithoutApiBinding();
    Mockito.when(it.getPreScript()).thenReturn(s2);
    Mockito.when(it.getPostScript()).thenReturn(s);
    Mockito.when(it.getCleaningScript()).thenReturn(s2);
    Mockito.when(sec.getScript()).thenReturn(s2);
    Mockito.when(fe.getEnvScript()).thenReturn(s2);
    Mockito.when(it.getFlowScript()).thenReturn(fs);
    assertTrue(new CheckEligibleTaskDescriptorScript().isTaskContainsAPIBinding(etd));
}
Also used : SimpleScript(org.ow2.proactive.scripting.SimpleScript) FlowScript(org.ow2.proactive.scheduler.common.task.flow.FlowScript) Script(org.ow2.proactive.scripting.Script) FlowScript(org.ow2.proactive.scheduler.common.task.flow.FlowScript) Test(org.junit.Test)

Example 47 with Script

use of org.ow2.proactive.scripting.Script in project scheduling by ow2-proactive.

the class CheckEligibleTaskDescriptorScriptTest method testOnlyPreScriptContainsAPIBinding.

@Test
public void testOnlyPreScriptContainsAPIBinding() throws InvalidScriptException {
    Script s = scriptWithApiBindingUser();
    Script s2 = scriptWithoutApiBinding();
    FlowScript fs = flowScriptWithoutApiBinding();
    Mockito.when(it.getPreScript()).thenReturn(s);
    Mockito.when(it.getPostScript()).thenReturn(s2);
    Mockito.when(it.getCleaningScript()).thenReturn(s2);
    Mockito.when(sec.getScript()).thenReturn(s2);
    Mockito.when(fe.getEnvScript()).thenReturn(s2);
    Mockito.when(it.getFlowScript()).thenReturn(fs);
    assertTrue(new CheckEligibleTaskDescriptorScript().isTaskContainsAPIBinding(etd));
}
Also used : SimpleScript(org.ow2.proactive.scripting.SimpleScript) FlowScript(org.ow2.proactive.scheduler.common.task.flow.FlowScript) Script(org.ow2.proactive.scripting.Script) FlowScript(org.ow2.proactive.scheduler.common.task.flow.FlowScript) Test(org.junit.Test)

Example 48 with Script

use of org.ow2.proactive.scripting.Script in project scheduling by ow2-proactive.

the class TagTest method execute.

private void execute(InternalTask task) {
    task.setExecuterInformation(executerInformationMock);
    job.startTask(task);
    FlowScript script = task.getFlowScript();
    FlowAction action = null;
    if (script != null) {
        action = task.getFlowScript().execute().getResult();
    }
    job.terminateTask(false, task.getId(), schedulerStateUpdateMock, action, resultMock);
    System.out.println("executed " + task.getName() + " -> " + getTaskNameList(true));
}
Also used : FlowAction(org.ow2.proactive.scheduler.common.task.flow.FlowAction) FlowScript(org.ow2.proactive.scheduler.common.task.flow.FlowScript)

Example 49 with Script

use of org.ow2.proactive.scripting.Script in project scheduling by ow2-proactive.

the class TestJobSchedulerHome method pahomeScriptTask.

public void pahomeScriptTask() throws Throwable {
    log("Test ProActive Home Script Task...");
    String tname = "pahomeScriptTask";
    TaskFlowJob job = new TaskFlowJob();
    job.setName(this.getClass().getSimpleName() + "_" + tname);
    ScriptTask task1 = new ScriptTask();
    task1.setName(tname);
    Script pahomeScript = new SimpleScript(TestJobSchedulerHome.class.getResource("/functionaltests/scripts/schedulerHome.js"), new String[] { schedulerHomePath });
    ;
    TaskScript ts = new TaskScript(pahomeScript);
    task1.setScript(ts);
    job.addTask(task1);
    submitAndCheckJob(job, tname, false);
}
Also used : SimpleScript(org.ow2.proactive.scripting.SimpleScript) TaskScript(org.ow2.proactive.scripting.TaskScript) Script(org.ow2.proactive.scripting.Script) TaskScript(org.ow2.proactive.scripting.TaskScript) SimpleScript(org.ow2.proactive.scripting.SimpleScript)

Example 50 with Script

use of org.ow2.proactive.scripting.Script in project scheduling by ow2-proactive.

the class TestJobWalltime method walltimeScriptTask.

public JobId walltimeScriptTask() throws Throwable {
    log("Test WallTime Script Task...");
    String tname = "walltimeScriptTask";
    // pre script interruption
    TaskFlowJob job = new TaskFlowJob();
    job.setName(this.getClass().getSimpleName() + "_" + tname);
    ScriptTask task1 = new ScriptTask();
    task1.setName(tname);
    task1.setWallTime(5000);
    task1.setScript(new TaskScript(new SimpleScript("while(true){java.lang.Thread.sleep(500);}", "javascript")));
    job.addTask(task1);
    return submitJob(job);
}
Also used : TaskScript(org.ow2.proactive.scripting.TaskScript) SimpleScript(org.ow2.proactive.scripting.SimpleScript)

Aggregations

Test (org.junit.Test)38 SelectionScript (org.ow2.proactive.scripting.SelectionScript)32 File (java.io.File)31 SimpleScript (org.ow2.proactive.scripting.SimpleScript)28 TaskFlowJob (org.ow2.proactive.scheduler.common.job.TaskFlowJob)25 ArrayList (java.util.ArrayList)16 JavaTask (org.ow2.proactive.scheduler.common.task.JavaTask)15 Script (org.ow2.proactive.scripting.Script)15 ScriptResult (org.ow2.proactive.scripting.ScriptResult)15 FlowScript (org.ow2.proactive.scheduler.common.task.flow.FlowScript)13 HashMap (java.util.HashMap)12 RMNode (org.ow2.proactive.resourcemanager.rmnode.RMNode)11 IOException (java.io.IOException)10 JobId (org.ow2.proactive.scheduler.common.job.JobId)10 NodeSet (org.ow2.proactive.utils.NodeSet)10 RMFunctionalTest (functionaltests.utils.RMFunctionalTest)9 ResourceManager (org.ow2.proactive.resourcemanager.frontend.ResourceManager)9 Job (org.ow2.proactive.scheduler.common.job.Job)8 ForkEnvironment (org.ow2.proactive.scheduler.common.task.ForkEnvironment)8 Serializable (java.io.Serializable)7