outcome.setTitle(NameConverter.humanize(from.getName()));
outcome.setDuration(timeAsLong(from.getTime()));
if (from.getError().isPresent()) {
TestException failure = from.getError().get();
outcome.determineTestFailureCause(failure.asException());
} else if (from.getFailure().isPresent()) {
TestException failure = from.getFailure().get();
outcome.determineTestFailureCause(failure.asAssertionFailure());
} else if (from.getSkipped().isPresent()) {
//although it is logged by junit as 'skipped', Thucydides