private static void assertJobExecution(JobExecutionInfo actual, JobExecutionInfo expected) {
Assert.assertEquals(actual.getJobName(), expected.getJobName());
Assert.assertEquals(actual.getJobId(), expected.getJobId());
if (expected.hasDuration()) {
Assert.assertEquals(actual.getDuration(), expected.getDuration());
} else {
Assert.assertEquals(actual.getDuration().longValue(), -1L);
}
Assert.assertEquals(actual.getState(), expected.getState());
Assert.assertEquals(actual.getLaunchedTasks(), expected.getLaunchedTasks());
Assert.assertEquals(actual.getCompletedTasks(), expected.getCompletedTasks());
Assert.assertEquals(actual.getMetrics(), expected.getMetrics());
for (int i = 0; i < actual.getMetrics().size(); i++) {
assertMetric(actual.getMetrics().get(i), expected.getMetrics().get(i));
}
Assert.assertEquals(actual.getJobProperties(), expected.getJobProperties());
Assert.assertEquals(actual.getTaskExecutions().size(), expected.getTaskExecutions().size());
for (int i = 0; i < actual.getTaskExecutions().size(); i++) {
assertTaskExecution(actual.getTaskExecutions().get(i), expected.getTaskExecutions().get(i));
}
}