title: Allure: How To Make Parent Steps failed if subStep is failed?
body: <p>I have allure listener which reports all selenide asserts but in case of fail only sub step is marked as failed. and It is unclear from report</p>
  
  <p>Listener: </p>
  
  <pre><code>@Override
  public void beforeEvent(final LogEvent event) {
      lifecycle.getCurrentTestCaseOrStep().ifPresent(parentUuid -&gt; {
          final String uuid = UUID.randomUUID().toString();
          lifecycle.startStep(parentUuid, uuid, new StepResult().setName(event.toString()));
      });
  }
  
  @Override
  public void afterEvent(final LogEvent event) {
      lifecycle.getCurrentTestCaseOrStep().ifPresent(parentUuid -&gt; {
          switch (event.getStatus()) {
              case PASS:
                  lifecycle.updateStep(step -&gt; step.setStatus(Status.PASSED));
                  break;
              case FAIL:
                  if (saveScreenshots) {
                      getScreenshotBytes()
                              .ifPresent(bytes -&gt; lifecycle.addAttachment("Screenshot", "image/png", "png", bytes));
                  }
                  if (savePageHtml) {
                      getPageSourceBytes()
                              .ifPresent(bytes -&gt; lifecycle.addAttachment("Page source", "text/html", "html", bytes));
                  }
                  if (!logTypesToSave.isEmpty()) {
                      logTypesToSave
                          .forEach((logType, level) -&gt; {
                              final byte[] content = getBrowserLogs(logType, level).getBytes(UTF_8);
                              lifecycle.addAttachment("Logs from: " + logType, "application/json", ".txt", content);
                              });
                  }
                  lifecycle.updateStep(stepResult -&gt; {
                      stepResult.setStatus(getStatus(event.getError()).orElse(Status.BROKEN));
                      stepResult.setStatusDetails(getStatusDetails(event.getError()).orElse(new StatusDetails()));
                  });
                  break;
              default:
                  LOGGER.warn("Step finished with unsupported status {}", event.getStatus());
                  break;
          }
          lifecycle.stopStep();
      });
  }
  </code></pre>
  
  <p>}</p>
  
  <p>Screenshot of report:</p>
  
  <p><a href="https://i.stack.imgur.com/Hy8cc.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Hy8cc.png" alt="enter image description here"></a>
  As you can see parent step is marked as passed.</p>