[MNT-22236] update e2e to reflect permission i18n support (#6852)

* update e2e to reflect permission i18n support

* use latest js-api SitesApi

* remove use of deprecated sites api in e2e

* fix test

* fix test
This commit is contained in:
Denys Vuika
2021-03-24 20:51:01 +00:00
committed by GitHub
parent cd0587dcfd
commit 6ec9833b36
21 changed files with 194 additions and 87 deletions

View File

@@ -30,6 +30,7 @@ import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { FileModel } from '../../models/ACS/file.model';
import { browser } from 'protractor';
import CONSTANTS = require('../../util/constants');
import { SitesApi, SiteEntry } from '@alfresco/js-api';
describe('Comment', () => {
@@ -165,17 +166,19 @@ describe('Comment', () => {
});
describe('Consumer Permissions', () => {
let site, pngUploadedFile;
let site: SiteEntry;
let pngUploadedFile;
beforeAll(async () => {
await apiService.loginWithProfile('admin');
site = await apiService.getInstance().core.sitesApi.createSite({
const sitesApi = new SitesApi(apiService.getInstance());
site = await sitesApi.createSite({
title: StringUtil.generateRandomString(8),
visibility: 'PUBLIC'
});
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
await sitesApi.createSiteMembership(site.entry.id, {
id: acsUser.username,
role: CONSTANTS.CS_USER_ROLES.CONSUMER
});
@@ -190,7 +193,9 @@ describe('Comment', () => {
afterAll(async () => {
await apiService.loginWithProfile('admin');
await uploadActions.deleteFileOrFolder(pngUploadedFile.entry.id);
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
const sitesApi = new SitesApi(apiService.getInstance());
await sitesApi.deleteSite(site.entry.id, { permanent: true });
});
it('[C290147] Should NOT be able to add comments to a site file with Consumer permissions', async () => {

View File

@@ -29,7 +29,7 @@ import { ContentServicesPage } from '../../core/pages/content-services.page';
import { LockFilePage } from '../../content-services/pages/lock-file.page';
import { FileModel } from '../../models/ACS/file.model';
import { browser } from 'protractor';
import { NodeEntry } from '@alfresco/js-api';
import { NodeEntry, SitesApi } from '@alfresco/js-api';
import CONSTANTS = require('../../util/constants');
describe('Lock File', () => {
@@ -66,7 +66,9 @@ describe('Lock File', () => {
await apiService.login(adminUser.username, adminUser.password);
site = await apiService.getInstance().core.sitesApi.createSite({
const sitesApi = new SitesApi(apiService.getInstance());
site = await sitesApi.createSite({
title: StringUtil.generateRandomString(),
visibility: 'PRIVATE'
});
@@ -75,7 +77,7 @@ describe('Lock File', () => {
documentLibrary = resultNode.list.entries[0].entry.id;
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
await sitesApi.createSiteMembership(site.entry.id, {
id: managerUser.username,
role: CONSTANTS.CS_USER_ROLES.MANAGER
});
@@ -84,8 +86,8 @@ describe('Lock File', () => {
afterAll(async () => {
await apiService.loginWithProfile('admin');
try {
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
const sitesApi = new SitesApi(apiService.getInstance());
await sitesApi.deleteSite(site.entry.id, { permanent: true });
} catch (e) {
}
});

View File

@@ -35,6 +35,7 @@ import { UploadDialogPage } from '../../core/pages/dialog/upload-dialog.page';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { VersionManagePage } from '../../core/pages/version-manager.page';
import CONSTANTS = require('../../util/constants');
import { SitesApi } from '@alfresco/js-api';
describe('Permissions Component', () => {
@@ -104,33 +105,34 @@ describe('Permissions Component', () => {
folderName = `MEESEEKS_${StringUtil.generateRandomString(5)}`;
const publicSiteBody = { visibility: 'PUBLIC', title: publicSiteName };
const privateSiteBody = { visibility: 'PRIVATE', title: privateSiteName };
publicSite = await apiService.getInstance().core.sitesApi.createSite(publicSiteBody);
privateSite = await apiService.getInstance().core.sitesApi.createSite(privateSiteBody);
const sitesApi = new SitesApi(apiService.getInstance());
await apiService.getInstance().core.sitesApi.addSiteMember(publicSite.entry.id, {
publicSite = await sitesApi.createSite(publicSiteBody);
privateSite = await sitesApi.createSite(privateSiteBody);
await sitesApi.createSiteMembership(publicSite.entry.id, {
id: siteConsumerUser.username,
role: CONSTANTS.CS_USER_ROLES.CONSUMER
});
await apiService.getInstance().core.sitesApi.addSiteMember(publicSite.entry.id, {
await sitesApi.createSiteMembership(publicSite.entry.id, {
id: collaboratorUser.username,
role: CONSTANTS.CS_USER_ROLES.COLLABORATOR
});
await apiService.getInstance().core.sitesApi.addSiteMember(publicSite.entry.id, {
await sitesApi.createSiteMembership(publicSite.entry.id, {
id: contributorUser.username,
role: CONSTANTS.CS_USER_ROLES.CONTRIBUTOR
});
await apiService.getInstance().core.sitesApi.addSiteMember(publicSite.entry.id, {
await sitesApi.createSiteMembership(publicSite.entry.id, {
id: managerUser.username,
role: CONSTANTS.CS_USER_ROLES.MANAGER
});
await apiService.getInstance().core.sitesApi.addSiteMember(privateSite.entry.id, {
await sitesApi.createSiteMembership(privateSite.entry.id, {
id: managerUser.username,
role: CONSTANTS.CS_USER_ROLES.MANAGER
});
@@ -154,8 +156,10 @@ describe('Permissions Component', () => {
afterAll(async () => {
await apiService.loginWithProfile('admin');
await apiService.getInstance().core.sitesApi.deleteSite(publicSite.entry.id, { permanent: true });
await apiService.getInstance().core.sitesApi.deleteSite(privateSite.entry.id, { permanent: true });
const sitesApi = new SitesApi(apiService.getInstance());
await sitesApi.deleteSite(publicSite.entry.id, { permanent: true });
await sitesApi.deleteSite(privateSite.entry.id, { permanent: true });
});
describe('Role Site Dropdown', () => {
@@ -192,17 +196,17 @@ describe('Permissions Component', () => {
await permissionsPage.addPermissionsDialog.clickUserOrGroup(consumerUser.firstName);
await permissionsPage.addPermissionsDialog.checkUserIsAdded(consumerUser.username);
await expect(await permissionsPage.addPermissionsDialog.getRoleCellValue(consumerUser.username)).toEqual('SiteCollaborator');
await expect(await permissionsPage.addPermissionsDialog.getRoleCellValue(consumerUser.username)).toEqual(CONSTANTS.CS_USER_ROLES_I18N.COLLABORATOR);
await permissionsPage.addPermissionsDialog.clickRoleDropdownByUserOrGroupName(consumerUser.username);
const roleDropdownOptions = permissionsPage.addPermissionsDialog.getRoleDropdownOptions();
await expect(await roleDropdownOptions.count()).toBe(4);
await expect(await BrowserActions.getText(roleDropdownOptions.get(0))).toBe(CONSTANTS.CS_USER_ROLES.COLLABORATOR);
await expect(await BrowserActions.getText(roleDropdownOptions.get(1))).toBe(CONSTANTS.CS_USER_ROLES.CONSUMER);
await expect(await BrowserActions.getText(roleDropdownOptions.get(2))).toBe(CONSTANTS.CS_USER_ROLES.CONTRIBUTOR);
await expect(await BrowserActions.getText(roleDropdownOptions.get(3))).toBe(CONSTANTS.CS_USER_ROLES.MANAGER);
await expect(await BrowserActions.getText(roleDropdownOptions.get(0))).toBe(CONSTANTS.CS_USER_ROLES_I18N.COLLABORATOR);
await expect(await BrowserActions.getText(roleDropdownOptions.get(1))).toBe(CONSTANTS.CS_USER_ROLES_I18N.CONSUMER);
await expect(await BrowserActions.getText(roleDropdownOptions.get(2))).toBe(CONSTANTS.CS_USER_ROLES_I18N.CONTRIBUTOR);
await expect(await BrowserActions.getText(roleDropdownOptions.get(3))).toBe(CONSTANTS.CS_USER_ROLES_I18N.MANAGER);
});
});

View File

@@ -27,7 +27,7 @@ import {
UserModel,
UsersActions
} from '@alfresco/adf-testing';
import { NodeEntry } from '@alfresco/js-api';
import { NodeEntry, SitesApi } from '@alfresco/js-api';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { ContentServicesPage } from '../../core/pages/content-services.page';
import { ShareDialogPage } from '../../core/pages/dialog/share-dialog.page';
@@ -77,11 +77,13 @@ describe('Unshare file', () => {
}
};
shareFilesSite = await apiService.getInstance().core.sitesApi.createSite(site);
const sitesApi = new SitesApi(apiService.getInstance());
const docLibId = (await apiService.getInstance().core.sitesApi.getSiteContainers(siteName)).list.entries[0].entry.id;
shareFilesSite = await sitesApi.createSite(site);
const docLibId = (await sitesApi.listSiteContainers(siteName)).list.entries[0].entry.id;
const testFile1Id = (await apiService.getInstance().core.nodesApi.addNode(docLibId, nodeBody)).entry.id;
await apiService.getInstance().core.sitesApi.addSiteMember(siteName, {
await sitesApi.createSiteMembership(siteName, {
id: acsUser.username,
role: CONSTANTS.CS_USER_ROLES.CONSUMER
});
@@ -102,7 +104,9 @@ describe('Unshare file', () => {
afterAll(async () => {
await navigationBarPage.clickLogoutButton();
await apiService.getInstance().core.sitesApi.deleteSite(shareFilesSite.entry.id, { permanent: true });
const sitesApi = new SitesApi(apiService.getInstance());
await sitesApi.deleteSite(shareFilesSite.entry.id, { permanent: true });
});
describe('with permission', () => {