From 0322c9da3c93d27572fde7f153b6d3b0d2a23a7a Mon Sep 17 00:00:00 2001
From: Michael Hamann <michael.hamann@xwiki.com>
Date: Fri, 21 Jul 2023 15:01:47 +0200
Subject: [PATCH] [Misc] Wait for next page to load in
 ApplicationCreatePage#clickNextStep

This is an attempt at fixing flickering in
WithoutScriptRightIT#createApplicationWithoutScriptRight which seems to
be caused by drag&drop operations starting before the class editor page
has been fully loaded.

(cherry picked from commit 2ec6cb6fd52ccc1dc1ec2a0b7931737df4a05ac0)
---
 .../appwithinminutes/test/po/ApplicationCreatePage.java     | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-test/xwiki-platform-appwithinminutes-test-pageobjects/src/main/java/org/xwiki/appwithinminutes/test/po/ApplicationCreatePage.java b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-test/xwiki-platform-appwithinminutes-test-pageobjects/src/main/java/org/xwiki/appwithinminutes/test/po/ApplicationCreatePage.java
index ab8df0be9f9..4b2d697327d 100644
--- a/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-test/xwiki-platform-appwithinminutes-test-pageobjects/src/main/java/org/xwiki/appwithinminutes/test/po/ApplicationCreatePage.java
+++ b/xwiki-platform-core/xwiki-platform-appwithinminutes/xwiki-platform-appwithinminutes-test/xwiki-platform-appwithinminutes-test-pageobjects/src/main/java/org/xwiki/appwithinminutes/test/po/ApplicationCreatePage.java
@@ -138,7 +138,13 @@ public DocumentPicker getLocationPicker()
      */
     public ApplicationClassEditPage clickNextStep()
     {
+        // Make sure we actually wait for the page load to complete before returning.
+        getDriver().addPageNotYetReloadedMarker();
+
         clickNextStepButton();
+
+        getDriver().waitUntilPageIsReloaded();
+
         return new ApplicationClassEditPage();
     }
 
-- 
GitLab