mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ACS-259] refactor login page (#5733)
* refator login page * refator login page * remove obsolete classes and move what is needed in the test pck * fix const * revert modify * remove duplicate browser property * fix build * fix * fix * fix lint * move drop action in testing remove not necessary space js-api centralize content * first refactor use js-api * fix protractor * refactor test config * simplify properties fix namings * ps cloud simplify remove unused js files * id fix * fix search test simplify environment var step 1 * fix lint * first user iteration fix * fix model * unify use of apiService * first step automatic user creation Identity * refactor creation user content-services * refactor creation user search * refactor creation user core * process service refactoring 1 * process service refactoring 1 * process service refactoring 2 * fix process * appconfig * fix process util * fix gallery * fix "this" reference issues * fix incorrect import paths * fix core * some fixes * allign * fix some test remove structure folder and move in actions * fixes * move folders in the right place * fix * fix rebase * solve build issue * fix e2e * change init aae * order api and some fixes * fix possible not valid password * fix some ps test * replace host port also in objects * Update app-config.service.ts * fix process * fix process test * process service cloud fix * fiexs * modify init script * fix two test * remove unused property * host issue * not use npx * fix ps cloud test Co-authored-by: Denys Vuika <denys.vuika@gmail.com>
This commit is contained in:
@@ -15,46 +15,38 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
import { LoginPage, StringUtil, Widget, ApplicationsUtil } from '@alfresco/adf-testing';
|
||||
import { LoginSSOPage, Widget, ApplicationsUtil, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { TasksPage } from '../../pages/adf/process-services/tasks.page';
|
||||
import { browser } from 'protractor';
|
||||
import { User } from '../../models/APS/user';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import CONSTANTS = require('../../util/constants');
|
||||
|
||||
describe('People and Group widget', () => {
|
||||
|
||||
const loginPage = new LoginPage();
|
||||
const app = browser.params.resources.Files.MORE_WIDGETS;
|
||||
|
||||
const loginPage = new LoginSSOPage();
|
||||
const taskPage = new TasksPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const widget = new Widget();
|
||||
const usersActions = new UsersActions();
|
||||
const alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'BPM',
|
||||
hostBpm: browser.params.testConfig.adf_aps.host
|
||||
});
|
||||
|
||||
const app = browser.params.resources.Files.MORE_WIDGETS;
|
||||
let user: User;
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const applicationsService = new ApplicationsUtil(apiService);
|
||||
|
||||
let user: UserModel;
|
||||
|
||||
beforeAll(async () => {
|
||||
await alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
user = await usersActions.createTenantAndUser(alfrescoJsApi);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
user = await usersActions.createUser();
|
||||
await createGroupAndUsers(user.tenantId);
|
||||
await apiService.getInstance().login(user.email, user.password);
|
||||
|
||||
await alfrescoJsApi.login(user.email, user.password);
|
||||
try {
|
||||
const applicationsService = new ApplicationsUtil(alfrescoJsApi);
|
||||
await applicationsService.importPublishDeployApp(app.file_path, { renewIdmEntries: true });
|
||||
} catch (e) { console.error('failed to deploy the application'); }
|
||||
await loginPage.loginToProcessServicesUsingUserModel(user);
|
||||
});
|
||||
await applicationsService.importPublishDeployApp(app.file_path, { renewIdmEntries: true });
|
||||
|
||||
afterAll(async () => {
|
||||
await alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await alfrescoJsApi.activiti.adminTenantsApi.deleteTenant(user.tenantId);
|
||||
await loginPage.login(user.email, user.password);
|
||||
});
|
||||
|
||||
beforeEach(async () => {
|
||||
@@ -65,7 +57,7 @@ describe('People and Group widget', () => {
|
||||
it('[C275715] Add group widget - Visibility and group restriction', async () => {
|
||||
const name = 'group visibility task';
|
||||
const groupVisibilityForm = app.ADD_GROUP_VISIBILITY;
|
||||
await taskPage.createTask({name, formName: groupVisibilityForm.formName});
|
||||
await taskPage.createTask({ name, formName: groupVisibilityForm.formName });
|
||||
await expect(await taskPage.taskDetails().getTitle()).toEqual('Activities');
|
||||
|
||||
await taskPage.formFields().checkWidgetIsHidden(groupVisibilityForm.FIELD.widget_id);
|
||||
@@ -75,7 +67,7 @@ describe('People and Group widget', () => {
|
||||
await widget.groupWidget().insertGroup(groupVisibilityForm.FIELD.widget_id, groupVisibilityForm.searchTerm);
|
||||
await widget.groupWidget().checkDropDownListIsDisplayed();
|
||||
const suggestions = await widget.groupWidget().getDropDownList();
|
||||
await expect(suggestions.sort()).toEqual([ 'Heros', 'Users' ]);
|
||||
await expect(suggestions.sort()).toEqual(['Heros', 'Users']);
|
||||
await widget.groupWidget().selectGroupFromDropDown('Users');
|
||||
await taskPage.taskDetails().clickCompleteFormTask();
|
||||
});
|
||||
@@ -83,7 +75,7 @@ describe('People and Group widget', () => {
|
||||
it('[C275716] Add group widget - sub group restrictions', async () => {
|
||||
const name = 'group widget - subgroup restriction';
|
||||
const subgroupFrom = app.ADD_GROUP_AND_SUBGROUP_RESTRICTION;
|
||||
await taskPage.createTask({name, formName: subgroupFrom.formName});
|
||||
await taskPage.createTask({ name, formName: subgroupFrom.formName });
|
||||
await expect(await taskPage.taskDetails().getTitle()).toEqual('Activities');
|
||||
|
||||
await taskPage.formFields().checkWidgetIsHidden(subgroupFrom.FIELD.widget_id);
|
||||
@@ -108,7 +100,7 @@ describe('People and Group widget', () => {
|
||||
it('[C275714] Add people widget - group restrictions', async () => {
|
||||
const name = 'people widget - group restrictions';
|
||||
const peopleWidget = app.ADD_PEOPLE_AND_GROUP_RESTRICTION;
|
||||
await taskPage.createTask({name, formName: peopleWidget.formName});
|
||||
await taskPage.createTask({ name, formName: peopleWidget.formName });
|
||||
await expect(await taskPage.taskDetails().getTitle()).toEqual('Activities');
|
||||
|
||||
await taskPage.formFields().checkWidgetIsHidden(peopleWidget.FIELD.widget_id);
|
||||
@@ -123,23 +115,40 @@ describe('People and Group widget', () => {
|
||||
await taskPage.taskDetails().clickCompleteFormTask();
|
||||
});
|
||||
|
||||
async function createGroupAndUsers(tenantId) {
|
||||
await alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
async function createGroupAndUsers(tenantId: number) {
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
try {
|
||||
const happyUsers: any[] = await Promise.all(app.groupUser.map(happyUser =>
|
||||
usersActions.createApsUserWithName(alfrescoJsApi, tenantId, StringUtil.generateRandomString(), happyUser.firstName, happyUser.lastName)));
|
||||
const subgroupUser = await usersActions.createApsUserWithName(
|
||||
alfrescoJsApi, tenantId, StringUtil.generateRandomString(), app.subGroupUser.firstName, app.subGroupUser.lastName);
|
||||
const userCreated = await Promise.all(app.groupUser.map(usersToCreate =>
|
||||
usersActions.createUser(new UserModel({
|
||||
tenantId: tenantId,
|
||||
firstName: usersToCreate.firstName,
|
||||
lastName: usersToCreate.lastName
|
||||
}))
|
||||
));
|
||||
|
||||
const group = await alfrescoJsApi.activiti.adminGroupsApi.createNewGroup({ name: app.group.name, tenantId, type: 1 });
|
||||
await Promise.all(happyUsers.map(happyUser => alfrescoJsApi.activiti.adminGroupsApi.addGroupMember(group.id, happyUser.id)));
|
||||
const subgroupUser = await usersActions.createUser(new UserModel({
|
||||
tenantId: tenantId, firstName: app.subGroupUser.firstName, lastName: app.subGroupUser.lastName
|
||||
}));
|
||||
|
||||
const subgroups: any[] = await Promise.all(getSubGroupsName().map((name) =>
|
||||
alfrescoJsApi.activiti.adminGroupsApi.createNewGroup({ name, tenantId , type: 1, parentGroupId: group.id })));
|
||||
await Promise.all(subgroups.map((subgroup) => alfrescoJsApi.activiti.adminGroupsApi.addGroupMember(subgroup.id, subgroupUser.id)));
|
||||
const group = await apiService.getInstance().activiti.adminGroupsApi.createNewGroup({
|
||||
name: app.group.name,
|
||||
tenantId,
|
||||
type: 1
|
||||
});
|
||||
|
||||
await Promise.all(userCreated.map((userToAddGroup: UserModel) => apiService.getInstance().activiti.adminGroupsApi.addGroupMember(group.id, userToAddGroup.id)));
|
||||
|
||||
const subgroups: any[] = await Promise.all(getSubGroupsName().map((name) =>
|
||||
apiService.getInstance().activiti.adminGroupsApi.createNewGroup({
|
||||
name,
|
||||
tenantId,
|
||||
type: 1,
|
||||
parentGroupId: group.id
|
||||
})
|
||||
));
|
||||
|
||||
await Promise.all(subgroups.map((subgroup) => apiService.getInstance().activiti.adminGroupsApi.addGroupMember(subgroup.id, subgroupUser.id)));
|
||||
|
||||
} catch (e) {}
|
||||
}
|
||||
|
||||
function getSubGroupsName() {
|
||||
|
Reference in New Issue
Block a user