- update extension to quarkus 1.5.2
- Set graal native image dependency as provided
diff --git a/extensions/quarkus/pom.xml b/extensions/quarkus/pom.xml
index 0144304..fdb82bd 100644
--- a/extensions/quarkus/pom.xml
+++ b/extensions/quarkus/pom.xml
@@ -43,7 +43,7 @@
</modules>
<properties>
- <quarkus.version>1.5.1.Final</quarkus.version>
+ <quarkus.version>1.5.2.Final</quarkus.version>
</properties>
<build>
diff --git a/extensions/quarkus/runtime/pom.xml b/extensions/quarkus/runtime/pom.xml
index 1b922c6..2883382 100644
--- a/extensions/quarkus/runtime/pom.xml
+++ b/extensions/quarkus/runtime/pom.xml
@@ -127,7 +127,8 @@
<dependency>
<groupId>org.graalvm.nativeimage</groupId>
<artifactId>svm</artifactId>
- <version>20.0.0</version>
+ <version>20.1.0</version>
+ <scope>provided</scope>
</dependency>
</dependencies>
diff --git a/extensions/quarkus/showcase/pom.xml b/extensions/quarkus/showcase/pom.xml
index 6c8dc96..d3c3a61 100644
--- a/extensions/quarkus/showcase/pom.xml
+++ b/extensions/quarkus/showcase/pom.xml
@@ -25,7 +25,7 @@
<name>Apache MyFaces Core 2.3-next - Extensions - Quarkus - Showcase</name>
<properties>
- <quarkus.version>1.5.1.Final</quarkus.version>
+ <quarkus.version>1.5.2.Final</quarkus.version>
<myfaces.version>2.3-next-SNAPSHOT</myfaces.version>
<failsafe.version>2.22.0</failsafe.version>
<surefire.version>2.22.0</surefire.version>
@@ -86,7 +86,7 @@
<dependency>
<groupId>net.sourceforge.htmlunit</groupId>
<artifactId>htmlunit</artifactId>
- <version>2.35.0</version>
+ <version>2.41.0</version>
<scope>test</scope>
</dependency>
<dependency>
diff --git a/extensions/quarkus/showcase/src/test/java/org/apache/myfaces/core/extensions/quarkus/showcase/QuarkusMyFacesShowcaseTest.java b/extensions/quarkus/showcase/src/test/java/org/apache/myfaces/core/extensions/quarkus/showcase/QuarkusMyFacesShowcaseTest.java
index 0f595bc..c9ac66e 100644
--- a/extensions/quarkus/showcase/src/test/java/org/apache/myfaces/core/extensions/quarkus/showcase/QuarkusMyFacesShowcaseTest.java
+++ b/extensions/quarkus/showcase/src/test/java/org/apache/myfaces/core/extensions/quarkus/showcase/QuarkusMyFacesShowcaseTest.java
@@ -21,12 +21,18 @@
import com.gargoylesoftware.htmlunit.BrowserVersion;
import com.gargoylesoftware.htmlunit.NicelyResynchronizingAjaxController;
import com.gargoylesoftware.htmlunit.WebClient;
+import com.gargoylesoftware.htmlunit.html.DomElement;
import com.gargoylesoftware.htmlunit.html.HtmlDivision;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
+import com.gargoylesoftware.htmlunit.html.HtmlSubmitInput;
import io.quarkus.test.common.http.TestHTTPResource;
import io.quarkus.test.junit.QuarkusTest;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
+import java.io.IOException;
import java.net.URL;
import static org.assertj.core.api.AssertionsForInterfaceTypes.assertThat;
@@ -37,25 +43,48 @@
@TestHTTPResource
URL url;
- @Test
- public void shouldOpenIndexPage() throws Exception {
- try (final WebClient webClient = new WebClient(BrowserVersion.CHROME)) {
- webClient.getOptions().setJavaScriptEnabled(true);
- webClient.getOptions().setCssEnabled(false);
- webClient.getOptions().setUseInsecureSSL(true);
- webClient.getOptions().setThrowExceptionOnFailingStatusCode(false);
- webClient.getCookieManager().setCookiesEnabled(true);
- webClient.setAjaxController(new NicelyResynchronizingAjaxController());
- webClient.getCookieManager().setCookiesEnabled(true);
+ private static WebClient webClient;
- final HtmlPage page = webClient.getPage(url + "/index.xhtml");
+ @BeforeAll
+ public static void initWebClient() {
+ webClient = new WebClient(BrowserVersion.CHROME);
+ webClient.getOptions().setJavaScriptEnabled(true);
+ webClient.getOptions().setCssEnabled(false);
+ webClient.getOptions().setUseInsecureSSL(true);
+ webClient.getOptions().setThrowExceptionOnFailingStatusCode(false);
+ webClient.getCookieManager().setCookiesEnabled(true);
+ webClient.setAjaxController(new NicelyResynchronizingAjaxController());
+ }
- final HtmlDivision datatable = (HtmlDivision) page.getElementById("form:carTable");
-
- assertThat(datatable).isNotNull();
- assertThat(datatable.getByXPath("//tr[contains(@role,'row') and contains(@class,'ui-datatable-selectable')]"))
- .hasSize(10);
-
+ @AfterAll
+ public static void closeWebClient() {
+ if (webClient != null) {
+ webClient.close();
}
}
+
+
+ @Test
+ public void shouldOpenIndexPage() throws Exception {
+ final HtmlPage page = webClient.getPage(url + "/index.xhtml");
+ final HtmlDivision datatable = (HtmlDivision) page.getElementById("form:carTable");
+ assertThat(datatable).isNotNull();
+ assertThat(datatable.getByXPath("//tr[contains(@role,'row') and contains(@class,'ui-datatable-selectable')]"))
+ .hasSize(10);
+ }
+
+ @Test
+ @Disabled("Check HtmlUnit websocket support, for now this test is not working")
+ public void shouldCallWebSocket() throws IOException {
+ HtmlPage page = webClient.getPage(url + "/socket.xhtml");
+ final HtmlSubmitInput sendMessageBtn = (HtmlSubmitInput) page.getElementById("form:sendMessage");
+ page = sendMessageBtn.click();
+ webClient.waitForBackgroundJavaScript(5000);
+ DomElement message = page.getElementById("message");
+ assertThat(message.asXml())
+ .contains("hello at");
+
+ }
+
+
}