final ExecutionLogWithContext result2LogContext = log2.getLogs().get(0);
assertNotNull(result2LogContext);
assertEquals(fn2.getFunctionDefinition().getShortName(), result2LogContext.getFunctionName());
assertEquals(resultSpec.getSecond().getTargetSpecification(), result2LogContext.getTargetSpecification());
final ExecutionLog result2Log = result2LogContext.getExecutionLog();
assertEquals(1, result2Log.getEvents().size());
final LogEvent result2Event1 = result2Log.getEvents().get(0);
assertEquals(LogLevel.WARN, result2Event1.getLevel());
assertEquals("Warning during execution", result2Event1.getMessage());
assertNull(result2Log.getExceptionClass());
assertNull(result2Log.getExceptionMessage());
assertNull(result2Log.getExceptionStackTrace());
final ExecutionLogWithContext result1LogContext = log2.getLogs().get(1);
assertNotNull(result1LogContext);
assertEquals(fn1.getFunctionDefinition().getShortName(), result1LogContext.getFunctionName());
assertEquals(resultSpec.getSecond().getTargetSpecification(), result1LogContext.getTargetSpecification());
final ExecutionLog result1Log = result1LogContext.getExecutionLog();
assertEquals(2, result1Log.getEvents().size());
final LogEvent result1Event1 = result1Log.getEvents().get(0);
assertEquals(LogLevel.WARN, result1Event1.getLevel());
assertEquals("Warning during execution", result1Event1.getMessage());
final LogEvent result1Event2 = result1Log.getEvents().get(1);
assertEquals(LogLevel.ERROR, result1Event2.getLevel());
assertEquals("Error during execution", result1Event2.getMessage());
assertNull(result1Log.getExceptionClass());
assertNull(result1Log.getExceptionMessage());
assertNull(result1Log.getExceptionStackTrace());
client.setMinimumLogMode(ExecutionLogMode.INDICATORS, ImmutableSet.of(resultSpec));
worker.triggerCycle();
final ViewComputationResultModel result3 = resultListener.getCycleCompleted(TIMEOUT).getFullResult();