Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS has been phased out. To see alternatives please check here

Skip to content
Snippets Groups Projects
Select Git revision
  • 11a21bc4e3072e90e72573d505676bfb7b1b19a1
  • development default
  • bugfix/EDELIVERY-14172-domismp-accepts-requests-with-wrong-domain-header-value
  • EDELIVERY-15372-upgrade-libraries-and-plugins-and-update-httpclient-to-httpclient5
  • EDELIVERY-15377-migrate-to-angular-20
  • feature/EDELIVERY-15382-rest-api-jwt-authentication-for-dynamic-discovery-client
  • bugfix/EDELIVERY-14196-select-domain-select-resource-dropdown-should-be-order-alphabetically
  • feature/EDELIVERY-12753-sml-integration-migration-to-different-smp
  • feature/EDELIVERY-13757-extend-session-dialog-should-have-an-active-counter
  • EDELIVERY-15144-sql-update
  • bugfix/EDELIVERY-14326-ui-edit-resource-filters
  • feature/EDELIVERY-15144-domismp-system-notification-generalize-time-expiration-alerts
  • bugfix/EDELIVERY-15102-alert-is-not-appearing-when-adding-duplicated-certificate
  • bugfix/EDELIVERY-15203-small-left-grid-shows-no-data-found-for-1-2-seconds-before-loading-the-data
  • EDELIVERY-15219-search-filter-with-understore-char-does-not-work
  • bugfix/EDELIVERY-15226-certificates-error-when-trying-to-delete-certificates
  • bugfix/EDELIVERY-15224-error-when-trying-to-update-info-from-profile-page
  • bugfix/EDELIVERY-15225-emails-are-not-sent-in-domismp
  • release/5.1.x
  • feature/EDELIVERY-12746-external-secret-sharing-services-as-vaults
  • EDELIVERY-15229-upgrade-libraries-and-plugins
  • 5.1.1
  • 5.1
  • 5.1-TEST
  • 5.1-RC1
  • 5.0.1
  • 5.0
  • 5.0-RC1
  • 4.2
  • 4.2-RC1
  • 4.1.2
  • 4.1.1
  • 4.1.0
  • 4.1.0-RC1
  • 4.0.0
  • 4.0.0-RC1
  • 3.0.2
  • 3.0.1
  • 3.0.0
39 results

PrivilegesTests.java

