docs: private void purgeEndpoint(Endpoint endpoint, TestContext context) {
          if (log.isDebugEnabled()) {
              log.debug("Try to purge message endpoint " + endpoint.getName());
          }
  
          int messagesPurged = 0;
          Consumer messageConsumer = endpoint.createConsumer();
          Message message;
          do {
              try {
                  String selector = MessageSelectorBuilder.build(messageSelector, messageSelectorMap, context);
                  if (StringUtils.hasText(selector) && messageConsumer instanceof SelectiveConsumer) {
                      message = (receiveTimeout >= 0) ? ((SelectiveConsumer) messageConsumer).receive(selector, context, receiveTimeout) : ((SelectiveConsumer) messageConsumer).receive(selector, context);
                  } else {
                      message = (receiveTimeout >= 0) ? messageConsumer.receive(context, receiveTimeout) : messageConsumer.receive(context);
                  }
              } catch (ActionTimeoutException e) {
                  if (log.isDebugEnabled()) {
                      log.debug("Stop purging due to timeout - " + e.getMessage());
                  }
                  break;
              }
  
              if (message != null) {
                  log.debug("Removed message from endpoint " + endpoint.getName());
                  messagesPurged++;
  
                  try {
                      Thread.sleep(sleepTime);
                  } catch (InterruptedException e) {
                      log.warn("Interrupted during wait", e);
                  }
              }
          } while (message != null);
  
          if (log.isDebugEnabled()) {
              log.debug("Purged " + messagesPurged + " messages from endpoint");
          }
      }