From caef39ab5e1e424d9ed0c40b025b4ba3f619d71c Mon Sep 17 00:00:00 2001 From: Yang Jiao Date: Mon, 10 Jul 2023 09:53:10 +0000 Subject: [PATCH] Add OIDC filter group testcase Fix #17950 Signed-off-by: Yang Jiao --- tests/resources/Util.robot | 4 +- tests/robot-cases/Group1-Nightly/OIDC.robot | 42 ++++++++++++++++++++- 2 files changed, 43 insertions(+), 3 deletions(-) diff --git a/tests/resources/Util.robot b/tests/resources/Util.robot index cc916519751..5f1567ccdcd 100644 --- a/tests/resources/Util.robot +++ b/tests/resources/Util.robot @@ -226,9 +226,9 @@ Text Input Clear Field Of Characters [Arguments] ${field} ${character count} - [Documentation] This keyword pushes the delete key (ascii: \8) a specified number of times in a specified field. + [Documentation] This keyword pushes the BACKSPACE key a specified number of times in a specified field. FOR ${index} IN RANGE ${character count} - Press Keys ${field} \\8 + Press Keys ${field} BACKSPACE END Wait Unitl Command Success diff --git a/tests/robot-cases/Group1-Nightly/OIDC.robot b/tests/robot-cases/Group1-Nightly/OIDC.robot index b683c2d0181..b1c9ad30f68 100644 --- a/tests/robot-cases/Group1-Nightly/OIDC.robot +++ b/tests/robot-cases/Group1-Nightly/OIDC.robot @@ -117,7 +117,6 @@ Test Case - OIDC Group User Should Be Equal As Strings '${output[0]}' 'FAIL' Close Browser - Test Case - Delete An OIDC User In Local DB Init Chrome Driver # sign in with admin role @@ -132,3 +131,44 @@ Test Case - Delete An OIDC User In Local DB Sign In Harbor With OIDC User ${HARBOR_URL} username=${admin_user} password=${admin_pwd} login_with_provider=ldap Should Contain Target User Close Browser + +Test Case - OIDC Group Filter + [Tags] group_filter + Init Chrome Driver + ${oidc_user}= Set Variable mike02 + ${oidc_pwd}= Set Variable zhu88jie + Sign In Harbor ${HARBOR_URL} ${HARBOR_ADMIN} ${HARBOR_PASSWORD} is_oidc=${true} + Retry Element Click //clr-vertical-nav//span[contains(.,'Groups')] + Retry Wait Until Page Contains Element //clr-dg-pagination//div[contains(@class, 'pagination-description')] + ${total}= Get Text //clr-dg-pagination//div[contains(@class, 'pagination-description')] + # Delete all groups + Run Keyword If '${total}' != '0 items' Run Keywords Retry Element Click //div[@class='clr-checkbox-wrapper']//label AND Retry Button Click //button[contains(.,'Delete')] AND Retry Button Click //button[contains(.,'DELETE')] + # Set OIDCGroupFilter to .*users + Switch To Configuration Authentication + Retry Text Input //*[@id='OIDCGroupFilter'] .*users + Retry Element Click ${config_auth_save_button_xpath} + Logout Harbor + # Login to the Harbor using OIDC user + Sign In Harbor With OIDC User ${HARBOR_URL} username=${oidc_user} password=${oidc_pwd} login_with_provider=ldap + Logout Harbor + # Check that there is only one harbor_users group + Sign In Harbor ${HARBOR_URL} ${HARBOR_ADMIN} ${HARBOR_PASSWORD} is_oidc=${true} + Retry Element Click //clr-vertical-nav//span[contains(.,'Groups')] + Retry Wait Until Page Contains Element //app-group//clr-dg-row//clr-dg-cell[text()='harbor_users'] + ${count}= Get Element Count //app-group//clr-dg-row + Should Be Equal As Integers ${count} 1 + # Reset OIDCGroupFilter + Switch To Configuration Authentication + Clear Field Of Characters //*[@id='OIDCGroupFilter'] 7 + Retry Element Click ${config_auth_save_button_xpath} + Logout Harbor + # Login to the Harbor using OIDC user + Sign In Harbor With OIDC User ${HARBOR_URL} username=${oidc_user} password=${oidc_pwd} login_with_provider=ldap + Logout Harbor + # Check that there are more than one groups + Sign In Harbor ${HARBOR_URL} ${HARBOR_ADMIN} ${HARBOR_PASSWORD} is_oidc=${true} + Retry Element Click //clr-vertical-nav//span[contains(.,'Groups')] + Retry Wait Until Page Contains Element //app-group//clr-dg-row//clr-dg-cell[text()='harbor_users'] + ${count}= Get Element Count //app-group//clr-dg-row + Should Be True ${count} > 1 + Close Browser