Blame
  • user avatar
    comanca authored
    11a21bc4
    History
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    PrivilegesTests.java 7.53 KiB
    package ui;
    
    import org.testng.annotations.AfterMethod;
    import org.testng.annotations.Test;
    import org.testng.asserts.SoftAssert;
    import pages.components.baseComponents.SMPPage;
    import pages.service_groups.edit.EditPage;
    import pages.service_groups.edit.ServiceGroupPopup;
    import pages.login.LoginPage;
    import pages.service_groups.search.SearchPage;
    import utils.Generator;
    import utils.rest.SMPRestClient;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.HashMap;
    
    public class PrivilegesTests extends BaseTest {
    
    
    	@AfterMethod
    	public void logoutAndReset(){
    		SMPPage page = new SMPPage(driver);
    		page.refreshPage();
    
    		if(page.pageHeader.sandwichMenu.isLoggedIn()){
    			logger.info("Logout!!");
    			page.pageHeader.sandwichMenu.logout();
    		}
    	}
    
    	@Test(description = "RGT-0")
    	public void anonymousUserRights(){
    		logger.info("Checking rights for anonymous user");
    		SoftAssert soft = new SoftAssert();
    
    		SearchPage page = new SearchPage(driver);
    
    		soft.assertTrue(page.sidebar.isSearchLnkVisible(), "Search link is visible on Search page");
    		soft.assertFalse(page.sidebar.isEditLnkVisible(), "Edit link is NOT visible on Search page");
    		soft.assertFalse(page.sidebar.isDomainLnkVisible(), "Domain link is NOT visible on Search page");
    		soft.assertFalse(page.sidebar.isUsersLnkVisible(), "Users link is NOT visible on Search page");
    
    		logger.info("Going to the login page");
    		page.pageHeader.goToLogin();
    
    		LoginPage loginPage = new LoginPage(driver);
    		soft.assertTrue(loginPage.sidebar.isSearchLnkVisible(), "Search link is visible on Login page");
    		soft.assertFalse(loginPage.sidebar.isEditLnkVisible(), "Edit link is NOT visible on Login page");
    		soft.assertFalse(loginPage.sidebar.isDomainLnkVisible(), "Domain link is NOT visible on Login page");
    		soft.assertFalse(loginPage.sidebar.isUsersLnkVisible(), "Users link is NOT visible on Login page");
    
    		soft.assertAll();
    	}
    
    
    	@Test(description = "RGT-10")
    	public void sg_adminRights(){
    
    		String pi = Generator.randomAlphaNumeric(10);
    		String ps = Generator.randomAlphaNumeric(10);
    
    		SMPRestClient.createServiceGroup(pi, ps,
    				new ArrayList<>(Arrays.asList("user")),
    				new ArrayList<>(Arrays.asList(createdDomains.get(0)))
    		);
    
    		logger.info("Checking rights for SG_ADMIN user");
    		SoftAssert soft = new SoftAssert();
    
    		SMPPage page = new SMPPage(driver);
    		logger.info("going to login");
    		page.pageHeader.goToLogin();
    
    		LoginPage loginPage = new LoginPage(driver);
    		HashMap<String, String> user = testDataProvider.getUserWithRole("SG_ADMIN");
    
    		logger.info("Logging in with user " + user.get("username"));
    		loginPage.login(user.get("username"), user.get("password"));
    
    		soft.assertTrue(loginPage.pageHeader.sandwichMenu.isLoggedIn(), "Check that the user is logged in");
    
    		soft.assertTrue(loginPage.sidebar.isSearchLnkVisible(), "Search link is visible after login for SG_ADMIN");
    		soft.assertTrue(loginPage.sidebar.isEditLnkVisible(), "Edit link is visible after login for SG_ADMIN");
    
    		soft.assertFalse(loginPage.sidebar.isDomainLnkVisible(), "Domain link is NOT visible after login for SG_ADMIN");
    		soft.assertFalse(loginPage.sidebar.isUsersLnkVisible(), "Users link is NOT visible after login for SG_ADMIN");
    
    //		going to check privileges on Edit page for SG_ADMIN
    		logger.info("Going to edit page");
    		EditPage editPage = loginPage.sidebar.goToPage(EditPage.class);
    		soft.assertFalse(editPage.isNewButtonPresent(), "New button should not be present for SG_ADMIN");
    		soft.assertFalse(editPage.isDeleteButtonPresent(), "Delete button should not be present for SG_ADMIN");
    
    		logger.info("opening service group popup");
    		editPage.getGrid().doubleClickRow(0);
    		ServiceGroupPopup popup = new ServiceGroupPopup(driver);
    
    		soft.assertFalse(popup.isDomainsPanelEnabled(), "SG_ADMIN cannot edit a service groups DOMAINS");
    		soft.assertFalse(popup.isOwnersPanelPresent(), "SG_ADMIN cannot edit a service groups OWNERS");
    		popup.clickCancel();
    
    		logger.info("LOGOUT");
    		loginPage.pageHeader.sandwichMenu.logout();
    
    		soft.assertFalse(loginPage.pageHeader.sandwichMenu.isLoggedIn(), "Check that the user is logged out");
    
    		soft.assertTrue(loginPage.sidebar.isSearchLnkVisible(), "Search link is visible after logout");
    		soft.assertFalse(loginPage.sidebar.isEditLnkVisible(), "Edit link is NOT visible after logout");
    
    		soft.assertFalse(loginPage.sidebar.isDomainLnkVisible(), "Domain link is NOT visible after logout");
    		soft.assertFalse(loginPage.sidebar.isUsersLnkVisible(), "Users link is NOT visible after logout");
    
    		SMPRestClient.deleteSG(pi);
    
    		soft.assertAll();
    	}
    
    
    	@Test(description = "RGT-20")
    	public void sys_adminRights(){
    		SoftAssert soft = new SoftAssert();
    
    		SMPPage page = new SMPPage(driver);
    		page.pageHeader.goToLogin();
    
    		LoginPage loginPage = new LoginPage(driver);
    		HashMap<String, String> user = testDataProvider.getUserWithRole("SYS_ADMIN");
    		loginPage.login(user.get("username"), user.get("password"));
    
    		soft.assertTrue(loginPage.pageHeader.sandwichMenu.isLoggedIn());
    
    		soft.assertTrue(loginPage.sidebar.isSearchLnkVisible());
    		soft.assertFalse(loginPage.sidebar.isEditLnkVisible());
    
    		soft.assertTrue(loginPage.sidebar.isDomainLnkVisible());
    		soft.assertTrue(loginPage.sidebar.isUsersLnkVisible());
    
    
    		soft.assertAll();
    	}
    
    
    	@Test(description = "RGT-30")
    	public void smp_adminRights(){
    		logger.info("Checking rights for SMP_ADMIN user");
    		SoftAssert soft = new SoftAssert();
    
    		SMPPage page = new SMPPage(driver);
    		logger.info("going to login");
    		page.pageHeader.goToLogin();
    
    		LoginPage loginPage = new LoginPage(driver);
    		HashMap<String, String> user = testDataProvider.getUserWithRole("SMP_ADMIN");
    
    		logger.info("Logging in with user " + user.get("username"));
    		loginPage.login(user.get("username"), user.get("password"));
    
    		soft.assertTrue(loginPage.pageHeader.sandwichMenu.isLoggedIn(), "Check that the user is logged in");
    
    		soft.assertTrue(loginPage.sidebar.isSearchLnkVisible(), "Search link is visible after login for SMP_ADMIN");
    		soft.assertTrue(loginPage.sidebar.isEditLnkVisible(), "Edit link is visible after login for SMP_ADMIN");
    
    		soft.assertFalse(loginPage.sidebar.isDomainLnkVisible(), "Domain link is NOT visible after login for SMP_ADMIN");
    		soft.assertFalse(loginPage.sidebar.isUsersLnkVisible(), "Users link is NOT visible after login for SMP_ADMIN");
    
    //		going to check privileges on Edit page for SMP_ADMIN
    		logger.info("Going to edit page");
    		EditPage editPage = loginPage.sidebar.goToPage(EditPage.class);
    		soft.assertTrue(editPage.isNewButtonPresent(), "New button should be present for SMP_ADMIN");
    		soft.assertTrue(editPage.isDeleteButtonPresent(), "Delete button should be present for SMP_ADMIN");
    
    		logger.info("opening service group popup");
    		editPage.getGrid().doubleClickRow(0);
    		ServiceGroupPopup popup = new ServiceGroupPopup(driver);
    
    		soft.assertTrue(popup.isDomainsPanelEnabled(), "SMP_ADMIN should be able to edit a service groups DOMAINS");
    		soft.assertTrue(popup.isOwnersPanelEnabled(), "SMP_ADMIN should be able to edit a service groups OWNERS");
    		popup.clickCancel();
    
    		logger.info("LOGOUT");
    		loginPage.pageHeader.sandwichMenu.logout();
    
    		soft.assertFalse(loginPage.pageHeader.sandwichMenu.isLoggedIn(), "Check that the user is logged out");
    
    		soft.assertTrue(loginPage.sidebar.isSearchLnkVisible(), "Search link is visible after logout");
    		soft.assertFalse(loginPage.sidebar.isEditLnkVisible(), "Edit link is NOT visible after logout");
    
    		soft.assertFalse(loginPage.sidebar.isDomainLnkVisible(), "Domain link is NOT visible after logout");
    		soft.assertFalse(loginPage.sidebar.isUsersLnkVisible(), "Users link is NOT visible after logout");
    
    		soft.assertAll();
    	}
    
    
    }