From af1b08d973354cd997d49b6ba286302996a2d0a5 Mon Sep 17 00:00:00 2001 From: Manuel Leduc Date: Mon, 11 Mar 2024 14:06:56 +0100 Subject: [PATCH] --wip-- [skip ci] --- .../ui/UsersGroupsRightsManagementIT.java | 26 ++++++++------- .../po/UsersAdministrationSectionPage.java | 6 ++++ .../main/vue/displayers/DisplayerActions.vue | 32 +++++++++---------- 3 files changed, 36 insertions(+), 28 deletions(-) diff --git a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-test/xwiki-platform-administration-test-docker/src/test/it/org/xwiki/administration/test/ui/UsersGroupsRightsManagementIT.java b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-test/xwiki-platform-administration-test-docker/src/test/it/org/xwiki/administration/test/ui/UsersGroupsRightsManagementIT.java index 54cc47b4849c..d89655f0d309 100644 --- a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-test/xwiki-platform-administration-test-docker/src/test/it/org/xwiki/administration/test/ui/UsersGroupsRightsManagementIT.java +++ b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-test/xwiki-platform-administration-test-docker/src/test/it/org/xwiki/administration/test/ui/UsersGroupsRightsManagementIT.java @@ -276,23 +276,25 @@ void createAndDeleteUser(TestUtils setup, TestReference testReference) usersPage = UsersAdministrationSectionPage.gotoPage(); + int rowNumber = usersPage.getRowNumberByUsername(userName); + // Verify the user is enabled and can only be edited or disabled - assertFalse(usersPage.isUserDisabled(1)); - assertFalse(usersPage.canDeleteUser(1)); - assertFalse(usersPage.canEnableUser(1)); - assertTrue(usersPage.canDisableUser(1)); - assertTrue(usersPage.canEditUser(1)); + assertFalse(usersPage.isUserDisabled(rowNumber)); + assertFalse(usersPage.canDeleteUser(rowNumber)); + assertFalse(usersPage.canEnableUser(rowNumber)); + assertTrue(usersPage.canDisableUser(rowNumber)); + assertTrue(usersPage.canEditUser(rowNumber)); // Verify that when the user is disabled it can be enabled back, deleted or edited - usersPage = usersPage.disableUser(1); - assertTrue(usersPage.isUserDisabled(1)); - assertTrue(usersPage.canDeleteUser(1)); - assertTrue(usersPage.canEnableUser(1)); - assertFalse(usersPage.canDisableUser(1)); - assertTrue(usersPage.canEditUser(1)); + usersPage = usersPage.disableUser(rowNumber); + assertTrue(usersPage.isUserDisabled(rowNumber)); + assertTrue(usersPage.canDeleteUser(rowNumber)); + assertTrue(usersPage.canEnableUser(rowNumber)); + assertFalse(usersPage.canDisableUser(rowNumber)); + assertTrue(usersPage.canEditUser(rowNumber)); // Delete the newly created user and see if groups are cleaned - ConfirmationModal confirmation = usersPage.clickDeleteUser(1); + ConfirmationModal confirmation = usersPage.clickDeleteUser(rowNumber); assertTrue(confirmation.getMessage().contains("Are you sure you want to proceed?")); confirmation.clickOk(); usersPage.getUsersLiveData().getTableLayout().assertRow("User", diff --git a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-test/xwiki-platform-administration-test-pageobjects/src/main/java/org/xwiki/administration/test/po/UsersAdministrationSectionPage.java b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-test/xwiki-platform-administration-test-pageobjects/src/main/java/org/xwiki/administration/test/po/UsersAdministrationSectionPage.java index a9692bf13bc1..f6fe91eadf85 100644 --- a/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-test/xwiki-platform-administration-test-pageobjects/src/main/java/org/xwiki/administration/test/po/UsersAdministrationSectionPage.java +++ b/xwiki-platform-core/xwiki-platform-administration/xwiki-platform-administration-test/xwiki-platform-administration-test-pageobjects/src/main/java/org/xwiki/administration/test/po/UsersAdministrationSectionPage.java @@ -78,6 +78,12 @@ public DeleteUserConfirmationModal clickDeleteUser(int rowNumber) return new DeleteUserConfirmationModal(); } + public int getRowNumberByUsername(String userName) + { + int rowNumber = getUsersLiveData().getTableLayout().getRowIndexForElement(By.xpath("//a[text()='" + userName + "']")); + return rowNumber; + } + public boolean canDeleteUser(int rowNumber) { return getUsersLiveData().getTableLayout().hasAction(rowNumber, "delete"); diff --git a/xwiki-platform-core/xwiki-platform-livedata/xwiki-platform-livedata-webjar/src/main/vue/displayers/DisplayerActions.vue b/xwiki-platform-core/xwiki-platform-livedata/xwiki-platform-livedata-webjar/src/main/vue/displayers/DisplayerActions.vue index c01fea799ce3..6005c41ede47 100644 --- a/xwiki-platform-core/xwiki-platform-livedata/xwiki-platform-livedata-webjar/src/main/vue/displayers/DisplayerActions.vue +++ b/xwiki-platform-core/xwiki-platform-livedata/xwiki-platform-livedata-webjar/src/main/vue/displayers/DisplayerActions.vue @@ -30,24 +30,24 @@ all the displayer default behavior -->