public override void BeforeEach() { base.BeforeEach(); _driver.Logout(); _dashboardPage = _driver.LoginToAdminWebsiteAsSuperAdmin(); _roleManagerPage = _dashboardPage.Menu.ClickRoleManagerMenuItem(); }
public void Copy_permissions_from_role_option_works() { // create a source role to copy permissions from var sourceRoleData = TestDataGenerator.CreateValidRoleData(code: null, name: null, licensee: DefaultLicensee); _roleManagerPage = _dashboardPage.Menu.ClickRoleManagerMenuItem(); var sourceRoleForm = _roleManagerPage.OpenNewRoleForm(); sourceRoleForm.SelectPermissions(new [] { NewRoleForm.RoleManagerView, NewRoleForm.RoleManagerCreate }); var submittedSorceRole = sourceRoleForm.FillInRequiredFieldsAndSubmit(sourceRoleData); // create another role to use the copied permissions var roleData = TestDataGenerator.CreateValidRoleData(code: null, name: null, licensee: DefaultLicensee); submittedSorceRole.CloseTab("View Role"); var newRoleForm = _roleManagerPage.OpenNewRoleForm(); var submittedRoleForm = newRoleForm.FillInRequiredFields(roleData); newRoleForm.CopyPermissionsFromAnotherRole(sourceRoleData.RoleName); newRoleForm.Submit(); // create a user based on the role var userData = TestDataGenerator.CreateValidAdminUserRegistrationData( roleData.RoleName, status: "Active", licensee: roleData.Licensee, brand: DefaultBrand, currency: "CAD"); var adminManagerPage = submittedRoleForm.Menu.ClickAdminManagerMenuItem(); var newUserForm = adminManagerPage.OpenNewUserForm(); var submittedUserForm = newUserForm.Submit(userData); Assert.AreEqual("User has been successfully created", submittedUserForm.ConfirmationMessage); Assert.AreEqual(roleData.RoleName, submittedUserForm.UserRole); // login as the user and check that the user can open Role Manager page _dashboardPage = _driver.LoginToAdminWebsiteAs(userData.UserName, userData.Password); _roleManagerPage = _dashboardPage.Menu.ClickRoleManagerMenuItem(); var openedForm = _roleManagerPage.OpenNewRoleForm(); Assert.AreEqual("New Role", openedForm.TabName); }