e2e api enhancements (part 1) (#1727)

* add typings, deprecate username wrapper

* improve imports

* unify admin actions for people

* remove auth api wrapper

* remove unused apis

* remove unused apis

* use admin api actions everywhere
This commit is contained in:
Denys Vuika
2020-10-07 10:40:20 +01:00
committed by GitHub
parent e5292eec52
commit d7367623f6
62 changed files with 403 additions and 511 deletions

View File

@@ -23,7 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, SearchResultsPage, RepoClient, Utils, FILES, SITE_VISIBILITY, SITE_ROLES } from '@alfresco/aca-testing-shared';
import { AdminActions, LoginPage, SearchResultsPage, RepoClient, Utils, FILES, SITE_VISIBILITY, SITE_ROLES } from '@alfresco/aca-testing-shared';
const moment = require('moment');
@@ -57,7 +57,6 @@ describe('Search filters', () => {
const expectedLocations = ['_REPOSITORY_ (1)', `${site} (1)`];
const apis = {
admin: new RepoClient(),
user1: new RepoClient(user1, user1),
user2: new RepoClient(user2, user2)
};
@@ -74,14 +73,15 @@ describe('Search filters', () => {
const locationFilter = filters.location;
const modifierFilter = filters.modifier;
const modifiedDateFilter = filters.modifiedDate;
const adminApiActions = new AdminActions();
beforeAll(async (done) => {
await apis.admin.people.createUser({ username: user1 });
await apis.admin.people.createUser({ username: user2 });
await adminApiActions.createUser({ username: user1 });
await adminApiActions.createUser({ username: user2 });
parentId = (await apis.user1.nodes.createFolder(parent)).entry.id;
await apis.user1.sites.createSite(site, SITE_VISIBILITY.PUBLIC);
await apis.user1.sites.addSiteMember(site, user2, SITE_ROLES.SITE_MANAGER.ROLE);
docLibId = await apis.admin.sites.getDocLibId(site);
docLibId = await adminApiActions.sites.getDocLibId(site);
await apis.user1.nodes.setGranularPermission(parentId, true, user2, 'Collaborator');

View File

@@ -23,7 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, SearchResultsPage, RepoClient, Utils } from '@alfresco/aca-testing-shared';
import { AdminActions, LoginPage, SearchResultsPage, RepoClient, Utils } from '@alfresco/aca-testing-shared';
const moment = require('moment');
describe('Search results - files and folders', () => {
@@ -46,7 +46,6 @@ describe('Search results - files and folders', () => {
const site = `test-site-${Utils.random()}`;
const apis = {
admin: new RepoClient(),
user: new RepoClient(username, username)
};
@@ -54,9 +53,10 @@ describe('Search results - files and folders', () => {
const page = new SearchResultsPage();
const { searchInput } = page.header;
const { dataTable, breadcrumb } = page;
const adminApiActions = new AdminActions();
beforeAll(async (done) => {
await apis.admin.people.createUser({ username });
await adminApiActions.createUser({ username });
fileId = (await apis.user.nodes.createFile(file, '-my-', fileTitle, fileDescription)).entry.id;
await apis.user.nodes.editNodeContent(fileId, 'edited by user');

View File

@@ -23,7 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, SearchResultsPage, RepoClient, Utils } from '@alfresco/aca-testing-shared';
import { AdminActions, LoginPage, SearchResultsPage, RepoClient, Utils } from '@alfresco/aca-testing-shared';
import { browser } from 'protractor';
describe('Search results general', () => {
@@ -36,7 +36,6 @@ describe('Search results general', () => {
const site = `test-site-${Utils.random()}`;
const apis = {
admin: new RepoClient(),
user: new RepoClient(username, username)
};
@@ -44,9 +43,10 @@ describe('Search results general', () => {
const page = new SearchResultsPage();
const { searchInput } = page.header;
const dataTable = page.dataTable;
const adminApiActions = new AdminActions();
beforeAll(async (done) => {
await apis.admin.people.createUser({ username });
await adminApiActions.createUser({ username });
fileId = (await apis.user.nodes.createFile(file)).entry.id;
folderId = (await apis.user.nodes.createFolder(folder)).entry.id;

View File

@@ -23,7 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, SearchResultsPage, RepoClient, Utils, SITE_VISIBILITY, SITE_ROLES } from '@alfresco/aca-testing-shared';
import { AdminActions, LoginPage, SearchResultsPage, RepoClient, Utils, SITE_VISIBILITY, SITE_ROLES } from '@alfresco/aca-testing-shared';
describe('Search results - libraries', () => {
const username = `user-${Utils.random()}`;
@@ -63,7 +63,6 @@ describe('Search results - libraries', () => {
const adminPrivate = `admin-site-${Utils.random()}`;
const apis = {
admin: new RepoClient(),
user: new RepoClient(username, username)
};
@@ -71,9 +70,10 @@ describe('Search results - libraries', () => {
const page = new SearchResultsPage();
const { searchInput } = page.header;
const dataTable = page.dataTable;
const adminApiActions = new AdminActions();
beforeAll(async (done) => {
await apis.admin.people.createUser({ username });
await adminApiActions.createUser({ username });
await apis.user.sites.createSite(site1.name, SITE_VISIBILITY.PUBLIC, '', site1.id);
await apis.user.sites.createSite(site2.name, SITE_VISIBILITY.PUBLIC, '', site2.id);
@@ -86,16 +86,16 @@ describe('Search results - libraries', () => {
await apis.user.sites.createSite(siteRussian.name, SITE_VISIBILITY.PUBLIC, '', siteRussian.id);
await apis.admin.sites.createSite(adminSite1, SITE_VISIBILITY.PUBLIC);
await apis.admin.sites.createSite(adminSite2, SITE_VISIBILITY.PUBLIC);
await apis.admin.sites.createSite(adminSite3, SITE_VISIBILITY.PUBLIC);
await apis.admin.sites.createSite(adminSite4, SITE_VISIBILITY.PUBLIC);
await apis.admin.sites.addSiteMember(adminSite1, username, SITE_ROLES.SITE_CONSUMER.ROLE);
await apis.admin.sites.addSiteMember(adminSite2, username, SITE_ROLES.SITE_CONTRIBUTOR.ROLE);
await apis.admin.sites.addSiteMember(adminSite3, username, SITE_ROLES.SITE_COLLABORATOR.ROLE);
await apis.admin.sites.addSiteMember(adminSite4, username, SITE_ROLES.SITE_MANAGER.ROLE);
await adminApiActions.sites.createSite(adminSite1, SITE_VISIBILITY.PUBLIC);
await adminApiActions.sites.createSite(adminSite2, SITE_VISIBILITY.PUBLIC);
await adminApiActions.sites.createSite(adminSite3, SITE_VISIBILITY.PUBLIC);
await adminApiActions.sites.createSite(adminSite4, SITE_VISIBILITY.PUBLIC);
await adminApiActions.sites.addSiteMember(adminSite1, username, SITE_ROLES.SITE_CONSUMER.ROLE);
await adminApiActions.sites.addSiteMember(adminSite2, username, SITE_ROLES.SITE_CONTRIBUTOR.ROLE);
await adminApiActions.sites.addSiteMember(adminSite3, username, SITE_ROLES.SITE_COLLABORATOR.ROLE);
await adminApiActions.sites.addSiteMember(adminSite4, username, SITE_ROLES.SITE_MANAGER.ROLE);
await apis.admin.sites.createSite(adminPrivate, SITE_VISIBILITY.PRIVATE);
await adminApiActions.sites.createSite(adminPrivate, SITE_VISIBILITY.PRIVATE);
await apis.user.sites.waitForApi({ expect: 12 });
await apis.user.queries.waitForSites('lib', { expect: 2 });
@@ -107,7 +107,7 @@ describe('Search results - libraries', () => {
afterAll(async (done) => {
await Promise.all([
apis.admin.sites.deleteSites([adminSite1, adminSite2, adminSite3, adminSite4, adminPrivate]),
adminApiActions.sites.deleteSites([adminSite1, adminSite2, adminSite3, adminSite4, adminPrivate]),
apis.user.sites.deleteSites([site1.id, site2.id, site3.id, site4.id, userSitePublic, userSiteModerated, userSitePrivate, siteRussian.id])
]);
done();

View File

@@ -23,7 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, SearchResultsPage, RepoClient, Utils, FILES } from '@alfresco/aca-testing-shared';
import { AdminActions, LoginPage, SearchResultsPage, RepoClient, Utils, FILES } from '@alfresco/aca-testing-shared';
describe('Search sorting', () => {
const random = Utils.random();
@@ -47,7 +47,6 @@ describe('Search sorting', () => {
};
const apis = {
admin: new RepoClient(),
user1: new RepoClient(user1, user1),
user2: new RepoClient(user2, user2)
};
@@ -56,10 +55,11 @@ describe('Search sorting', () => {
const page = new SearchResultsPage();
const { searchInput } = page.header;
const { dataTable } = page;
const adminApiActions = new AdminActions();
beforeAll(async (done) => {
await apis.admin.people.createUser({ username: user1 });
await apis.admin.people.createUser({ username: user2 });
await adminApiActions.createUser({ username: user1 });
await adminApiActions.createUser({ username: user2 });
parentId = (await apis.user1.nodes.createFolder(parent)).entry.id;
await apis.user1.nodes.setGranularPermission(parentId, true, user2, 'Collaborator');