void hasDiagnosticMessagesTest()

in src/it/java/com/epam/digital/data/platform/langserver/XmlLangServerIT.java [39:67]


  void hasDiagnosticMessagesTest() {
    var initializeRequest = getResourceContent("xml/xml-initialize-request.json");
    var didOpenRequest = getResourceContent("xml/xml-did-open-request.json");
    var resourceContent = getResourceContent("xml/xml-request-incorrect.json");

    var webSocketClient = new StandardWebSocketClient();
    List<String> errors = new ArrayList<>();

    var webSocketSessionListenableFuture = webSocketClient.doHandshake(
        new TextWebSocketHandler() {
          @Override
          protected void handleTextMessage(@NonNull WebSocketSession session,
              @NonNull TextMessage message) {
            if (message.getPayload().contains("Content is not allowed in prolog.")) {
              errors.add("has error");
            }
          }
        },
        new WebSocketHttpHeaders(),
        URI.create("ws://localhost:" + port + "/xml"));

    var webSocketSession = webSocketSessionListenableFuture.get();

    sendMessage(initializeRequest, webSocketSession);
    sendMessage(didOpenRequest, webSocketSession);
    sendMessage(resourceContent, webSocketSession);

    Assertions.assertThat(errors).isNotEmpty();
  }