@Test
public void start() throws Exception {

    Lambda lambda = new Lambda();
    Map inputObj = new HashMap();
    inputObj.put("a",1);
    /**
     * test for scriptExpression == null
     */
    Task task = new Task();
    task.getInputData().put("input", inputObj);
    lambda.execute(workflow, task, executor);
    assertEquals(Task.Status.FAILED, task.getStatus());
    /**
     * test for normal
     */
    task = new Task();
    task.getInputData().put("input", inputObj);
    task.getInputData().put("scriptExpression", "if ($.input.a==1){return 1}else{return 0 } ");
    lambda.execute(workflow, task, executor);
    assertEquals(Task.Status.COMPLETED, task.getStatus());
    assertEquals(task.getOutputData().toString(), "{result=1}");
    /**
     * test for scriptExpression ScriptException
     */
    task = new Task();
    task.getInputData().put("input", inputObj);
    task.getInputData().put("scriptExpression", "if ($.a.size==1){return 1}else{return 0 } ");
    lambda.execute(workflow, task, executor);
    assertEquals(Task.Status.FAILED, task.getStatus());
}