WIP
[demos/spring-boot] / src / test / java / de / juplo / demo / DemoControllerIT.java
index 4873566..bd9dcd2 100644 (file)
@@ -1,6 +1,10 @@
 package de.juplo.demo;
 
 
+import java.net.DatagramSocket;
+import java.net.InetAddress;
+import java.net.SocketException;
+import java.net.UnknownHostException;
 import lombok.extern.slf4j.Slf4j;
 import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
 import org.junit.jupiter.api.BeforeEach;
@@ -31,7 +35,19 @@ public class DemoControllerIT
   @BeforeEach()
   void generateBaseUri()
   {
-    baseUri = "http://localhost:" + port;
+    try (final DatagramSocket socket = new DatagramSocket())
+    {
+      socket.connect(InetAddress.getByName("8.8.8.8"), 10002);
+      baseUri =
+          "http://" +
+          socket.getLocalAddress().getHostAddress() +
+          ":" +
+          port;
+    }
+    catch (SocketException | UnknownHostException e)
+    {
+      throw new RuntimeException(e);
+    }
   }
 
 
@@ -39,8 +55,9 @@ public class DemoControllerIT
   void testSubmit(RemoteWebDriver driver)
   {
     driver.get(baseUri + "/");
+    log.info("Fetched page:\n\n{}\n", driver.getPageSource());
 
-    WebElement submit = driver.findElement(By.xpath("//*[@class=\"card-footer\"]/button"));
+    WebElement submit = driver.findElement(By.cssSelector(".card-footer > button"));
     assertThat(submit).isNotNull();
   }
 }