private void handleHookStep(final TestStepFinished event) { final String uuid = getHookStepUuid(event.testStep); Consumer<StepResult> stepResult = result -> result.setStatus(translateTestCaseStatus(event.result)); if (!Status.PASSED.equals(translateTestCaseStatus(event.result))) { final StatusDetails statusDetails = getStatusDetails(event.result.getError()).get(); final HookTestStep hookTestStep = (HookTestStep) event.testStep; if (hookTestStep.getHookType() == HookType.Before) { final TagParser tagParser = new TagParser(currentFeature, currentTestCase); statusDetails .setMessage("Before is failed: " + event.result.getError().getLocalizedMessage()) .setFlaky(tagParser.isFlaky()) .setMuted(tagParser.isMuted()) .setKnown(tagParser.isKnown()); lifecycle.updateTestCase(getTestCaseUuid(currentTestCase), scenarioResult -> scenarioResult.setStatus(Status.SKIPPED) .setStatusDetails(statusDetails)); } stepResult = result -> result .setStatus(translateTestCaseStatus(event.result)) .setStatusDetails(statusDetails); } lifecycle.updateStep(uuid, stepResult); lifecycle.stopStep(uuid); }
private void handleHookStep(final TestStepFinished event) { final String uuid = getHookStepUuid(event.testStep); Consumer<StepResult> stepResult = result -> result.setStatus(translateTestCaseStatus(event.result)); if (!Status.PASSED.equals(translateTestCaseStatus(event.result))) { final StatusDetails statusDetails = getStatusDetails(event.result.getError()).get(); if (event.testStep.getHookType() == HookType.Before) { final TagParser tagParser = new TagParser(currentFeature, currentTestCase); statusDetails .setMessage("Before is failed: " + event.result.getError().getLocalizedMessage()) .setFlaky(tagParser.isFlaky()) .setMuted(tagParser.isMuted()) .setKnown(tagParser.isKnown()); lifecycle.updateTestCase(getTestCaseUuid(currentTestCase), scenarioResult -> scenarioResult.setStatus(Status.SKIPPED) .setStatusDetails(statusDetails)); } stepResult = result -> result .setStatus(translateTestCaseStatus(event.result)) .setStatusDetails(statusDetails); } lifecycle.updateStep(uuid, stepResult); lifecycle.stopStep(uuid); }