diff --git a/e2e/content-services/comments/comment-component.e2e.ts b/e2e/content-services/comments/comment-component.e2e.ts index 18ea13ce28..1bce90171f 100644 --- a/e2e/content-services/comments/comment-component.e2e.ts +++ b/e2e/content-services/comments/comment-component.e2e.ts @@ -15,22 +15,17 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { CommentsPage } from '../../pages/adf/commentsPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; - import { browser } from 'protractor'; import resources = require('../../util/resources'); import CONSTANTS = require('../../util/constants'); -import { StringUtil } from '@alfresco/adf-testing'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; describe('Comment Component', () => { @@ -39,16 +34,19 @@ describe('Comment Component', () => { const viewerPage = new ViewerPage(); const commentsPage = new CommentsPage(); const navigationBar = new NavigationBarPage(); - const acsUser = new AcsUserModel(); + let userFullName, nodeId; + const pngFileModel = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.PNG.file_name, 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location }); - - const uploadActions = new UploadActions(); - let nodeId, userFullName; + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const comments = { first: 'This is a comment', @@ -64,11 +62,6 @@ describe('Comment Component', () => { beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -79,7 +72,7 @@ describe('Comment Component', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const pngUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, '-my-'); + const pngUploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, '-my-'); nodeId = pngUploadedFile.entry.id; @@ -96,7 +89,7 @@ describe('Comment Component', () => { afterEach(async (done) => { try { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, nodeId); + await uploadActions.deleteFileOrFolder(nodeId); } catch (error) { } @@ -193,9 +186,9 @@ describe('Comment Component', () => { role: CONSTANTS.CS_USER_ROLES.CONSUMER }); - pngUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, site.entry.guid); + pngUploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, site.entry.guid); - await loginPage.loginToContentServicesUsingUserModel(acsUser); + loginPage.loginToContentServicesUsingUserModel(acsUser); navigationBar.clickContentServicesButton(); @@ -203,10 +196,7 @@ describe('Comment Component', () => { }); afterAll((done) => { - try { - uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pngUploadedFile.entry.id); - } catch (error) { - } + uploadActions.deleteFileOrFolder(pngUploadedFile.entry.id); done(); }); diff --git a/e2e/content-services/directives/create-folder-directive.e2e.ts b/e2e/content-services/directives/create-folder-directive.e2e.ts index e98ecb84d8..66767a35a7 100644 --- a/e2e/content-services/directives/create-folder-directive.e2e.ts +++ b/e2e/content-services/directives/create-folder-directive.e2e.ts @@ -30,7 +30,6 @@ describe('Create folder directive', function () { const createFolderDialog = new CreateFolderDialog(); const notificationHistoryPage = new NotificationHistoryPage(); const metadataViewPage = new MetadataViewPage(); - const acsUser = new AcsUserModel(); beforeAll(async (done) => { diff --git a/e2e/content-services/directives/download-directive.e2e.ts b/e2e/content-services/directives/download-directive.e2e.ts index 0ea56b5e72..4254f303f1 100644 --- a/e2e/content-services/directives/download-directive.e2e.ts +++ b/e2e/content-services/directives/download-directive.e2e.ts @@ -18,13 +18,10 @@ import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; -import { LoginPage, FileBrowserUtil, BrowserVisibility } from '@alfresco/adf-testing'; - +import { LoginPage, UploadActions, BrowserVisibility, FileBrowserUtil } from '@alfresco/adf-testing'; import { browser } from 'protractor'; import resources = require('../../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { FolderModel } from '../../models/ACS/folderModel'; @@ -62,27 +59,26 @@ describe('Version component actions', () => { 'location': resources.Files.ADF_DOCUMENTS.TEXT_FOLDER.folder_location }); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); + beforeAll(async (done) => { - const uploadActions = new UploadActions(); - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - await uploadActions.uploadFile(this.alfrescoJsApi, txtFileModel.location, txtFileModel.name, '-my-'); - await uploadActions.uploadFile(this.alfrescoJsApi, file0BytesModel.location, file0BytesModel.name, '-my-'); - await uploadActions.uploadFile(this.alfrescoJsApi, txtFileComma.location, txtFileComma.name, '-my-'); + await uploadActions.uploadFile( txtFileModel.location, txtFileModel.name, '-my-'); + await uploadActions.uploadFile(file0BytesModel.location, file0BytesModel.name, '-my-'); + await uploadActions.uploadFile(txtFileComma.location, txtFileComma.name, '-my-'); - const textFolderUploaded = await uploadActions.createFolder(this.alfrescoJsApi, folderInfo.name, '-my-'); - await uploadActions.uploadFolder(this.alfrescoJsApi, folderInfo.location, textFolderUploaded.entry.id); + const textFolderUploaded = await uploadActions.createFolder(folderInfo.name, '-my-'); + await uploadActions.uploadFolder(folderInfo.location, textFolderUploaded.entry.id); - await uploadActions.createFolder(this.alfrescoJsApi, folderSecond.name, '-my-'); + await uploadActions.createFolder(folderSecond.name, '-my-'); await loginPage.loginToContentServicesUsingUserModel(acsUser); diff --git a/e2e/content-services/document-list/document-list-actions.e2e.ts b/e2e/content-services/document-list/document-list-actions.e2e.ts index 02668b400b..c2a35e7016 100644 --- a/e2e/content-services/document-list/document-list-actions.e2e.ts +++ b/e2e/content-services/document-list/document-list-actions.e2e.ts @@ -15,18 +15,19 @@ * limitations under the License. */ -import { browser } from 'protractor'; -import { LoginPage } from '@alfresco/adf-testing'; +import { browser, by, element } from 'protractor'; +import { LoginPage, PaginationPage, UploadActions, StringUtil, ContentNodeSelectorDialogPage } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import resources = require('../../util/resources'); import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { FileModel } from '../../models/ACS/fileModel'; -import { StringUtil } from '@alfresco/adf-testing'; import { Util } from '../../util/util'; -import { ContentNodeSelectorDialogPage } from '@alfresco/adf-testing'; +import { BreadCrumbDropdownPage } from '../../pages/adf/content-services/breadcrumb/breadCrumbDropdownPage'; +import { BreadCrumbPage } from '../../pages/adf/content-services/breadcrumb/breadCrumbPage'; +import { InfinitePaginationPage } from '../../pages/adf/core/infinitePaginationPage'; +import { FolderModel } from '../../models/ACS/folderModel'; describe('Document List Component - Actions', () => { @@ -35,12 +36,15 @@ describe('Document List Component - Actions', () => { const navigationBarPage = new NavigationBarPage(); const contentListPage = contentServicesPage.getDocumentList(); const contentNodeSelector = new ContentNodeSelectorDialogPage(); - const uploadActions = new UploadActions(); - - const alfrescoJsApi = new AlfrescoApi({ + const paginationPage = new PaginationPage(); + const breadCrumbDropdownPage = new BreadCrumbDropdownPage(); + const breadCrumbPage = new BreadCrumbPage(); + this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + const uploadActions = new UploadActions(this.alfrescoJsApi); + const infinitePaginationPage = new InfinitePaginationPage(element(by.css('adf-content-node-selector'))); describe('Document List Component - Check Actions', () => { @@ -68,20 +72,20 @@ describe('Document List Component - Actions', () => { beforeAll(async (done) => { acsUser = new AcsUserModel(); folderName = `TATSUMAKY_${StringUtil.generateRandomString(5)}_SENPOUKYAKU`; - await alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await alfrescoJsApi.core.peopleApi.addPerson(acsUser); - await alfrescoJsApi.login(acsUser.id, acsUser.password); - pdfUploadedNode = await uploadActions.uploadFile(alfrescoJsApi, pdfFileModel.location, pdfFileModel.name, '-my-'); - await uploadActions.uploadFile(alfrescoJsApi, testFileModel.location, testFileModel.name, '-my-'); - uploadedFolder = await uploadActions.createFolder(alfrescoJsApi, folderName, '-my-'); - secondUploadedFolder = await uploadActions.createFolder(alfrescoJsApi, 'secondFolder', '-my-'); + await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); + await this.alfrescoJsApi.login(acsUser.id, acsUser.password); + pdfUploadedNode = await uploadActions.uploadFile(pdfFileModel.location, pdfFileModel.name, '-my-'); + await uploadActions.uploadFile(testFileModel.location, testFileModel.name, '-my-'); + uploadedFolder = await uploadActions.createFolder(folderName, '-my-'); + secondUploadedFolder = await uploadActions.createFolder('secondFolder', '-my-'); fileNames = Util.generateSequenceFiles(1, nrOfFiles, files.base, files.extension); - await uploadActions.createEmptyFiles(alfrescoJsApi, fileNames, uploadedFolder.entry.id); + await uploadActions.createEmptyFiles(fileNames, uploadedFolder.entry.id); await loginPage.loginToContentServicesUsingUserModel(acsUser); - await browser.driver.sleep(15000); + browser.driver.sleep(10000); done(); }); @@ -94,10 +98,8 @@ describe('Document List Component - Actions', () => { it('[C213257] Should be able to copy a file', () => { contentServicesPage.checkContentIsDisplayed(pdfUploadedNode.entry.name); - contentServicesPage.getDocumentList().rightClickOnRow(pdfFileModel.name); contentServicesPage.pressContextMenuActionNamed('Copy'); - contentNodeSelector.checkDialogIsDisplayed(); contentNodeSelector.typeIntoNodeSelectorSearchField(folderName); contentNodeSelector.clickContentNodeSelectorResult(folderName); @@ -205,4 +207,147 @@ describe('Document List Component - Actions', () => { }); }); + + describe('Folder Actions - Copy and Move', () => { + + const folderModel1 = new FolderModel({'name': StringUtil.generateRandomString()}); + const folderModel2 = new FolderModel({'name': StringUtil.generateRandomString()}); + const folderModel3 = new FolderModel({'name': StringUtil.generateRandomString()}); + const folderModel4 = new FolderModel({'name': StringUtil.generateRandomString()}); + const folderModel5 = new FolderModel({'name': StringUtil.generateRandomString()}); + const folderModel6 = new FolderModel({'name': StringUtil.generateRandomString()}); + + let folder1, folder2, folder3, folder4, folder5, folder6; + + let folders; + const contentServicesUser = new AcsUserModel(); + + beforeAll(async (done) => { + + await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await this.alfrescoJsApi.core.peopleApi.addPerson(contentServicesUser); + await this.alfrescoJsApi.login(contentServicesUser.id, contentServicesUser.password); + folder1 = await uploadActions.createFolder('A' + folderModel1.name, '-my-'); + folder2 = await uploadActions.createFolder('B' + folderModel2.name, '-my-'); + folder3 = await uploadActions.createFolder('C' + folderModel3.name, '-my-'); + folder4 = await uploadActions.createFolder('D' + folderModel4.name, '-my-'); + folder5 = await uploadActions.createFolder('E' + folderModel5.name, '-my-'); + folder6 = await uploadActions.createFolder('F' + folderModel6.name, '-my-'); + folders = [folder1, folder2, folder3, folder4, folder5, folder6]; + done(); + }); + + beforeEach(async (done) => { + loginPage.loginToContentServicesUsingUserModel(contentServicesUser); + contentServicesPage.goToDocumentList(); + contentServicesPage.waitForTableBody(); + paginationPage.selectItemsPerPage('5'); + contentServicesPage.checkAcsContainer(); + contentListPage.waitForTableBody(); + done(); + }); + + afterAll(async (done) => { + await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await folders.forEach(function (folder) { + uploadActions.deleteFileOrFolder(folder.entry.id); + }); + done(); + }); + + it('[C260132] Move action on folder with - Load more', () => { + + expect(paginationPage.getCurrentItemsPerPage()).toEqual('5'); + expect(paginationPage.getPaginationRange()).toEqual('Showing 1-' + 5 + ' of ' + 6); + contentListPage.rightClickOnRow('A' + folderModel1.name); + contentServicesPage.checkContextActionIsVisible('Move'); + contentServicesPage.pressContextMenuActionNamed('Move'); + contentNodeSelector.checkDialogIsDisplayed(); + expect(contentNodeSelector.getDialogHeaderText()).toBe('Move \'' + 'A' + folderModel1.name + '\' to...'); + contentNodeSelector.checkSearchInputIsDisplayed(); + expect(contentNodeSelector.getSearchLabel()).toBe('Search'); + contentNodeSelector.checkSelectedSiteIsDisplayed('My files'); + contentNodeSelector.checkCancelButtonIsDisplayed(); + contentNodeSelector.checkMoveCopyButtonIsDisplayed(); + expect(contentNodeSelector.getMoveCopyButtonText()).toBe('MOVE'); + expect(contentNodeSelector.numberOfResultsDisplayed()).toBe(5); + infinitePaginationPage.clickLoadMoreButton(); + expect(contentNodeSelector.numberOfResultsDisplayed()).toBe(6); + infinitePaginationPage.checkLoadMoreButtonIsNotDisplayed(); + contentNodeSelector.contentListPage().dataTablePage().selectRowByContent('F' + folderModel6.name); + contentNodeSelector.contentListPage().dataTablePage().checkRowByContentIsSelected('F' + folderModel6.name); + contentNodeSelector.clickCancelButton(); + contentNodeSelector.checkDialogIsNotDisplayed(); + contentServicesPage.checkContentIsDisplayed('A' + folderModel1.name); + + contentListPage.rightClickOnRow('A' + folderModel1.name); + contentServicesPage.checkContextActionIsVisible('Move'); + contentServicesPage.pressContextMenuActionNamed('Move'); + contentNodeSelector.checkDialogIsDisplayed(); + infinitePaginationPage.clickLoadMoreButton(); + contentNodeSelector.contentListPage().dataTablePage().selectRowByContent('F' + folderModel6.name); + contentNodeSelector.contentListPage().dataTablePage().checkRowByContentIsSelected('F' + folderModel6.name); + contentNodeSelector.clickMoveCopyButton(); + contentServicesPage.checkContentIsNotDisplayed('A' + folderModel1.name); + contentServicesPage.doubleClickRow('F' + folderModel6.name); + contentServicesPage.checkContentIsDisplayed('A' + folderModel1.name); + + contentListPage.rightClickOnRow('A' + folderModel1.name); + contentServicesPage.checkContextActionIsVisible('Move'); + contentServicesPage.pressContextMenuActionNamed('Move'); + contentNodeSelector.checkDialogIsDisplayed(); + breadCrumbDropdownPage.clickParentFolder(); + breadCrumbDropdownPage.checkBreadCrumbDropdownIsDisplayed(); + breadCrumbDropdownPage.choosePath(contentServicesUser.id); + contentNodeSelector.clickMoveCopyButton(); + contentServicesPage.checkContentIsNotDisplayed('A' + folderModel1.name); + + breadCrumbPage.chooseBreadCrumb(contentServicesUser.id); + contentServicesPage.waitForTableBody(); + contentServicesPage.checkContentIsDisplayed('A' + folderModel1.name); + + }); + + it('[C305051] Copy action on folder with - Load more', () => { + + expect(paginationPage.getCurrentItemsPerPage()).toEqual('5'); + expect(paginationPage.getPaginationRange()).toEqual('Showing 1-' + 5 + ' of ' + 6); + contentListPage.rightClickOnRow('A' + folderModel1.name); + contentServicesPage.checkContextActionIsVisible('Copy'); + contentServicesPage.pressContextMenuActionNamed('Copy'); + contentNodeSelector.checkDialogIsDisplayed(); + expect(contentNodeSelector.getDialogHeaderText()).toBe('Copy \'' + 'A' + folderModel1.name + '\' to...'); + contentNodeSelector.checkSearchInputIsDisplayed(); + expect(contentNodeSelector.getSearchLabel()).toBe('Search'); + contentNodeSelector.checkSelectedSiteIsDisplayed('My files'); + contentNodeSelector.checkCancelButtonIsDisplayed(); + contentNodeSelector.checkMoveCopyButtonIsDisplayed(); + expect(contentNodeSelector.getMoveCopyButtonText()).toBe('COPY'); + expect(contentNodeSelector.numberOfResultsDisplayed()).toBe(5); + infinitePaginationPage.clickLoadMoreButton(); + expect(contentNodeSelector.numberOfResultsDisplayed()).toBe(6); + infinitePaginationPage.checkLoadMoreButtonIsNotDisplayed(); + contentNodeSelector.contentListPage().dataTablePage().selectRowByContent('F' + folderModel6.name); + contentNodeSelector.contentListPage().dataTablePage().checkRowByContentIsSelected('F' + folderModel6.name); + contentNodeSelector.clickCancelButton(); + contentNodeSelector.checkDialogIsNotDisplayed(); + contentServicesPage.checkContentIsDisplayed('A' + folderModel1.name); + + contentListPage.rightClickOnRow('A' + folderModel1.name); + contentServicesPage.checkContextActionIsVisible('Copy'); + contentServicesPage.pressContextMenuActionNamed('Copy'); + contentNodeSelector.checkDialogIsDisplayed(); + infinitePaginationPage.clickLoadMoreButton(); + contentNodeSelector.contentListPage().dataTablePage().selectRowByContent('F' + folderModel6.name); + contentNodeSelector.contentListPage().dataTablePage().checkRowByContentIsSelected('F' + folderModel6.name); + contentNodeSelector.clickMoveCopyButton(); + contentServicesPage.checkContentIsDisplayed('A' + folderModel1.name); + paginationPage.clickOnNextPage(); + contentListPage.waitForTableBody(); + contentServicesPage.doubleClickRow('F' + folderModel6.name); + contentServicesPage.checkContentIsDisplayed('A' + folderModel1.name); + + }); + + }); }); diff --git a/e2e/content-services/document-list/document-list-component.e2e.ts b/e2e/content-services/document-list/document-list-component.e2e.ts index fa1cb77011..ac276c8d31 100644 --- a/e2e/content-services/document-list/document-list-component.e2e.ts +++ b/e2e/content-services/document-list/document-list-component.e2e.ts @@ -20,9 +20,8 @@ import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { browser } from 'protractor'; import resources = require('../../util/resources'); -import { LoginPage, StringUtil } from '@alfresco/adf-testing'; +import { LoginPage, StringUtil, UploadActions } from '@alfresco/adf-testing'; import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { FileModel } from '../../models/ACS/fileModel'; import moment from 'moment-es6'; @@ -31,33 +30,30 @@ describe('Document List Component', () => { const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); let uploadedFolder, uploadedFolderExtra; - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let acsUser = null; let testFileNode, pdfBFileNode; - beforeAll(() => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - }); - afterEach(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); if (uploadedFolder) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, uploadedFolder.entry.id); + await uploadActions.deleteFileOrFolder(uploadedFolder.entry.id); uploadedFolder = null; } if (uploadedFolderExtra) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, uploadedFolderExtra.entry.id); + await uploadActions.deleteFileOrFolder(uploadedFolderExtra.entry.id); uploadedFolderExtra = null; } if (testFileNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, testFileNode.entry.id); + await uploadActions.deleteFileOrFolder(testFileNode.entry.id); testFileNode = null; } if (pdfBFileNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pdfBFileNode.entry.id); + await uploadActions.deleteFileOrFolder(pdfBFileNode.entry.id); pdfBFileNode = null; } done(); @@ -97,9 +93,9 @@ describe('Document List Component', () => { await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - uploadedFolder = await uploadActions.createFolder(this.alfrescoJsApi, folderName, '-my-'); - pdfUploadedNode = await uploadActions.uploadFile(this.alfrescoJsApi, pdfFileModel.location, pdfFileModel.name, '-my-'); - docxUploadedNode = await uploadActions.uploadFile(this.alfrescoJsApi, docxFileModel.location, docxFileModel.name, '-my-'); + uploadedFolder = await uploadActions.createFolder(folderName, '-my-'); + pdfUploadedNode = await uploadActions.uploadFile(pdfFileModel.location, pdfFileModel.name, '-my-'); + docxUploadedNode = await uploadActions.uploadFile(docxFileModel.location, docxFileModel.name, '-my-'); done(); }); @@ -107,16 +103,16 @@ describe('Document List Component', () => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); if (pdfUploadedNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pdfUploadedNode.entry.id); + await uploadActions.deleteFileOrFolder(pdfUploadedNode.entry.id); } if (docxUploadedNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, docxUploadedNode.entry.id); + await uploadActions.deleteFileOrFolder(docxUploadedNode.entry.id); } if (timeAgoUploadedNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, timeAgoUploadedNode.entry.id); + await uploadActions.deleteFileOrFolder(timeAgoUploadedNode.entry.id); } if (mediumDateUploadedNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, mediumDateUploadedNode.entry.id); + await uploadActions.deleteFileOrFolder(mediumDateUploadedNode.entry.id); } done(); }); @@ -144,7 +140,7 @@ describe('Document List Component', () => { it('[C279928] Should be able to display date with timeAgo', async (done) => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - timeAgoUploadedNode = await uploadActions.uploadFile(this.alfrescoJsApi, timeAgoFileModel.location, timeAgoFileModel.name, '-my-'); + timeAgoUploadedNode = await uploadActions.uploadFile(timeAgoFileModel.location, timeAgoFileModel.name, '-my-'); contentServicesPage.goToDocumentList(); const dateValue = contentServicesPage.getColumnValueForRow(timeAgoFileModel.name, 'Created'); expect(dateValue).toMatch(/(ago|few)/); @@ -153,7 +149,7 @@ describe('Document List Component', () => { it('[C279929] Should be able to display the date with date type', async (done) => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - mediumDateUploadedNode = await uploadActions.uploadFile(this.alfrescoJsApi, mediumFileModel.location, mediumFileModel.name, '-my-'); + mediumDateUploadedNode = await uploadActions.uploadFile(mediumFileModel.location, mediumFileModel.name, '-my-'); const createdDate = moment(mediumDateUploadedNode.createdAt).format('ll'); contentServicesPage.goToDocumentList(); contentServicesPage.enableMediumTimeFormat(); @@ -191,9 +187,9 @@ describe('Document List Component', () => { await this.alfrescoJsApi.core.peopleApi.addPerson(user); await this.alfrescoJsApi.login(user.id, user.password); - fileANode = await uploadActions.uploadFile(this.alfrescoJsApi, fakeFileA.location, fakeFileA.name, '-my-'); - fileBNode = await uploadActions.uploadFile(this.alfrescoJsApi, fakeFileB.location, fakeFileB.name, '-my-'); - fileCNode = await uploadActions.uploadFile(this.alfrescoJsApi, fakeFileC.location, fakeFileC.name, '-my-'); + fileANode = await uploadActions.uploadFile(fakeFileA.location, fakeFileA.name, '-my-'); + fileBNode = await uploadActions.uploadFile(fakeFileB.location, fakeFileB.name, '-my-'); + fileCNode = await uploadActions.uploadFile(fakeFileC.location, fakeFileC.name, '-my-'); await loginPage.loginToContentServicesUsingUserModel(user); contentServicesPage.goToDocumentList(); @@ -204,13 +200,13 @@ describe('Document List Component', () => { afterAll(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); if (fileANode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileANode.entry.id); + await uploadActions.deleteFileOrFolder(fileANode.entry.id); } if (fileBNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileBNode.entry.id); + await uploadActions.deleteFileOrFolder(fileBNode.entry.id); } if (fileCNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileCNode.entry.id); + await uploadActions.deleteFileOrFolder(fileCNode.entry.id); } done(); }); @@ -276,7 +272,7 @@ describe('Document List Component', () => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - uploadedFolder = await uploadActions.createFolder(this.alfrescoJsApi, folderName, '-my-'); + uploadedFolder = await uploadActions.createFolder(folderName, '-my-'); await loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); contentServicesPage.checkContentIsDisplayed(uploadedFolder.entry.name); @@ -308,8 +304,8 @@ describe('Document List Component', () => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - uploadedFolder = await uploadActions.createFolder(this.alfrescoJsApi, folderNameA, '-my-'); - uploadedFolderExtra = await uploadActions.createFolder(this.alfrescoJsApi, folderNameB, '-my-'); + uploadedFolder = await uploadActions.createFolder(folderNameA, '-my-'); + uploadedFolderExtra = await uploadActions.createFolder(folderNameB, '-my-'); await loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); contentServicesPage.checkContentIsDisplayed(folderNameA); @@ -332,8 +328,8 @@ describe('Document List Component', () => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - testFileNode = await uploadActions.uploadFile(this.alfrescoJsApi, testFileA.location, testFileA.name, '-my-'); - pdfBFileNode = await uploadActions.uploadFile(this.alfrescoJsApi, testFileB.location, testFileB.name, '-my-'); + testFileNode = await uploadActions.uploadFile(testFileA.location, testFileA.name, '-my-'); + pdfBFileNode = await uploadActions.uploadFile(testFileB.location, testFileB.name, '-my-'); await loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); contentServicesPage.checkContentIsDisplayed(testFileA.name); @@ -357,7 +353,7 @@ describe('Document List Component', () => { let folder = null; for (let i = 0; i < 20; i++) { folderName = `MEESEEKS_000${i}`; - folder = await uploadActions.createFolder(this.alfrescoJsApi, folderName, '-my-'); + folder = await uploadActions.createFolder(folderName, '-my-'); folderCreated.push(folder); } done(); @@ -365,7 +361,7 @@ describe('Document List Component', () => { afterAll(async (done) => { Promise.all(folderCreated.map((folder) => - uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, folder.entry.id) + uploadActions.deleteFileOrFolder(folder.entry.id) )).then(() => { done(); }); @@ -395,7 +391,7 @@ describe('Document List Component', () => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - file = await uploadActions.uploadFile(this.alfrescoJsApi, file0BytesModel.location, file0BytesModel.name, '-my-'); + file = await uploadActions.uploadFile(file0BytesModel.location, file0BytesModel.name, '-my-'); await loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList() diff --git a/e2e/content-services/document-list/document-list-copy-move.e2e.ts b/e2e/content-services/document-list/document-list-copy-move.e2e.ts index 393ae01a56..3c34a8f210 100644 --- a/e2e/content-services/document-list/document-list-copy-move.e2e.ts +++ b/e2e/content-services/document-list/document-list-copy-move.e2e.ts @@ -16,13 +16,10 @@ */ import { by, element, browser } from 'protractor'; -import { LoginPage, PaginationPage } from '@alfresco/adf-testing'; +import { LoginPage, PaginationPage, UploadActions, ContentNodeSelectorDialogPage, StringUtil } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; -import { StringUtil } from '@alfresco/adf-testing'; -import { ContentNodeSelectorDialogPage } from '@alfresco/adf-testing'; import { BreadCrumbDropdownPage } from '../../pages/adf/content-services/breadcrumb/breadCrumbDropdownPage'; import { FolderModel } from '../../models/ACS/folderModel'; import { BreadCrumbPage } from '../../pages/adf/content-services/breadcrumb/breadCrumbPage'; @@ -37,13 +34,13 @@ describe('Document List Component - Actions', () => { const paginationPage = new PaginationPage(); const breadCrumbDropdownPage = new BreadCrumbDropdownPage(); const breadCrumbPage = new BreadCrumbPage(); - const uploadActions = new UploadActions(); const infinitePaginationPage = new InfinitePaginationPage(element(by.css('adf-content-node-selector'))); const alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + const uploadActions = new UploadActions(alfrescoJsApi); describe('Folder Actions - Copy and Move', () => { @@ -64,12 +61,12 @@ describe('Document List Component - Actions', () => { await alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await alfrescoJsApi.core.peopleApi.addPerson(contentServicesUser); await alfrescoJsApi.login(contentServicesUser.id, contentServicesUser.password); - folder1 = await uploadActions.createFolder(alfrescoJsApi, 'A' + folderModel1.name, '-my-'); - folder2 = await uploadActions.createFolder(alfrescoJsApi, 'B' + folderModel2.name, '-my-'); - folder3 = await uploadActions.createFolder(alfrescoJsApi, 'C' + folderModel3.name, '-my-'); - folder4 = await uploadActions.createFolder(alfrescoJsApi, 'D' + folderModel4.name, '-my-'); - folder5 = await uploadActions.createFolder(alfrescoJsApi, 'E' + folderModel5.name, '-my-'); - folder6 = await uploadActions.createFolder(alfrescoJsApi, 'F' + folderModel6.name, '-my-'); + folder1 = await uploadActions.createFolder('A' + folderModel1.name, '-my-'); + folder2 = await uploadActions.createFolder('B' + folderModel2.name, '-my-'); + folder3 = await uploadActions.createFolder('C' + folderModel3.name, '-my-'); + folder4 = await uploadActions.createFolder('D' + folderModel4.name, '-my-'); + folder5 = await uploadActions.createFolder('E' + folderModel5.name, '-my-'); + folder6 = await uploadActions.createFolder('F' + folderModel6.name, '-my-'); folders = [folder1, folder2, folder3, folder4, folder5, folder6]; await loginPage.loginToContentServicesUsingUserModel(contentServicesUser); @@ -85,7 +82,7 @@ describe('Document List Component - Actions', () => { afterAll(async (done) => { await alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await folders.forEach(function (folder) { - uploadActions.deleteFilesOrFolder(alfrescoJsApi, folder.entry.id); + uploadActions.deleteFileOrFolder(folder.entry.id); }); done(); }); diff --git a/e2e/content-services/document-list/document-list-gallery.e2e.ts b/e2e/content-services/document-list/document-list-gallery.e2e.ts index 78bff62914..9425d362fd 100644 --- a/e2e/content-services/document-list/document-list-gallery.e2e.ts +++ b/e2e/content-services/document-list/document-list-gallery.e2e.ts @@ -19,9 +19,8 @@ import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { browser } from 'protractor'; import resources = require('../../util/resources'); -import { LoginPage, StringUtil } from '@alfresco/adf-testing'; +import { LoginPage, StringUtil, UploadActions } from '@alfresco/adf-testing'; import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { FileModel } from '../../models/ACS/fileModel'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; @@ -29,16 +28,13 @@ describe('Document List Component', () => { const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); - let acsUser = null; - const navBar = new NavigationBarPage(); - - beforeAll(() => { - this.alfrescoJsApi = new AlfrescoApi({ + this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); - }); + const uploadActions = new UploadActions(this.alfrescoJsApi); + let acsUser = null; + const navBar = new NavigationBarPage(); describe('Gallery View', () => { @@ -74,11 +70,11 @@ describe('Document List Component', () => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); funnyUser = await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - filePdfNode = await uploadActions.uploadFile(this.alfrescoJsApi, pdfFile.location, pdfFile.name, '-my-'); - fileTestNode = await uploadActions.uploadFile(this.alfrescoJsApi, testFile.location, testFile.name, '-my-'); - fileDocxNode = await uploadActions.uploadFile(this.alfrescoJsApi, docxFile.location, docxFile.name, '-my-'); - folderNode = await uploadActions.createFolder(this.alfrescoJsApi, folderName, '-my-'); - filePDFSubNode = await uploadActions.uploadFile(this.alfrescoJsApi, pdfFile.location, pdfFile.name, folderNode.entry.id); + filePdfNode = await uploadActions.uploadFile(pdfFile.location, pdfFile.name, '-my-'); + fileTestNode = await uploadActions.uploadFile(testFile.location, testFile.name, '-my-'); + fileDocxNode = await uploadActions.uploadFile(docxFile.location, docxFile.name, '-my-'); + folderNode = await uploadActions.createFolder(folderName, '-my-'); + filePDFSubNode = await uploadActions.uploadFile(pdfFile.location, pdfFile.name, folderNode.entry.id); await loginPage.loginToContentServicesUsingUserModel(acsUser); @@ -174,19 +170,19 @@ describe('Document List Component', () => { afterAll(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); if (filePdfNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, filePdfNode.entry.id); + await uploadActions.deleteFileOrFolder(filePdfNode.entry.id); } if (fileTestNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileTestNode.entry.id); + await uploadActions.deleteFileOrFolder(fileTestNode.entry.id); } if (fileDocxNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileDocxNode.entry.id); + await uploadActions.deleteFileOrFolder(fileDocxNode.entry.id); } if (filePDFSubNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, filePDFSubNode.entry.id); + await uploadActions.deleteFileOrFolder(filePDFSubNode.entry.id); } if (folderNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, folderNode.entry.id); + await uploadActions.deleteFileOrFolder(folderNode.entry.id); } done(); }); diff --git a/e2e/content-services/document-list/document-list-pagination.e2e.ts b/e2e/content-services/document-list/document-list-pagination.e2e.ts index 45d6480a54..4fd9632ff6 100644 --- a/e2e/content-services/document-list/document-list-pagination.e2e.ts +++ b/e2e/content-services/document-list/document-list-pagination.e2e.ts @@ -15,18 +15,14 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, PaginationPage } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; -import { PaginationPage } from '@alfresco/adf-testing'; - +import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FolderModel } from '../../models/ACS/folderModel'; - import { Util } from '../../util/util'; - -import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { browser } from 'protractor'; +import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; describe('Document List - Pagination', function () { const pagination = { @@ -50,6 +46,7 @@ describe('Document List - Pagination', function () { const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); const paginationPage = new PaginationPage(); + const navigationBarPage = new NavigationBarPage(); const acsUser = new AcsUserModel(); const newFolderModel = new FolderModel({ 'name': 'newFolder' }); @@ -60,17 +57,15 @@ describe('Document List - Pagination', function () { const secondSetNumber = 25; const folderTwoModel = new FolderModel({ 'name': 'folderTwo' }); const folderThreeModel = new FolderModel({ 'name': 'folderThree' }); - - beforeAll(async (done) => { - const uploadActions = new UploadActions(); - - fileNames = Util.generateSequenceFiles(10, nrOfFiles + 9, pagination.base, pagination.extension); - secondSetOfFiles = Util.generateSequenceFiles(10, secondSetNumber + 9, pagination.secondSetBase, pagination.extension); - - this.alfrescoJsApi = new AlfrescoApi({ + this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + const uploadActions = new UploadActions(this.alfrescoJsApi); + + beforeAll(async (done) => { + fileNames = Util.generateSequenceFiles(10, nrOfFiles + 9, pagination.base, pagination.extension); + secondSetOfFiles = Util.generateSequenceFiles(10, secondSetNumber + 9, pagination.secondSetBase, pagination.extension); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); @@ -78,14 +73,14 @@ describe('Document List - Pagination', function () { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const folderThreeUploadedModel = await uploadActions.createFolder(this.alfrescoJsApi, folderThreeModel.name, '-my-'); - const newFolderUploadedModel = await uploadActions.createFolder(this.alfrescoJsApi, newFolderModel.name, '-my-'); + const folderThreeUploadedModel = await uploadActions.createFolder(folderThreeModel.name, '-my-'); + const newFolderUploadedModel = await uploadActions.createFolder(newFolderModel.name, '-my-'); - await uploadActions.createEmptyFiles(this.alfrescoJsApi, fileNames, newFolderUploadedModel.entry.id); + await uploadActions.createEmptyFiles(fileNames, newFolderUploadedModel.entry.id); - await uploadActions.createEmptyFiles(this.alfrescoJsApi, secondSetOfFiles, folderThreeUploadedModel.entry.id); + await uploadActions.createEmptyFiles(secondSetOfFiles, folderThreeUploadedModel.entry.id); - await loginPage.loginToContentServicesUsingUserModel(acsUser); + loginPage.loginToContentServicesUsingUserModel(acsUser); done(); }); @@ -127,9 +122,14 @@ describe('Document List - Pagination', function () { paginationPage.checkNextPageButtonIsDisabled(); paginationPage.checkPreviousPageButtonIsDisabled(); - browser.refresh(); + navigationBarPage.clickLogoutButton(); + loginPage.loginToContentServicesUsingUserModel(acsUser); + contentServicesPage.goToDocumentList(); + contentServicesPage.checkAcsContainer(); contentServicesPage.waitForTableBody(); expect(paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.twenty); + navigationBarPage.clickLogoutButton(); + loginPage.loginToContentServicesUsingUserModel(acsUser); }); it('[C260069] Should be able to set Items per page to 5', () => { @@ -180,6 +180,8 @@ describe('Document List - Pagination', function () { contentServicesPage.checkAcsContainer(); contentServicesPage.waitForTableBody(); expect(paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.five); + navigationBarPage.clickLogoutButton(); + loginPage.loginToContentServicesUsingUserModel(acsUser); }); it('[C260067] Should be able to set Items per page to 10', () => { @@ -210,6 +212,9 @@ describe('Document List - Pagination', function () { browser.refresh(); contentServicesPage.waitForTableBody(); expect(paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.ten); + navigationBarPage.clickLogoutButton(); + loginPage.loginToContentServicesUsingUserModel(acsUser); + currentPage = 1; }); it('[C260065] Should be able to set Items per page to 15', () => { diff --git a/e2e/content-services/document-list/document-list-properties.e2e.ts b/e2e/content-services/document-list/document-list-properties.e2e.ts index 77af75232c..42c723bb6c 100644 --- a/e2e/content-services/document-list/document-list-properties.e2e.ts +++ b/e2e/content-services/document-list/document-list-properties.e2e.ts @@ -15,16 +15,13 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { browser } from 'protractor'; import resources = require('../../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { DropActions } from '../../actions/drop.actions'; import { FileModel } from '../../models/ACS/fileModel'; @@ -35,7 +32,11 @@ describe('Document List Component - Properties', () => { const navigationBar = new NavigationBarPage(); let subFolder, parentFolder; - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let acsUser = null; const pngFile = new FileModel({ @@ -43,13 +44,6 @@ describe('Document List Component - Properties', () => { 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location }); - beforeAll(() => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - }); - describe('Allow drop files property', async () => { beforeEach(async (done) => { @@ -61,9 +55,9 @@ describe('Document List Component - Properties', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - parentFolder = await uploadActions.createFolder(this.alfrescoJsApi, 'parentFolder', '-my-'); + parentFolder = await uploadActions.createFolder('parentFolder', '-my-'); - subFolder = await uploadActions.createFolder(this.alfrescoJsApi, 'subFolder', parentFolder.entry.id); + subFolder = await uploadActions.createFolder('subFolder', parentFolder.entry.id); await loginPage.loginToContentServicesUsingUserModel(acsUser); @@ -72,8 +66,8 @@ describe('Document List Component - Properties', () => { afterEach(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, subFolder.entry.id); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, parentFolder.entry.id); + await uploadActions.deleteFileOrFolder(subFolder.entry.id); + await uploadActions.deleteFileOrFolder(parentFolder.entry.id); done(); }); diff --git a/e2e/content-services/document-list/document-list-thumbnails-tooltips.e2e.ts b/e2e/content-services/document-list/document-list-thumbnails-tooltips.e2e.ts index efdeef6f6c..afa17a2dd3 100644 --- a/e2e/content-services/document-list/document-list-thumbnails-tooltips.e2e.ts +++ b/e2e/content-services/document-list/document-list-thumbnails-tooltips.e2e.ts @@ -19,9 +19,8 @@ import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { browser } from 'protractor'; import resources = require('../../util/resources'); -import { LoginPage, StringUtil } from '@alfresco/adf-testing'; +import { LoginPage, StringUtil, UploadActions } from '@alfresco/adf-testing'; import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { FileModel } from '../../models/ACS/fileModel'; describe('Document List Component', () => { @@ -29,33 +28,30 @@ describe('Document List Component', () => { const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); let uploadedFolder, uploadedFolderExtra; - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let acsUser = null; let testFileNode, pdfBFileNode; - beforeAll(() => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - }); - afterEach(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); if (uploadedFolder) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, uploadedFolder.entry.id); + await uploadActions.deleteFileOrFolder(uploadedFolder.entry.id); uploadedFolder = null; } if (uploadedFolderExtra) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, uploadedFolderExtra.entry.id); + await uploadActions.deleteFileOrFolder(uploadedFolderExtra.entry.id); uploadedFolderExtra = null; } if (testFileNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, testFileNode.entry.id); + await uploadActions.deleteFileOrFolder(testFileNode.entry.id); testFileNode = null; } if (pdfBFileNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pdfBFileNode.entry.id); + await uploadActions.deleteFileOrFolder(pdfBFileNode.entry.id); pdfBFileNode = null; } done(); @@ -87,10 +83,10 @@ describe('Document List Component', () => { await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - filePdfNode = await uploadActions.uploadFile(this.alfrescoJsApi, pdfFile.location, pdfFile.name, '-my-'); - fileTestNode = await uploadActions.uploadFile(this.alfrescoJsApi, testFile.location, testFile.name, '-my-'); - fileDocxNode = await uploadActions.uploadFile(this.alfrescoJsApi, docxFile.location, docxFile.name, '-my-'); - folderNode = await uploadActions.createFolder(this.alfrescoJsApi, folderName, '-my-'); + filePdfNode = await uploadActions.uploadFile(pdfFile.location, pdfFile.name, '-my-'); + fileTestNode = await uploadActions.uploadFile(testFile.location, testFile.name, '-my-'); + fileDocxNode = await uploadActions.uploadFile(docxFile.location, docxFile.name, '-my-'); + folderNode = await uploadActions.createFolder(folderName, '-my-'); done(); }); @@ -98,16 +94,16 @@ describe('Document List Component', () => { afterAll(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); if (filePdfNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, filePdfNode.entry.id); + await uploadActions.deleteFileOrFolder(filePdfNode.entry.id); } if (fileTestNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileTestNode.entry.id); + await uploadActions.deleteFileOrFolder(fileTestNode.entry.id); } if (fileDocxNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileDocxNode.entry.id); + await uploadActions.deleteFileOrFolder(fileDocxNode.entry.id); } if (folderNode) { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, folderNode.entry.id); + await uploadActions.deleteFileOrFolder(folderNode.entry.id); } done(); }); diff --git a/e2e/content-services/lock-file.e2e.ts b/e2e/content-services/lock-file.e2e.ts index 2b57094703..53ea5bbb7e 100644 --- a/e2e/content-services/lock-file.e2e.ts +++ b/e2e/content-services/lock-file.e2e.ts @@ -15,23 +15,16 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { NavigationBarPage } from '../pages/adf/navigationBarPage'; import { ContentServicesPage } from '../pages/adf/contentServicesPage'; - import { LockFilePage } from '../pages/adf/lockFilePage'; - import { AcsUserModel } from '../models/ACS/acsUserModel'; import { FileModel } from '../models/ACS/fileModel'; - import CONSTANTS = require('../util/constants'); -import { StringUtil } from '@alfresco/adf-testing'; - import { browser } from 'protractor'; import resources = require('../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../actions/ACS/upload.actions'; describe('Lock File', () => { @@ -39,10 +32,13 @@ describe('Lock File', () => { const navigationBarPage = new NavigationBarPage(); const lockFilePage = new LockFilePage(); const contentServices = new ContentServicesPage(); - const adminUser = new AcsUserModel(); const managerUser = new AcsUserModel(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const pngFileModel = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.PNG.file_name, @@ -57,11 +53,6 @@ describe('Lock File', () => { let nodeId, site, documentLibrary, lockedFileNodeId; beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(adminUser); @@ -90,7 +81,7 @@ describe('Lock File', () => { describe('Lock file interaction with the UI', () => { beforeAll(async (done) => { - const pngLockedUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileToLock.location, pngFileToLock.name, documentLibrary); + const pngLockedUploadedFile = await uploadActions.uploadFile(pngFileToLock.location, pngFileToLock.name, documentLibrary); lockedFileNodeId = pngLockedUploadedFile.entry.id; @@ -99,7 +90,7 @@ describe('Lock File', () => { beforeEach(async (done) => { try { - const pngUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, documentLibrary); + const pngUploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, documentLibrary); nodeId = pngUploadedFile.entry.id; await loginPage.loginToContentServicesUsingUserModel(adminUser); await navigationBarPage.openContentServicesFolder(documentLibrary); @@ -115,7 +106,7 @@ describe('Lock File', () => { try { await this.alfrescoJsApi.login(adminUser.id, adminUser.password); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, nodeId); + await uploadActions.deleteFileOrFolder(nodeId); } catch (error) { @@ -129,7 +120,7 @@ describe('Lock File', () => { await this.alfrescoJsApi.core.nodesApi.unlockNode(lockedFileNodeId); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, lockedFileNodeId); + await uploadActions.deleteFileOrFolder(lockedFileNodeId); } catch (error) { @@ -185,7 +176,7 @@ describe('Lock File', () => { describe('Locked file without owner permissions', () => { beforeEach(async (done) => { - const pngUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, documentLibrary); + const pngUploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, documentLibrary); nodeId = pngUploadedFile.entry.id; @@ -201,7 +192,7 @@ describe('Lock File', () => { try { await this.alfrescoJsApi.core.nodesApi.unlockNode(nodeId); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, nodeId); + await uploadActions.deleteFileOrFolder(nodeId); } catch (error) { } @@ -277,7 +268,7 @@ describe('Lock File', () => { beforeAll(async (done) => { try { - pngFileToBeLocked = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileToLock.location, pngFileToLock.name, documentLibrary); + pngFileToBeLocked = await uploadActions.uploadFile(pngFileToLock.location, pngFileToLock.name, documentLibrary); lockedFileNodeId = pngFileToBeLocked.entry.id; } catch (error) { } @@ -286,7 +277,7 @@ describe('Lock File', () => { beforeEach(async (done) => { try { - const pngUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, documentLibrary); + const pngUploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, documentLibrary); nodeId = pngUploadedFile.entry.id; await loginPage.loginToContentServicesUsingUserModel(adminUser); navigationBarPage.openContentServicesFolder(documentLibrary); @@ -299,7 +290,7 @@ describe('Lock File', () => { await this.alfrescoJsApi.login(adminUser.id, adminUser.password); try { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, nodeId); + await uploadActions.deleteFileOrFolder(nodeId); } catch (error) { } diff --git a/e2e/content-services/metadata/aspect-oriented-config.e2e.ts b/e2e/content-services/metadata/aspect-oriented-config.e2e.ts index 6f1a6bdd4d..f15eb6008b 100644 --- a/e2e/content-services/metadata/aspect-oriented-config.e2e.ts +++ b/e2e/content-services/metadata/aspect-oriented-config.e2e.ts @@ -15,7 +15,7 @@ * limitations under the License. */ -import { LoginPage, LocalStorageUtil } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, LocalStorageUtil } from '@alfresco/adf-testing'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { MetadataViewPage } from '../../pages/adf/metadataViewPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; @@ -27,7 +27,6 @@ import { browser } from 'protractor'; import resources = require('../../util/resources'); import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { check } from '../../util/material'; @@ -47,14 +46,14 @@ describe('Aspect oriented config', () => { 'name': resources.Files.ADF_DOCUMENTS.PNG.file_name, 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location }); + let uploadActions; beforeAll(async (done) => { - const uploadActions = new UploadActions(); - this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + uploadActions = new UploadActions(this.alfrescoJsApi); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); @@ -72,7 +71,7 @@ describe('Aspect oriented config', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const uploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, '-my-'); + const uploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, '-my-'); await loginPage.loginToContentServicesUsingUserModel(acsUser); diff --git a/e2e/content-services/metadata/metadata-permissions.e2e.ts b/e2e/content-services/metadata/metadata-permissions.e2e.ts index 1e3170bfb2..084ecf2420 100644 --- a/e2e/content-services/metadata/metadata-permissions.e2e.ts +++ b/e2e/content-services/metadata/metadata-permissions.e2e.ts @@ -15,21 +15,15 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { MetadataViewPage } from '../../pages/adf/metadataViewPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; - import { browser } from 'protractor'; import resources = require('../../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; - -import { StringUtil } from '@alfresco/adf-testing'; import CONSTANTS = require('../../util/constants'); describe('permissions', () => { @@ -61,16 +55,14 @@ describe('permissions', () => { 'name': resources.Files.ADF_DOCUMENTS.PNG.file_name, 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location }); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); beforeAll(async (done) => { - const uploadActions = new UploadActions(); - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(consumerUser); @@ -97,7 +89,7 @@ describe('permissions', () => { role: CONSTANTS.CS_USER_ROLES.CONTRIBUTOR }); - await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, site.entry.guid); + await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, site.entry.guid); done(); }); diff --git a/e2e/content-services/metadata/metadata-properties.e2e.ts b/e2e/content-services/metadata/metadata-properties.e2e.ts index 0a36b1699b..bb4edbc6c5 100644 --- a/e2e/content-services/metadata/metadata-properties.e2e.ts +++ b/e2e/content-services/metadata/metadata-properties.e2e.ts @@ -15,18 +15,14 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions } from '@alfresco/adf-testing'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { MetadataViewPage } from '../../pages/adf/metadataViewPage'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; - import { browser } from 'protractor'; import resources = require('../../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { check, uncheck } from '../../util/material'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; @@ -58,23 +54,19 @@ describe('CardView Component - properties', () => { 'name': resources.Files.ADF_DOCUMENTS.PNG.file_name, 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location }); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); beforeAll(async (done) => { - const uploadActions = new UploadActions(); - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); - await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const pdfUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, '-my-'); + const pdfUploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, '-my-'); Object.assign(pngFileModel, pdfUploadedFile.entry); diff --git a/e2e/content-services/metadata/metadata-smoke-tests.e2e.ts b/e2e/content-services/metadata/metadata-smoke-tests.e2e.ts index 0f599abfa5..1ff6ca98d5 100644 --- a/e2e/content-services/metadata/metadata-smoke-tests.e2e.ts +++ b/e2e/content-services/metadata/metadata-smoke-tests.e2e.ts @@ -15,7 +15,7 @@ * limitations under the License. */ -import { LoginPage, LocalStorageUtil, BrowserActions } from '@alfresco/adf-testing'; +import { LoginPage, LocalStorageUtil, BrowserActions, UploadActions } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { MetadataViewPage } from '../../pages/adf/metadataViewPage'; @@ -28,7 +28,6 @@ import resources = require('../../util/resources'); import dateFormat = require('dateformat'); import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; describe('Metadata component', () => { @@ -61,22 +60,22 @@ describe('Metadata component', () => { 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location }); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + + const uploadActions = new UploadActions(this.alfrescoJsApi); beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const pngUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, '-my-'); + const pngUploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, '-my-'); Object.assign(pngFileModel, pngUploadedFile.entry); @@ -253,7 +252,7 @@ describe('Metadata component', () => { describe('Folder metadata', () => { beforeAll(async (done) => { - await uploadActions.createFolder(this.alfrescoJsApi, folderName, '-my-'); + await uploadActions.createFolder(folderName, '-my-'); await loginPage.loginToContentServicesUsingUserModel(acsUser); navigationBarPage.clickContentServicesButton(); diff --git a/e2e/content-services/permissions/permissions-component.e2e.ts b/e2e/content-services/permissions/permissions-component.e2e.ts index f784af6832..77c9841e09 100644 --- a/e2e/content-services/permissions/permissions-component.e2e.ts +++ b/e2e/content-services/permissions/permissions-component.e2e.ts @@ -21,8 +21,7 @@ import { AcsUserModel } from '../../models/ACS/acsUserModel'; import resources = require('../../util/resources'); import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; import { FileModel } from '../../models/ACS/fileModel'; -import { UploadActions } from '../../actions/ACS/upload.actions'; -import { StringUtil, BrowserActions, LoginPage, NotificationHistoryPage } from '@alfresco/adf-testing'; +import { StringUtil, BrowserActions, NotificationHistoryPage, LoginPage, UploadActions } from '@alfresco/adf-testing'; import { browser } from 'protractor'; import { FolderModel } from '../../models/ACS/folderModel'; import { ViewerPage } from '../../pages/adf/viewerPage'; @@ -32,14 +31,17 @@ import { UploadDialog } from '../../pages/adf/dialog/uploadDialog'; describe('Permissions Component', function () { + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); const permissionsPage = new PermissionsPage(); const navigationBarPage = new NavigationBarPage(); - const uploadActions = new UploadActions(); + const uploadActions = new UploadActions(this.alfrescoJsApi); const contentList = contentServicesPage.getDocumentList(); - const viewerPage = new ViewerPage(); const metadataViewPage = new MetadataViewPage(); const notificationPage = new NotificationHistoryPage(); @@ -65,11 +67,6 @@ describe('Permissions Component', function () { displayName: StringUtil.generateRandomString() }; - const alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - const roleConsumerFolderModel = new FolderModel({ 'name': 'roleConsumer' + StringUtil.generateRandomString() }); const roleCoordinatorFolderModel = new FolderModel({ 'name': 'roleCoordinator' + StringUtil.generateRandomString() }); const roleCollaboratorFolderModel = new FolderModel({ 'name': 'roleCollaborator' + StringUtil.generateRandomString() }); @@ -86,23 +83,21 @@ describe('Permissions Component', function () { beforeAll(async (done) => { - await alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await this.alfrescoJsApi.core.peopleApi.addPerson(fileOwnerUser); + await this.alfrescoJsApi.core.peopleApi.addPerson(filePermissionUser); + await this.alfrescoJsApi.core.groupsApi.createGroup(groupBody); + await this.alfrescoJsApi.login(fileOwnerUser.id, fileOwnerUser.password); - await alfrescoJsApi.core.peopleApi.addPerson(fileOwnerUser); - await alfrescoJsApi.core.peopleApi.addPerson(filePermissionUser); - await alfrescoJsApi.core.groupsApi.createGroup(groupBody); - - await alfrescoJsApi.login(fileOwnerUser.id, fileOwnerUser.password); - - roleConsumerFolder = await uploadActions.createFolder(alfrescoJsApi, roleConsumerFolderModel.name, '-my-'); - roleCoordinatorFolder = await uploadActions.createFolder(alfrescoJsApi, roleCoordinatorFolderModel.name, '-my-'); - roleContributorFolder = await uploadActions.createFolder(alfrescoJsApi, roleContributorFolderModel.name, '-my-'); - roleCollaboratorFolder = await uploadActions.createFolder(alfrescoJsApi, roleCollaboratorFolderModel.name, '-my-'); - roleEditorFolder = await uploadActions.createFolder(alfrescoJsApi, roleEditorFolderModel.name, '-my-'); + roleConsumerFolder = await uploadActions.createFolder(roleConsumerFolderModel.name, '-my-'); + roleCoordinatorFolder = await uploadActions.createFolder(roleCoordinatorFolderModel.name, '-my-'); + roleContributorFolder = await uploadActions.createFolder(roleContributorFolderModel.name, '-my-'); + roleCollaboratorFolder = await uploadActions.createFolder(roleCollaboratorFolderModel.name, '-my-'); + roleEditorFolder = await uploadActions.createFolder(roleEditorFolderModel.name, '-my-'); folders = [roleConsumerFolder, roleContributorFolder, roleCoordinatorFolder, roleCollaboratorFolder, roleEditorFolder]; - await alfrescoJsApi.core.nodesApi.updateNode(roleConsumerFolder.entry.id, + await this.alfrescoJsApi.core.nodesApi.updateNode(roleConsumerFolder.entry.id, { permissions: { @@ -114,7 +109,7 @@ describe('Permissions Component', function () { } }); - await alfrescoJsApi.core.nodesApi.updateNode(roleCollaboratorFolder.entry.id, + await this.alfrescoJsApi.core.nodesApi.updateNode(roleCollaboratorFolder.entry.id, { permissions: { locallySet: [{ @@ -125,7 +120,7 @@ describe('Permissions Component', function () { } }); - await alfrescoJsApi.core.nodesApi.updateNode(roleCoordinatorFolder.entry.id, + await this.alfrescoJsApi.core.nodesApi.updateNode(roleCoordinatorFolder.entry.id, { permissions: { locallySet: [{ @@ -136,7 +131,7 @@ describe('Permissions Component', function () { } }); - await alfrescoJsApi.core.nodesApi.updateNode(roleContributorFolder.entry.id, + await this.alfrescoJsApi.core.nodesApi.updateNode(roleContributorFolder.entry.id, { permissions: { @@ -148,7 +143,7 @@ describe('Permissions Component', function () { } }); - await alfrescoJsApi.core.nodesApi.updateNode(roleEditorFolder.entry.id, + await this.alfrescoJsApi.core.nodesApi.updateNode(roleEditorFolder.entry.id, { permissions: { @@ -160,33 +155,34 @@ describe('Permissions Component', function () { } }); - await uploadActions.uploadFile(alfrescoJsApi, fileModel.location, 'RoleConsumer' + fileModel.name, roleConsumerFolder.entry.id); - await uploadActions.uploadFile(alfrescoJsApi, fileModel.location, 'RoleContributor' + fileModel.name, roleContributorFolder.entry.id); - await uploadActions.uploadFile(alfrescoJsApi, fileModel.location, 'RoleCoordinator' + fileModel.name, roleCoordinatorFolder.entry.id); - await uploadActions.uploadFile(alfrescoJsApi, fileModel.location, 'RoleCollaborator' + fileModel.name, roleCollaboratorFolder.entry.id); - await uploadActions.uploadFile(alfrescoJsApi, fileModel.location, 'RoleEditor' + fileModel.name, roleEditorFolder.entry.id); + await uploadActions.uploadFile(fileModel.location, 'RoleConsumer' + fileModel.name, roleConsumerFolder.entry.id); + await uploadActions.uploadFile(fileModel.location, 'RoleContributor' + fileModel.name, roleContributorFolder.entry.id); + await uploadActions.uploadFile(fileModel.location, 'RoleCoordinator' + fileModel.name, roleCoordinatorFolder.entry.id); + await uploadActions.uploadFile(fileModel.location, 'RoleCollaborator' + fileModel.name, roleCollaboratorFolder.entry.id); + await uploadActions.uploadFile(fileModel.location, 'RoleEditor' + fileModel.name, roleEditorFolder.entry.id); done(); }); afterAll(async (done) => { - await alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await folders.forEach(function (folder) { - uploadActions.deleteFilesOrFolder(alfrescoJsApi, folder.entry.id); + uploadActions.deleteFileOrFolder(folder.entry.id); + }); done(); }); - describe('Inherit and assigning permissions', () => { + describe('Inherit and assigning permissions', () => { beforeEach(async (done) => { - await alfrescoJsApi.login(fileOwnerUser.id, fileOwnerUser.password); + await this.alfrescoJsApi.login(fileOwnerUser.id, fileOwnerUser.password); - file = await uploadActions.uploadFile(alfrescoJsApi, fileModel.location, fileModel.name, '-my-'); + file = await uploadActions.uploadFile(fileModel.location, fileModel.name, '-my-'); - await loginPage.loginToContentServicesUsingUserModel(fileOwnerUser); + loginPage.loginToContentServicesUsingUserModel(fileOwnerUser); contentServicesPage.goToDocumentList(); contentServicesPage.checkContentIsDisplayed(fileModel.name); @@ -202,29 +198,21 @@ describe('Permissions Component', function () { }); afterEach(async (done) => { - try { - await uploadActions.deleteFilesOrFolder(alfrescoJsApi, file.entry.id); - } catch (error) { - } + + await uploadActions.deleteFileOrFolder(file.entry.id); done(); }); it('[C268974] Inherit Permission', () => { permissionsPage.checkPermissionInheritedButtonIsDisplayed(); - expect(permissionsPage.getPermissionInheritedButtonText()).toBe('Permission Inherited'); - permissionsPage.checkPermissionsDatatableIsDisplayed(); permissionsPage.clickPermissionInheritedButton(); - expect(permissionsPage.getPermissionInheritedButtonText()).toBe('Inherit Permission'); - permissionsPage.checkNoPermissionsIsDisplayed(); permissionsPage.clickPermissionInheritedButton(); - expect(permissionsPage.getPermissionInheritedButtonText()).toBe('Permission Inherited'); - permissionsPage.checkPermissionsDatatableIsDisplayed(); }); @@ -266,15 +254,15 @@ describe('Permissions Component', function () { }); - describe('Changing and duplicate Permissions', () => { + describe('Changing and duplicate Permissions', () => { beforeEach(async (done) => { - await alfrescoJsApi.login(fileOwnerUser.id, fileOwnerUser.password); + await this.alfrescoJsApi.login(fileOwnerUser.id, fileOwnerUser.password); - file = await uploadActions.uploadFile(alfrescoJsApi, fileModel.location, fileModel.name, '-my-'); + file = await uploadActions.uploadFile(fileModel.location, fileModel.name, '-my-'); - await loginPage.loginToContentServicesUsingUserModel(fileOwnerUser); + loginPage.loginToContentServicesUsingUserModel(fileOwnerUser); contentServicesPage.goToDocumentList(); contentServicesPage.checkContentIsDisplayed(fileModel.name); @@ -299,7 +287,7 @@ describe('Permissions Component', function () { afterEach(async (done) => { try { - await uploadActions.deleteFilesOrFolder(alfrescoJsApi, file.entry.id); + await uploadActions.deleteFileOrFolder(file.entry.id); } catch (error) { @@ -359,7 +347,6 @@ describe('Permissions Component', function () { expect(permissionsPage.getRoleCellValue(filePermissionUser.getId())).toEqual('Contributor'); permissionsPage.clickDeletePermissionButton(); - permissionsPage.checkUserOrGroupIsDeleted(filePermissionUser.getId()); }); diff --git a/e2e/content-services/permissions/site-permissions.e2e.ts b/e2e/content-services/permissions/site-permissions.e2e.ts index 19ced9aca8..457e1a1b2b 100644 --- a/e2e/content-services/permissions/site-permissions.e2e.ts +++ b/e2e/content-services/permissions/site-permissions.e2e.ts @@ -16,14 +16,12 @@ */ import { PermissionsPage } from '../../pages/adf/permissionsPage'; -import { LoginPage, BrowserActions } from '@alfresco/adf-testing'; +import { LoginPage, BrowserActions, UploadActions, StringUtil, NotificationHistoryPage } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import resources = require('../../util/resources'); import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; import { FileModel } from '../../models/ACS/fileModel'; -import { UploadActions } from '../../actions/ACS/upload.actions'; -import { StringUtil, NotificationHistoryPage } from '@alfresco/adf-testing'; import { browser } from 'protractor'; import { ViewerPage } from '../../pages/adf/viewerPage'; import CONSTANTS = require('../../util/constants'); @@ -33,10 +31,14 @@ import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; describe('Permissions Component', function () { + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); const permissionsPage = new PermissionsPage(); - const uploadActions = new UploadActions(); + const uploadActions = new UploadActions(this.alfrescoJsApi); const contentList = contentServicesPage.getDocumentList(); @@ -65,11 +67,6 @@ describe('Permissions Component', function () { 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location }); - const alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - let siteFolder, privateSiteFile; folderOwnerUser = new AcsUserModel(); @@ -81,15 +78,14 @@ describe('Permissions Component', function () { beforeAll(async (done) => { - await alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - - await alfrescoJsApi.core.peopleApi.addPerson(folderOwnerUser); - await alfrescoJsApi.core.peopleApi.addPerson(siteConsumerUser); - await alfrescoJsApi.core.peopleApi.addPerson(consumerUser); - await alfrescoJsApi.core.peopleApi.addPerson(contributorUser); - await alfrescoJsApi.core.peopleApi.addPerson(collaboratorUser); - await alfrescoJsApi.core.peopleApi.addPerson(managerUser); - await alfrescoJsApi.login(folderOwnerUser.id, folderOwnerUser.password); + await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await this.alfrescoJsApi.core.peopleApi.addPerson(folderOwnerUser); + await this.alfrescoJsApi.core.peopleApi.addPerson(siteConsumerUser); + await this.alfrescoJsApi.core.peopleApi.addPerson(consumerUser); + await this.alfrescoJsApi.core.peopleApi.addPerson(contributorUser); + await this.alfrescoJsApi.core.peopleApi.addPerson(collaboratorUser); + await this.alfrescoJsApi.core.peopleApi.addPerson(managerUser); + await this.alfrescoJsApi.login(folderOwnerUser.id, folderOwnerUser.password); browser.sleep(15000); @@ -103,39 +99,39 @@ describe('Permissions Component', function () { const privateSiteBody = { visibility: 'PRIVATE', title: privateSiteName }; - publicSite = await alfrescoJsApi.core.sitesApi.createSite(publicSiteBody); - privateSite = await alfrescoJsApi.core.sitesApi.createSite(privateSiteBody); + publicSite = await this.alfrescoJsApi.core.sitesApi.createSite(publicSiteBody); + privateSite = await this.alfrescoJsApi.core.sitesApi.createSite(privateSiteBody); - await alfrescoJsApi.core.sitesApi.addSiteMember(publicSite.entry.id, { + await this.alfrescoJsApi.core.sitesApi.addSiteMember(publicSite.entry.id, { id: siteConsumerUser.id, role: CONSTANTS.CS_USER_ROLES.CONSUMER }); - await alfrescoJsApi.core.sitesApi.addSiteMember(publicSite.entry.id, { + await this.alfrescoJsApi.core.sitesApi.addSiteMember(publicSite.entry.id, { id: collaboratorUser.id, role: CONSTANTS.CS_USER_ROLES.COLLABORATOR }); - await alfrescoJsApi.core.sitesApi.addSiteMember(publicSite.entry.id, { + await this.alfrescoJsApi.core.sitesApi.addSiteMember(publicSite.entry.id, { id: contributorUser.id, role: CONSTANTS.CS_USER_ROLES.CONTRIBUTOR }); - await alfrescoJsApi.core.sitesApi.addSiteMember(publicSite.entry.id, { + await this.alfrescoJsApi.core.sitesApi.addSiteMember(publicSite.entry.id, { id: managerUser.id, role: CONSTANTS.CS_USER_ROLES.MANAGER }); - await alfrescoJsApi.core.sitesApi.addSiteMember(privateSite.entry.id, { + await this.alfrescoJsApi.core.sitesApi.addSiteMember(privateSite.entry.id, { id: managerUser.id, role: CONSTANTS.CS_USER_ROLES.MANAGER }); - siteFolder = await uploadActions.createFolder(alfrescoJsApi, folderName, publicSite.entry.guid); + siteFolder = await uploadActions.createFolder(folderName, publicSite.entry.guid); - privateSiteFile = await uploadActions.uploadFile(alfrescoJsApi, fileModel.location, 'privateSite' + fileModel.name, privateSite.entry.guid); + privateSiteFile = await uploadActions.uploadFile(fileModel.location, 'privateSite' + fileModel.name, privateSite.entry.guid); - await alfrescoJsApi.core.nodesApi.updateNode(privateSiteFile.entry.id, + await this.alfrescoJsApi.core.nodesApi.updateNode(privateSiteFile.entry.id, { permissions: { locallySet: [{ @@ -146,14 +142,16 @@ describe('Permissions Component', function () { } }); - await uploadActions.uploadFile(alfrescoJsApi, fileModel.location, 'Site' + fileModel.name, siteFolder.entry.id); + await uploadActions.uploadFile(fileModel.location, 'Site' + fileModel.name, siteFolder.entry.id); + done(); + }); afterAll(async (done) => { - await alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await alfrescoJsApi.core.sitesApi.deleteSite(publicSite.entry.id); - await alfrescoJsApi.core.sitesApi.deleteSite(privateSite.entry.id); + await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await this.alfrescoJsApi.core.sitesApi.deleteSite(publicSite.entry.id); + await this.alfrescoJsApi.core.sitesApi.deleteSite(privateSite.entry.id); done(); }); diff --git a/e2e/content-services/share-file/share-file.e2e.ts b/e2e/content-services/share-file/share-file.e2e.ts index a39e705428..2221425961 100644 --- a/e2e/content-services/share-file/share-file.e2e.ts +++ b/e2e/content-services/share-file/share-file.e2e.ts @@ -15,23 +15,23 @@ * limitations under the License. */ -import { LoginPage, BrowserActions, LocalStorageUtil, NotificationHistoryPage } from '@alfresco/adf-testing'; +import { LoginPage, BrowserActions, LocalStorageUtil, NotificationHistoryPage, UploadActions } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { ShareDialog } from '../../pages/adf/dialog/shareDialog'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; - import { browser } from 'protractor'; import resources = require('../../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; describe('Share file', () => { + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); const contentListPage = contentServicesPage.getDocumentList(); @@ -39,10 +39,8 @@ describe('Share file', () => { const navigationBarPage = new NavigationBarPage(); const viewerPage = new ViewerPage(); const notificationHistoryPage = new NotificationHistoryPage(); - const acsUser = new AcsUserModel(); - const uploadActions = new UploadActions(); - + const uploadActions = new UploadActions(this.alfrescoJsApi); const pngFileModel = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.PNG.file_name, 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location @@ -51,32 +49,25 @@ describe('Share file', () => { let nodeId; beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const pngUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, '-my-'); + const pngUploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, '-my-'); nodeId = pngUploadedFile.entry.id; - await loginPage.loginToContentServicesUsingUserModel(acsUser); + loginPage.loginToContentServicesUsingUserModel(acsUser); navigationBarPage.clickContentServicesButton(); - contentServicesPage.waitForTableBody(); - done(); }); afterAll(async (done) => { try { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, nodeId); + await uploadActions.deleteFileOrFolder(nodeId); } catch (error) { } done(); diff --git a/e2e/content-services/share-file/unshare-file.e2e.ts b/e2e/content-services/share-file/unshare-file.e2e.ts index 8b85d94921..a9b3da4e7b 100644 --- a/e2e/content-services/share-file/unshare-file.e2e.ts +++ b/e2e/content-services/share-file/unshare-file.e2e.ts @@ -16,20 +16,22 @@ */ import CONSTANTS = require('../../util/constants'); -import { StringUtil, BrowserActions, NotificationHistoryPage } from '@alfresco/adf-testing'; +import { StringUtil, BrowserActions, NotificationHistoryPage, LoginPage, ErrorPage, UploadActions } from '@alfresco/adf-testing'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; -import { LoginPage, ErrorPage } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { ShareDialog } from '../../pages/adf/dialog/shareDialog'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; import resources = require('../../util/resources'); import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { browser } from 'protractor'; describe('Unshare file', () => { + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); const contentListPage = contentServicesPage.getDocumentList(); @@ -38,9 +40,8 @@ describe('Unshare file', () => { const notificationHistoryPage = new NotificationHistoryPage(); const shareDialog = new ShareDialog(); const siteName = `PRIVATE-TEST-SITE-${StringUtil.generateRandomString(5)}`; - const acsUser = new AcsUserModel(); - const uploadActions = new UploadActions(); + const uploadActions = new UploadActions(this.alfrescoJsApi); let nodeBody; let nodeId; let testSite; @@ -69,11 +70,6 @@ describe('Unshare file', () => { } }; - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); testSite = await this.alfrescoJsApi.core.sitesApi.createSite(site); @@ -96,7 +92,7 @@ describe('Unshare file', () => { await this.alfrescoJsApi.core.sharedlinksApi.addSharedLink({ nodeId: testFile1Id }); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const pngUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, '-my-'); + const pngUploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, '-my-'); nodeId = pngUploadedFile.entry.id; await loginPage.loginToContentServicesUsingUserModel(acsUser); @@ -112,7 +108,7 @@ describe('Unshare file', () => { describe('with permission', () => { afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, nodeId); + await uploadActions.deleteFileOrFolder(nodeId); done(); }); diff --git a/e2e/content-services/social/social.component.e2e.ts b/e2e/content-services/social/social.component.e2e.ts index 17124f938d..660c5468fb 100644 --- a/e2e/content-services/social/social.component.e2e.ts +++ b/e2e/content-services/social/social.component.e2e.ts @@ -15,12 +15,11 @@ * limitations under the License. */ -import { LoginPage, LikePage, RatePage } from '@alfresco/adf-testing'; +import { LoginPage, LikePage, RatePage, UploadActions } from '@alfresco/adf-testing'; import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; import resources = require('../../util/resources'); -import { UploadActions } from '../../actions/ACS/upload.actions'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { SocialPage } from '../../pages/adf/demo-shell/socialPage'; import { browser } from 'protractor'; @@ -35,7 +34,11 @@ describe('Social component', () => { const componentOwner = new AcsUserModel(); const componentVisitor = new AcsUserModel(); const secondComponentVisitor = new AcsUserModel(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const blueLikeColor = ('rgba(33, 150, 243, 1)'); const greyLikeColor = ('rgba(128, 128, 128, 1)'); @@ -50,11 +53,6 @@ describe('Social component', () => { }); beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(componentOwner); @@ -65,7 +63,7 @@ describe('Social component', () => { await this.alfrescoJsApi.login(componentOwner.id, componentOwner.password); - emptyFile = await uploadActions.uploadFile(this.alfrescoJsApi, emptyFileModel.location, emptyFileModel.name, '-my-'); + emptyFile = await uploadActions.uploadFile(emptyFileModel.location, emptyFileModel.name, '-my-'); await this.alfrescoJsApi.core.nodesApi.updateNode(emptyFile.entry.id, @@ -87,7 +85,7 @@ describe('Social component', () => { }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, emptyFile.entry.id); + await uploadActions.deleteFileOrFolder(emptyFile.entry.id); done(); }); diff --git a/e2e/content-services/sso/sso-download-directive-component.e2e.ts b/e2e/content-services/sso/sso-download-directive-component.e2e.ts index 2463404607..661771acb5 100644 --- a/e2e/content-services/sso/sso-download-directive-component.e2e.ts +++ b/e2e/content-services/sso/sso-download-directive-component.e2e.ts @@ -18,15 +18,13 @@ import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { browser } from 'protractor'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; -import { ApiService, LoginSSOPage } from '@alfresco/adf-testing'; -import { UploadActions } from '../../actions/ACS/upload.actions'; +import { ApiService, LoginSSOPage, UploadActions, IdentityService, SettingsPage, StringUtil, UserModel } from '@alfresco/adf-testing'; import { FileModel } from '../../models/ACS/fileModel'; import { ViewerPage } from '../../pages/adf/viewerPage'; import resources = require('../../util/resources'); import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; import * as path from 'path'; import { Util } from '../../util/util'; -import { IdentityService, SettingsPage, StringUtil, UserModel } from '@alfresco/adf-testing'; describe('SSO in ADF using ACS and AIS, Download Directive, Viewer, DocumentList, implicitFlow true', () => { @@ -38,7 +36,7 @@ describe('SSO in ADF using ACS and AIS, Download Directive, Viewer, DocumentList const viewerPage = new ViewerPage(); let silentLogin; let implicitFlow; - const uploadActions = new UploadActions(); + const firstPdfFileModel = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.PDF_B.file_name, 'location': resources.Files.ADF_DOCUMENTS.PDF_B.file_location @@ -66,7 +64,7 @@ describe('SSO in ADF using ACS and AIS, Download Directive, Viewer, DocumentList redirectUriLogout: '/logout' } }); - + const uploadActions = new UploadActions(this.alfrescoJsApi); const downloadedPngFile = path.join(__dirname, 'downloads', pngFileModel.name); const downloadedMultipleFiles = path.join(__dirname, 'downloads', 'archive.zip'); const folderName = StringUtil.generateRandomString(5); @@ -85,10 +83,10 @@ describe('SSO in ADF using ACS and AIS, Download Directive, Viewer, DocumentList await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - folder = await uploadActions.createFolder(this.alfrescoJsApi, folderName, '-my-'); + folder = await uploadActions.createFolder(folderName, '-my-'); - pdfUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, firstPdfFileModel.location, firstPdfFileModel.name, folder.entry.id); - pngUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, folder.entry.id); + pdfUploadedFile = await uploadActions.uploadFile(firstPdfFileModel.location, firstPdfFileModel.name, folder.entry.id); + pngUploadedFile = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, folder.entry.id); silentLogin = false; implicitFlow = true; @@ -110,7 +108,7 @@ describe('SSO in ADF using ACS and AIS, Download Directive, Viewer, DocumentList afterAll(async (done) => { try { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, folder.entry.id); + await uploadActions.deleteFileOrFolder(folder.entry.id); await identityService.deleteIdentityUser(acsUser.id); } catch (error) { } diff --git a/e2e/content-services/tag-component.e2e.ts b/e2e/content-services/tag-component.e2e.ts index fcf9e6bb4a..0abf367d86 100644 --- a/e2e/content-services/tag-component.e2e.ts +++ b/e2e/content-services/tag-component.e2e.ts @@ -17,17 +17,11 @@ import { AcsUserModel } from '../models/ACS/acsUserModel'; import { FileModel } from '../models/ACS/fileModel'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { TagPage } from '../pages/adf/tagPage'; import { NavigationBarPage } from '../pages/adf/navigationBarPage'; - import resources = require('../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../actions/ACS/upload.actions'; - -import { StringUtil } from '@alfresco/adf-testing'; import { browser } from 'protractor'; describe('Tag component', () => { @@ -37,7 +31,11 @@ describe('Tag component', () => { const navigationBarPage = new NavigationBarPage(); const acsUser = new AcsUserModel(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const pdfFileModel = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.PDF.file_name }); const deleteFile = new FileModel({ 'name': StringUtil.generateRandomString() }); const sameTag = StringUtil.generateRandomString().toLowerCase(); @@ -59,10 +57,6 @@ describe('Tag component', () => { let pdfUploadedFile, nodeId; beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); @@ -70,11 +64,11 @@ describe('Tag component', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - pdfUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pdfFileModel.location, pdfFileModel.name, '-my-'); + pdfUploadedFile = await uploadActions.uploadFile(pdfFileModel.location, pdfFileModel.name, '-my-'); nodeId = pdfUploadedFile.entry.id; - const uploadedDeleteFile = await uploadActions.uploadFile(this.alfrescoJsApi, deleteFile.location, deleteFile.name, '-my-'); + const uploadedDeleteFile = await uploadActions.uploadFile(deleteFile.location, deleteFile.name, '-my-'); Object.assign(pdfFileModel, pdfUploadedFile.entry); @@ -89,7 +83,7 @@ describe('Tag component', () => { afterAll(async (done) => { try { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pdfUploadedFile.entry.id); + await uploadActions.deleteFileOrFolder(pdfUploadedFile.entry.id); } catch (error) { } done(); diff --git a/e2e/content-services/trashcan-pagination.e2e.ts b/e2e/content-services/trashcan-pagination.e2e.ts index 5d34acc019..f9514381f7 100644 --- a/e2e/content-services/trashcan-pagination.e2e.ts +++ b/e2e/content-services/trashcan-pagination.e2e.ts @@ -27,7 +27,7 @@ import { FolderModel } from '../models/ACS/folderModel'; import { Util } from '../util/util'; import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../actions/ACS/upload.actions'; +import { UploadActions } from '@alfresco/adf-testing'; import { browser } from 'protractor'; describe('Trashcan - Pagination', () => { @@ -58,14 +58,13 @@ describe('Trashcan - Pagination', () => { const nrOfFiles = 20; beforeAll(async (done) => { - const uploadActions = new UploadActions(); - - const fileNames = Util.generateSequenceFiles(10, nrOfFiles + 9, pagination.base, pagination.extension); - this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + const uploadActions = new UploadActions(this.alfrescoJsApi); + + const fileNames = Util.generateSequenceFiles(10, nrOfFiles + 9, pagination.base, pagination.extension); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); @@ -73,9 +72,9 @@ describe('Trashcan - Pagination', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const folderUploadedModel = await uploadActions.createFolder(this.alfrescoJsApi, newFolderModel.name, '-my-'); + const folderUploadedModel = await uploadActions.createFolder(newFolderModel.name, '-my-'); - const emptyFiles = await uploadActions.createEmptyFiles(this.alfrescoJsApi, fileNames, folderUploadedModel.entry.id); + const emptyFiles = await uploadActions.createEmptyFiles(fileNames, folderUploadedModel.entry.id); await emptyFiles.list.entries.forEach(async (node) => { await this.alfrescoJsApi.node.deleteNode(node.entry.id).then(() => { }, () => { diff --git a/e2e/content-services/tree-view-component.e2e.ts b/e2e/content-services/tree-view-component.e2e.ts index 47ace31a71..012e1829db 100644 --- a/e2e/content-services/tree-view-component.e2e.ts +++ b/e2e/content-services/tree-view-component.e2e.ts @@ -15,16 +15,12 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions } from '@alfresco/adf-testing'; import { NavigationBarPage } from '../pages/adf/navigationBarPage'; import { TreeViewPage } from '../pages/adf/content-services/treeViewPage'; - import { AcsUserModel } from '../models/ACS/acsUserModel'; - import { browser } from 'protractor'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../actions/ACS/upload.actions'; describe('Tree View Component', () => { @@ -33,7 +29,11 @@ describe('Tree View Component', () => { const treeViewPage = new TreeViewPage(); const acsUser = new AcsUserModel(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let treeFolder, secondTreeFolder, thirdTreeFolder; @@ -46,36 +46,18 @@ describe('Tree View Component', () => { }; beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - treeFolder = await this.alfrescoJsApi.nodes.addNode(nodeNames.parentFolder, { - name: nodeNames.folder, - nodeType: 'cm:folder' - }); - secondTreeFolder = await this.alfrescoJsApi.nodes.addNode(nodeNames.parentFolder, { - name: nodeNames.secondFolder, - nodeType: 'cm:folder' - }); - thirdTreeFolder = await this.alfrescoJsApi.nodes.addNode(secondTreeFolder.entry.id, { - name: nodeNames.thirdFolder, - nodeType: 'cm:folder' - }); - await this.alfrescoJsApi.nodes.addNode(thirdTreeFolder.entry.id, { - name: nodeNames.document, - nodeType: 'cm:content' - }); + treeFolder = await this.alfrescoJsApi.nodes.addNode(nodeNames.parentFolder, { name: nodeNames.folder, nodeType: 'cm:folder' }); + secondTreeFolder = await this.alfrescoJsApi.nodes.addNode(nodeNames.parentFolder, { name: nodeNames.secondFolder, nodeType: 'cm:folder' }); + thirdTreeFolder = await this.alfrescoJsApi.nodes.addNode(secondTreeFolder.entry.id, { name: nodeNames.thirdFolder, nodeType: 'cm:folder' }); + await this.alfrescoJsApi.nodes.addNode(thirdTreeFolder.entry.id, { name: nodeNames.document, nodeType: 'cm:content' }); - await loginPage.loginToContentServicesUsingUserModel(acsUser); + loginPage.loginToContentServicesUsingUserModel(acsUser); navigationBarPage.clickTreeViewButton(); @@ -86,8 +68,8 @@ describe('Tree View Component', () => { try { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, treeFolder.entry.id); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, secondTreeFolder.entry.id); + await uploadActions.deleteFileOrFolder(treeFolder.entry.id); + await uploadActions.deleteFileOrFolder(secondTreeFolder.entry.id); } catch (error) { } done(); diff --git a/e2e/content-services/upload/cancel-upload.e2e.ts b/e2e/content-services/upload/cancel-upload.e2e.ts index b7d88d1a9a..b02bb5a577 100644 --- a/e2e/content-services/upload/cancel-upload.e2e.ts +++ b/e2e/content-services/upload/cancel-upload.e2e.ts @@ -16,28 +16,27 @@ */ import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { UploadDialog } from '../../pages/adf/dialog/uploadDialog'; import { UploadToggles } from '../../pages/adf/dialog/uploadToggles'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; - import resources = require('../../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; describe('Upload component', () => { + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); const contentServicesPage = new ContentServicesPage(); const uploadDialog = new UploadDialog(); const uploadToggles = new UploadToggles(); const loginPage = new LoginPage(); const acsUser = new AcsUserModel(); - const uploadActions = new UploadActions(); + const uploadActions = new UploadActions(this.alfrescoJsApi); const firstPdfFileModel = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.PDF_B.file_name, @@ -53,11 +52,6 @@ describe('Upload component', () => { }); beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -68,7 +62,7 @@ describe('Upload component', () => { contentServicesPage.goToDocumentList(); - const pdfUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, firstPdfFileModel.location, firstPdfFileModel.name, '-my-'); + const pdfUploadedFile = await uploadActions.uploadFile(firstPdfFileModel.location, firstPdfFileModel.name, '-my-'); Object.assign(firstPdfFileModel, pdfUploadedFile.entry); diff --git a/e2e/content-services/upload/upload-dialog.ts b/e2e/content-services/upload/upload-dialog.ts index 8c3fd0d0e3..5961a2fe01 100644 --- a/e2e/content-services/upload/upload-dialog.ts +++ b/e2e/content-services/upload/upload-dialog.ts @@ -15,19 +15,15 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { UploadDialog } from '../../pages/adf/dialog/uploadDialog'; import { UploadToggles } from '../../pages/adf/dialog/uploadToggles'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; - import { browser } from 'protractor'; import resources = require('../../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; describe('Upload component', () => { @@ -36,7 +32,11 @@ describe('Upload component', () => { const uploadToggles = new UploadToggles(); const loginPage = new LoginPage(); const acsUser = new AcsUserModel(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const firstPdfFileModel = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.PDF_B.file_name, @@ -62,25 +62,14 @@ describe('Upload component', () => { const filesName = [pdfFileModel.name, docxFileModel.name, pngFileModel.name, firstPdfFileModel.name]; beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); - await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - await loginPage.loginToContentServicesUsingUserModel(acsUser); - contentServicesPage.goToDocumentList(); - - const pdfUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, firstPdfFileModel.location, firstPdfFileModel.name, '-my-'); - + const pdfUploadedFile = await uploadActions.uploadFile(firstPdfFileModel.location, firstPdfFileModel.name, '-my-'); Object.assign(firstPdfFileModel, pdfUploadedFile.entry); - done(); }); @@ -94,7 +83,7 @@ describe('Upload component', () => { nodesPromise.forEach(async (currentNodePromise) => { await currentNodePromise.then(async (currentNode) => { if (currentNode && currentNode !== 'Node id') { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, currentNode); + await uploadActions.deleteFileOrFolder(currentNode); } }); }); @@ -142,14 +131,10 @@ describe('Upload component', () => { contentServicesPage.uploadFile(pngFileModelTwo.location).checkContentIsDisplayed(pngFileModelTwo.name); uploadDialog.fileIsUploaded(pngFileModelTwo.name); - contentServicesPage.uploadFile(pngFileModel.location).checkContentIsDisplayed(pngFileModel.name); - uploadDialog.fileIsUploaded(pngFileModel.name).fileIsUploaded(pngFileModelTwo.name); uploadDialog.clickOnCloseButton().dialogIsNotDisplayed(); - contentServicesPage.uploadFile(pdfFileModel.location).checkContentIsDisplayed(pdfFileModel.name); - uploadDialog.fileIsUploaded(pdfFileModel.name).fileIsNotDisplayedInDialog(pngFileModel.name).fileIsNotDisplayedInDialog(pngFileModelTwo.name); uploadDialog.clickOnCloseButton().dialogIsNotDisplayed(); }); @@ -157,17 +142,11 @@ describe('Upload component', () => { it('[C260170] Should be possible to upload multiple files', () => { contentServicesPage.goToDocumentList(); contentServicesPage.checkAcsContainer(); - uploadToggles.enableMultipleFileUpload(); - contentServicesPage.uploadMultipleFile(filesLocation).checkContentsAreDisplayed(filesName); - uploadDialog.filesAreUploaded(filesName); - expect(uploadDialog.getTitleText()).toEqual('Uploaded 4 / 4'); - uploadDialog.clickOnCloseButton().dialogIsNotDisplayed(); - uploadToggles.disableMultipleFileUpload(); }); diff --git a/e2e/content-services/upload/uploader-component.e2e.ts b/e2e/content-services/upload/uploader-component.e2e.ts index 1acb4a893d..9105178f3b 100644 --- a/e2e/content-services/upload/uploader-component.e2e.ts +++ b/e2e/content-services/upload/uploader-component.e2e.ts @@ -17,21 +17,16 @@ import { element, by, browser } from 'protractor'; -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { UploadDialog } from '../../pages/adf/dialog/uploadDialog'; import { UploadToggles } from '../../pages/adf/dialog/uploadToggles'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; import { FolderModel } from '../../models/ACS/folderModel'; - import resources = require('../../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { DropActions } from '../../actions/drop.actions'; describe('Upload component', () => { @@ -41,7 +36,11 @@ describe('Upload component', () => { const uploadToggles = new UploadToggles(); const loginPage = new LoginPage(); const acsUser = new AcsUserModel(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const navigationBarPage = new NavigationBarPage(); const firstPdfFileModel = new FileModel({ @@ -80,10 +79,6 @@ describe('Upload component', () => { const uploadedFileInFolderTwo = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.FILE_INSIDE_FOLDER_TWO.file_name }); beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); @@ -91,10 +86,13 @@ describe('Upload component', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const pdfUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, firstPdfFileModel.location, firstPdfFileModel.name, '-my-'); - Object.assign(firstPdfFileModel, pdfUploadedFile.entry); + loginPage.loginToContentServicesUsingUserModel(acsUser); - await loginPage.loginToContentServicesUsingUserModel(acsUser); + contentServicesPage.goToDocumentList(); + + const pdfUploadedFile = await uploadActions.uploadFile(firstPdfFileModel.location, firstPdfFileModel.name, '-my-'); + + Object.assign(firstPdfFileModel, pdfUploadedFile.entry); done(); }); @@ -105,17 +103,19 @@ describe('Upload component', () => { describe('', () => { - afterEach(async (done) => { - contentServicesPage.getElementsDisplayedId().then(async (nodeList) => { - for (let i = 0; i < nodeList.length; i++) { - try { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, nodeList[i]); - } catch (e) { - } - } + beforeEach(() => { + contentServicesPage.goToDocumentList(); + }); - done(); + afterEach(async (done) => { + + contentServicesPage.getElementsDisplayedId().then((nodeList) => { + nodeList.forEach(async (currentNode) => { + await uploadActions.deleteFileOrFolder(currentNode); + }); }); + + done(); }); it('[C272788] Should display upload button', () => { @@ -362,14 +362,14 @@ describe('Upload component', () => { const folderName = StringUtil.generateRandomString(8); const folderUploadedModel = await browser.controlFlow().execute(async () => { - return await uploadActions.createFolder(this.alfrescoJsApi, folderName, '-my-'); + return await uploadActions.createFolder(folderName, '-my-'); }); navigationBarPage.openContentServicesFolder(folderUploadedModel.entry.id); contentServicesPage.checkUploadButton(); browser.controlFlow().execute(async () => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, folderUploadedModel.entry.id); + await uploadActions.deleteFileOrFolder(folderUploadedModel.entry.id); }); contentServicesPage.uploadFile(pdfFileModel.location); diff --git a/e2e/content-services/version/version-actions.e2e.ts b/e2e/content-services/version/version-actions.e2e.ts index 855befaca8..9c0010f86c 100644 --- a/e2e/content-services/version/version-actions.e2e.ts +++ b/e2e/content-services/version/version-actions.e2e.ts @@ -27,7 +27,7 @@ import { FileModel } from '../../models/ACS/fileModel'; import resources = require('../../util/resources'); import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; +import { UploadActions } from '@alfresco/adf-testing'; import { Util } from '../../util/util'; import path = require('path'); import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; @@ -52,6 +52,7 @@ describe('Version component actions', () => { 'name': resources.Files.ADF_DOCUMENTS.PNG.file_name, 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location }); + let uploadActions; const bigFileToCancel = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.LARGE_FILE.file_name, @@ -59,13 +60,11 @@ describe('Version component actions', () => { }); beforeAll(async (done) => { - - const uploadActions = new UploadActions(); - this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + uploadActions = new UploadActions(this.alfrescoJsApi); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); @@ -73,7 +72,7 @@ describe('Version component actions', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const txtUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, txtFileModel.location, txtFileModel.name, '-my-'); + const txtUploadedFile = await uploadActions.uploadFile(txtFileModel.location, txtFileModel.name, '-my-'); Object.assign(txtFileModel, txtUploadedFile.entry); diff --git a/e2e/content-services/version/version-permissions.e2e.ts b/e2e/content-services/version/version-permissions.e2e.ts index d8d8d87f0f..c79735a9b5 100644 --- a/e2e/content-services/version/version-permissions.e2e.ts +++ b/e2e/content-services/version/version-permissions.e2e.ts @@ -17,23 +17,17 @@ import { element, by } from 'protractor'; -import { LoginPage, BrowserActions } from '@alfresco/adf-testing'; +import { LoginPage, BrowserActions, UploadActions, StringUtil, NotificationHistoryPage } from '@alfresco/adf-testing'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { VersionManagePage } from '../../pages/adf/versionManagerPage'; import { UploadDialog } from '../../pages/adf/dialog/uploadDialog'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; - import { browser } from 'protractor'; import resources = require('../../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { NodeActions } from '../../actions/ACS/node.actions'; - -import { StringUtil, NotificationHistoryPage } from '@alfresco/adf-testing'; import CONSTANTS = require('../../util/constants'); describe('Version component permissions', () => { @@ -68,18 +62,16 @@ describe('Version component permissions', () => { 'location': resources.Files.ADF_DOCUMENTS.PNG_D.file_location }); - beforeAll(async (done) => { - - const uploadActions = new UploadActions(); - const nodeActions = new NodeActions(); - - this.alfrescoJsApi = new AlfrescoApi({ + this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + const uploadActions = new UploadActions(this.alfrescoJsApi); + const nodeActions = new NodeActions(); + + beforeAll(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.core.peopleApi.addPerson(consumerUser); await this.alfrescoJsApi.core.peopleApi.addPerson(collaboratorUser); @@ -117,14 +109,14 @@ describe('Version component permissions', () => { role: CONSTANTS.CS_USER_ROLES.MANAGER }); - const lockFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, lockFileModel.location, lockFileModel.name, site.entry.guid); + const lockFileUploaded = await uploadActions.uploadFile(lockFileModel.location, lockFileModel.name, site.entry.guid); Object.assign(lockFileModel, lockFileUploaded.entry); nodeActions.lockNode(this.alfrescoJsApi, lockFileModel.id); await this.alfrescoJsApi.login(fileCreatorUser.id, fileCreatorUser.password); - await uploadActions.uploadFile(this.alfrescoJsApi, differentCreatorFile.location, differentCreatorFile.name, site.entry.guid); + await uploadActions.uploadFile(differentCreatorFile.location, differentCreatorFile.name, site.entry.guid); done(); }); @@ -137,11 +129,9 @@ describe('Version component permissions', () => { }); beforeAll(async (done) => { - const uploadActions = new UploadActions(); - await this.alfrescoJsApi.login(managerUser.id, managerUser.password); - const sameCreatorFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, sameCreatorFile.location, sameCreatorFile.name, site.entry.guid); + const sameCreatorFileUploaded = await uploadActions.uploadFile(sameCreatorFile.location, sameCreatorFile.name, site.entry.guid); Object.assign(sameCreatorFile, sameCreatorFileUploaded.entry); await loginPage.loginToContentServicesUsingUserModel(managerUser); @@ -215,11 +205,9 @@ describe('Version component permissions', () => { }); beforeAll(async (done) => { - const uploadActions = new UploadActions(); - await this.alfrescoJsApi.login(contributorUser.id, contributorUser.password); - const sameCreatorFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, sameCreatorFile.location, sameCreatorFile.name, site.entry.guid); + const sameCreatorFileUploaded = await uploadActions.uploadFile(sameCreatorFile.location, sameCreatorFile.name, site.entry.guid); Object.assign(sameCreatorFile, sameCreatorFileUploaded.entry); await loginPage.loginToContentServicesUsingUserModel(contributorUser); @@ -275,11 +263,9 @@ describe('Version component permissions', () => { }); beforeAll(async (done) => { - const uploadActions = new UploadActions(); - await this.alfrescoJsApi.login(collaboratorUser.id, collaboratorUser.password); - const sameCreatorFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, sameCreatorFile.location, sameCreatorFile.name, site.entry.guid); + const sameCreatorFileUploaded = await uploadActions.uploadFile(sameCreatorFile.location, sameCreatorFile.name, site.entry.guid); Object.assign(sameCreatorFile, sameCreatorFileUploaded.entry); await loginPage.loginToContentServicesUsingUserModel(collaboratorUser); diff --git a/e2e/content-services/version/version-properties.e2e.ts b/e2e/content-services/version/version-properties.e2e.ts index d014409896..1b96137755 100644 --- a/e2e/content-services/version/version-properties.e2e.ts +++ b/e2e/content-services/version/version-properties.e2e.ts @@ -16,20 +16,14 @@ */ import { by, element, browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, BrowserVisibility, BrowserActions } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { VersionManagePage } from '../../pages/adf/versionManagerPage'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; - import resources = require('../../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; -import { BrowserVisibility, BrowserActions } from '@alfresco/adf-testing'; describe('Version Properties', () => { @@ -49,23 +43,21 @@ describe('Version Properties', () => { 'name': resources.Files.ADF_DOCUMENTS.PNG.file_name, 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location }); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); beforeAll(async (done) => { - const uploadActions = new UploadActions(); - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const txtUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, txtFileModel.location, txtFileModel.name, '-my-'); + const txtUploadedFile = await uploadActions.uploadFile(txtFileModel.location, txtFileModel.name, '-my-'); Object.assign(txtFileModel, txtUploadedFile.entry); diff --git a/e2e/content-services/version/version-smoke-tests.e2e.ts b/e2e/content-services/version/version-smoke-tests.e2e.ts index 765c638b90..5aec178cd5 100644 --- a/e2e/content-services/version/version-smoke-tests.e2e.ts +++ b/e2e/content-services/version/version-smoke-tests.e2e.ts @@ -17,19 +17,14 @@ import { browser } from 'protractor'; -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, BrowserVisibility } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { VersionManagePage } from '../../pages/adf/versionManagerPage'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; - import resources = require('../../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; -import { BrowserVisibility } from '@alfresco/adf-testing'; describe('Version component', () => { @@ -65,23 +60,21 @@ describe('Version component', () => { 'name': resources.Files.ADF_DOCUMENTS.PNG_D.file_name, 'location': resources.Files.ADF_DOCUMENTS.PNG_D.file_location }); - - beforeAll(async (done) => { - - const uploadActions = new UploadActions(); - - this.alfrescoJsApi = new AlfrescoApi({ + this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + const uploadActions = new UploadActions(this.alfrescoJsApi); + + beforeAll(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - txtUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, txtFileModel.location, txtFileModel.name, '-my-'); + txtUploadedFile = await uploadActions.uploadFile(txtFileModel.location, txtFileModel.name, '-my-'); Object.assign(txtFileModel, txtUploadedFile.entry); txtFileModel.update(txtUploadedFile.entry); diff --git a/e2e/core/infinite-scrolling.e2e.ts b/e2e/core/infinite-scrolling.e2e.ts index e83b23146d..683d485df1 100644 --- a/e2e/core/infinite-scrolling.e2e.ts +++ b/e2e/core/infinite-scrolling.e2e.ts @@ -27,7 +27,7 @@ import { browser } from 'protractor'; import { Util } from '../util/util'; import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../actions/ACS/upload.actions'; +import { UploadActions } from '@alfresco/adf-testing'; describe('Enable infinite scrolling', () => { @@ -53,12 +53,11 @@ describe('Enable infinite scrolling', () => { }; beforeAll(async (done) => { - const uploadActions = new UploadActions(); - this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + const uploadActions = new UploadActions(this.alfrescoJsApi); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); @@ -71,14 +70,14 @@ describe('Enable infinite scrolling', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const folderUploadedModel = await uploadActions.createFolder(this.alfrescoJsApi, folderModel.name, '-my-'); - emptyFolderModel = await uploadActions.createFolder(this.alfrescoJsApi, 'emptyFolder', '-my-'); + const folderUploadedModel = await uploadActions.createFolder(folderModel.name, '-my-'); + emptyFolderModel = await uploadActions.createFolder('emptyFolder', '-my-'); - await uploadActions.createEmptyFiles(this.alfrescoJsApi, fileNames, folderUploadedModel.entry.id); + await uploadActions.createEmptyFiles(fileNames, folderUploadedModel.entry.id); - deleteUploaded = await uploadActions.createFolder(this.alfrescoJsApi, 'deleteFolder', '-my-'); + deleteUploaded = await uploadActions.createFolder('deleteFolder', '-my-'); - await uploadActions.createEmptyFiles(this.alfrescoJsApi, deleteFileNames, deleteUploaded.entry.id); + await uploadActions.createEmptyFiles(deleteFileNames, deleteUploaded.entry.id); done(); }); diff --git a/e2e/core/login/redirection.e2e.ts b/e2e/core/login/redirection.e2e.ts index 4f77f6c258..f8bdf1378e 100644 --- a/e2e/core/login/redirection.e2e.ts +++ b/e2e/core/login/redirection.e2e.ts @@ -17,17 +17,12 @@ import { browser } from 'protractor'; -import { LoginPage, SettingsPage } from '@alfresco/adf-testing'; +import { LoginPage, SettingsPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { ProcessServicesPage } from '../../pages/adf/process-services/processServicesPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; - -import { StringUtil } from '@alfresco/adf-testing'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { LogoutPage } from '../../pages/adf/demo-shell/logoutPage'; describe('Login component - Redirect', () => { @@ -44,15 +39,16 @@ describe('Login component - Redirect', () => { 'password': browser.params.testConfig.adf.adminPassword }); let uploadedFolder; - const uploadActions = new UploadActions(); + + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url, + hostBpm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const logoutPage = new LogoutPage(); beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url, - hostBpm: browser.params.testConfig.adf.url - }); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); @@ -61,7 +57,7 @@ describe('Login component - Redirect', () => { await this.alfrescoJsApi.login(user.id, user.password); - uploadedFolder = await uploadActions.createFolder(this.alfrescoJsApi, 'protecteFolder' + StringUtil.generateRandomString(), '-my-'); + uploadedFolder = await uploadActions.createFolder('protecteFolder' + StringUtil.generateRandomString(), '-my-'); done(); }); diff --git a/e2e/core/pagination-empty-current-page.e2e.ts b/e2e/core/pagination-empty-current-page.e2e.ts index 7045695a59..4ddb108202 100644 --- a/e2e/core/pagination-empty-current-page.e2e.ts +++ b/e2e/core/pagination-empty-current-page.e2e.ts @@ -25,7 +25,7 @@ import { FolderModel } from '../models/ACS/folderModel'; import { FileModel } from '../models/ACS/fileModel'; import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../actions/ACS/upload.actions'; +import { UploadActions } from '@alfresco/adf-testing'; import { Util } from '../util/util'; import resources = require('../util/resources'); @@ -66,12 +66,11 @@ describe('Pagination - returns to previous page when current is empty', () => { }); beforeAll(async (done) => { - const uploadActions = new UploadActions(); - this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + const uploadActions = new UploadActions(this.alfrescoJsApi); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); @@ -81,19 +80,19 @@ describe('Pagination - returns to previous page when current is empty', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const folderUploadedModel = await uploadActions.createFolder(this.alfrescoJsApi, folderModel.name, '-my-'); + const folderUploadedModel = await uploadActions.createFolder(folderModel.name, '-my-'); - const parentFolderResponse = await uploadActions.createFolder(this.alfrescoJsApi, parentFolderModel.name, '-my-'); + const parentFolderResponse = await uploadActions.createFolder(parentFolderModel.name, '-my-'); for (let i = 0; i < nrOfFolders; i++) { - await uploadActions.createFolder(this.alfrescoJsApi, folderNames[i], parentFolderResponse.entry.id); + await uploadActions.createFolder(folderNames[i], parentFolderResponse.entry.id); } - await uploadActions.createEmptyFiles(this.alfrescoJsApi, fileNames, folderUploadedModel.entry.id); + await uploadActions.createEmptyFiles(fileNames, folderUploadedModel.entry.id); - lastFolderResponse = await uploadActions.createFolder(this.alfrescoJsApi, folderNames[5], parentFolderResponse.entry.id); + lastFolderResponse = await uploadActions.createFolder(folderNames[5], parentFolderResponse.entry.id); - pngFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileInfo.location, pngFileInfo.name, lastFolderResponse.entry.id); + pngFileUploaded = await uploadActions.uploadFile(pngFileInfo.location, pngFileInfo.name, lastFolderResponse.entry.id); await loginPage.loginToContentServicesUsingUserModel(acsUser); diff --git a/e2e/core/viewer/file-extensions/viewer-arcive.component.e2e.ts b/e2e/core/viewer/file-extensions/viewer-arcive.component.e2e.ts index dd51b10580..86e801b7da 100644 --- a/e2e/core/viewer/file-extensions/viewer-arcive.component.e2e.ts +++ b/e2e/core/viewer/file-extensions/viewer-arcive.component.e2e.ts @@ -17,28 +17,27 @@ import { browser } from 'protractor'; -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { ViewerPage } from '../../../pages/adf/viewerPage'; import { ContentServicesPage } from '../../../pages/adf/contentServicesPage'; - import CONSTANTS = require('../../../util/constants'); import resources = require('../../../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; - import { FolderModel } from '../../../models/ACS/folderModel'; import { AcsUserModel } from '../../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../../actions/ACS/upload.actions'; describe('Viewer', () => { const viewerPage = new ViewerPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); let site; const acsUser = new AcsUserModel(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const archiveFolderInfo = new FolderModel({ 'name': resources.Files.ADF_DOCUMENTS.ARCHIVE_FOLDER.folder_name, @@ -47,11 +46,6 @@ describe('Viewer', () => { beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -75,9 +69,9 @@ describe('Viewer', () => { let archiveFolderUploaded; beforeAll(async (done) => { - archiveFolderUploaded = await uploadActions.createFolder(this.alfrescoJsApi, archiveFolderInfo.name, '-my-'); + archiveFolderUploaded = await uploadActions.createFolder(archiveFolderInfo.name, '-my-'); - uploadedArchives = await uploadActions.uploadFolder(this.alfrescoJsApi, archiveFolderInfo.location, archiveFolderUploaded.entry.id); + uploadedArchives = await uploadActions.uploadFolder(archiveFolderInfo.location, archiveFolderUploaded.entry.id); await loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); @@ -86,7 +80,7 @@ describe('Viewer', () => { }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, archiveFolderUploaded.entry.id); + await uploadActions.deleteFileOrFolder(archiveFolderUploaded.entry.id); done(); }); diff --git a/e2e/core/viewer/file-extensions/viewer-component.e2e.ts b/e2e/core/viewer/file-extensions/viewer-component.e2e.ts index 6fa47f75d1..a4e5d8f824 100644 --- a/e2e/core/viewer/file-extensions/viewer-component.e2e.ts +++ b/e2e/core/viewer/file-extensions/viewer-component.e2e.ts @@ -16,21 +16,15 @@ */ import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { ViewerPage } from '../../../pages/adf/viewerPage'; import { ContentServicesPage } from '../../../pages/adf/contentServicesPage'; - import CONSTANTS = require('../../../util/constants'); import resources = require('../../../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; import { FileModel } from '../../..//models/ACS/fileModel'; - import { FolderModel } from '../../../models/ACS/folderModel'; import { AcsUserModel } from '../../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../../actions/ACS/upload.actions'; import { NavigationBarPage } from '../../..//pages/adf/navigationBarPage'; describe('Viewer', () => { @@ -39,7 +33,11 @@ describe('Viewer', () => { const navigationBarPage = new NavigationBarPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let site; const acsUser = new AcsUserModel(); let pngFileUploaded; @@ -55,12 +53,6 @@ describe('Viewer', () => { }); beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -76,7 +68,7 @@ describe('Viewer', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - pngFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileInfo.location, pngFileInfo.name, site.entry.guid); + pngFileUploaded = await uploadActions.uploadFile(pngFileInfo.location, pngFileInfo.name, site.entry.guid); done(); }); @@ -99,9 +91,9 @@ describe('Viewer', () => { let otherFolderUploaded; beforeAll(async (done) => { - otherFolderUploaded = await uploadActions.createFolder(this.alfrescoJsApi, otherFolderInfo.name, '-my-'); + otherFolderUploaded = await uploadActions.createFolder(otherFolderInfo.name, '-my-'); - uploadedOthers = await uploadActions.uploadFolder(this.alfrescoJsApi, otherFolderInfo.location, otherFolderUploaded.entry.id); + uploadedOthers = await uploadActions.uploadFolder(otherFolderInfo.location, otherFolderUploaded.entry.id); await loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); @@ -110,7 +102,7 @@ describe('Viewer', () => { }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, otherFolderUploaded.entry.id); + await uploadActions.deleteFileOrFolder(otherFolderUploaded.entry.id); done(); }); diff --git a/e2e/core/viewer/file-extensions/viewer-excel.component.e2e.ts b/e2e/core/viewer/file-extensions/viewer-excel.component.e2e.ts index b4f0a0198e..2053362b92 100644 --- a/e2e/core/viewer/file-extensions/viewer-excel.component.e2e.ts +++ b/e2e/core/viewer/file-extensions/viewer-excel.component.e2e.ts @@ -16,27 +16,20 @@ */ import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, StringUtil, UploadActions } from '@alfresco/adf-testing'; import { ViewerPage } from '../../../pages/adf/viewerPage'; import { ContentServicesPage } from '../../../pages/adf/contentServicesPage'; - import CONSTANTS = require('../../../util/constants'); import resources = require('../../../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; - import { FolderModel } from '../../../models/ACS/folderModel'; import { AcsUserModel } from '../../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../../actions/ACS/upload.actions'; describe('Viewer', () => { const viewerPage = new ViewerPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); let site; const acsUser = new AcsUserModel(); @@ -44,14 +37,13 @@ describe('Viewer', () => { 'name': resources.Files.ADF_DOCUMENTS.EXCEL_FOLDER.folder_name, 'location': resources.Files.ADF_DOCUMENTS.EXCEL_FOLDER.folder_location }); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -75,9 +67,9 @@ describe('Viewer', () => { let excelFolderUploaded; beforeAll(async (done) => { - excelFolderUploaded = await uploadActions.createFolder(this.alfrescoJsApi, excelFolderInfo.name, '-my-'); + excelFolderUploaded = await uploadActions.createFolder(excelFolderInfo.name, '-my-'); - uploadedExcels = await uploadActions.uploadFolder(this.alfrescoJsApi, excelFolderInfo.location, excelFolderUploaded.entry.id); + uploadedExcels = await uploadActions.uploadFolder(excelFolderInfo.location, excelFolderUploaded.entry.id); await loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); @@ -86,7 +78,7 @@ describe('Viewer', () => { }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, excelFolderUploaded.entry.id); + await uploadActions.deleteFileOrFolder(excelFolderUploaded.entry.id); done(); }); diff --git a/e2e/core/viewer/file-extensions/viewer-image.component.e2e.ts b/e2e/core/viewer/file-extensions/viewer-image.component.e2e.ts index 540311f99b..e78186fd08 100644 --- a/e2e/core/viewer/file-extensions/viewer-image.component.e2e.ts +++ b/e2e/core/viewer/file-extensions/viewer-image.component.e2e.ts @@ -16,27 +16,25 @@ */ import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, StringUtil, UploadActions } from '@alfresco/adf-testing'; import { ViewerPage } from '../../../pages/adf/viewerPage'; import { ContentServicesPage } from '../../../pages/adf/contentServicesPage'; - import CONSTANTS = require('../../../util/constants'); import resources = require('../../../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; - import { FolderModel } from '../../../models/ACS/folderModel'; import { AcsUserModel } from '../../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../../actions/ACS/upload.actions'; describe('Viewer', () => { const viewerPage = new ViewerPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let site; const acsUser = new AcsUserModel(); @@ -51,12 +49,6 @@ describe('Viewer', () => { }); beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -81,13 +73,13 @@ describe('Viewer', () => { let imgFolderUploaded, imgFolderRenditionUploaded; beforeAll(async (done) => { - imgFolderUploaded = await uploadActions.createFolder(this.alfrescoJsApi, imgFolderInfo.name, '-my-'); + imgFolderUploaded = await uploadActions.createFolder(imgFolderInfo.name, '-my-'); - uploadedImages = await uploadActions.uploadFolder(this.alfrescoJsApi, imgFolderInfo.location, imgFolderUploaded.entry.id); + uploadedImages = await uploadActions.uploadFolder(imgFolderInfo.location, imgFolderUploaded.entry.id); - imgFolderRenditionUploaded = await uploadActions.createFolder(this.alfrescoJsApi, imgRenditionFolderInfo.name, imgFolderUploaded.entry.id); + imgFolderRenditionUploaded = await uploadActions.createFolder(imgRenditionFolderInfo.name, imgFolderUploaded.entry.id); - uploadedImgRenditionFolderInfo = await uploadActions.uploadFolder(this.alfrescoJsApi, imgRenditionFolderInfo.location, imgFolderRenditionUploaded.entry.id); + uploadedImgRenditionFolderInfo = await uploadActions.uploadFolder(imgRenditionFolderInfo.location, imgFolderRenditionUploaded.entry.id); await loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); @@ -96,7 +88,7 @@ describe('Viewer', () => { }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, imgFolderUploaded.entry.id); + await uploadActions.deleteFileOrFolder(imgFolderUploaded.entry.id); done(); }); diff --git a/e2e/core/viewer/file-extensions/viewer-powerpoint.component.e2e.ts b/e2e/core/viewer/file-extensions/viewer-powerpoint.component.e2e.ts index 6a4137e998..7092b0a44c 100644 --- a/e2e/core/viewer/file-extensions/viewer-powerpoint.component.e2e.ts +++ b/e2e/core/viewer/file-extensions/viewer-powerpoint.component.e2e.ts @@ -15,19 +15,14 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { ViewerPage } from '../../../pages/adf/viewerPage'; import { ContentServicesPage } from '../../../pages/adf/contentServicesPage'; - import CONSTANTS = require('../../../util/constants'); import resources = require('../../../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; - import { FolderModel } from '../../../models/ACS/folderModel'; import { AcsUserModel } from '../../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../../actions/ACS/upload.actions'; import { browser } from 'protractor'; describe('Viewer', () => { @@ -35,7 +30,12 @@ describe('Viewer', () => { const viewerPage = new ViewerPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + + const uploadActions = new UploadActions(this.alfrescoJsApi); let site; const acsUser = new AcsUserModel(); @@ -45,12 +45,6 @@ describe('Viewer', () => { }); beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -75,20 +69,18 @@ describe('Viewer', () => { let pptFolderUploaded; beforeAll(async (done) => { - pptFolderUploaded = await uploadActions.createFolder(this.alfrescoJsApi, pptFolderInfo.name, '-my-'); + pptFolderUploaded = await uploadActions.createFolder(pptFolderInfo.name, '-my-'); - uploadedPpt = await uploadActions.uploadFolder(this.alfrescoJsApi, pptFolderInfo.location, pptFolderUploaded.entry.id); + uploadedPpt = await uploadActions.uploadFolder(pptFolderInfo.location, pptFolderUploaded.entry.id); - await loginPage.loginToContentServicesUsingUserModel(acsUser); + loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); - browser.driver.sleep(15000); - done(); }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pptFolderUploaded.entry.id); + await uploadActions.deleteFileOrFolder(pptFolderUploaded.entry.id); done(); }); @@ -98,7 +90,7 @@ describe('Viewer', () => { uploadedPpt.forEach((currentFile) => { if (currentFile.entry.name !== '.DS_Store') { contentServicesPage.doubleClickRow(currentFile.entry.name); - viewerPage.checkFileIsLoaded(currentFile.entry.name); + viewerPage.checkFileIsLoaded(); viewerPage.clickCloseButton(); } }); diff --git a/e2e/core/viewer/file-extensions/viewer-text.component.e2e.ts b/e2e/core/viewer/file-extensions/viewer-text.component.e2e.ts index bb49709789..cdd33466ec 100644 --- a/e2e/core/viewer/file-extensions/viewer-text.component.e2e.ts +++ b/e2e/core/viewer/file-extensions/viewer-text.component.e2e.ts @@ -16,27 +16,25 @@ */ import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { ViewerPage } from '../../../pages/adf/viewerPage'; import { ContentServicesPage } from '../../../pages/adf/contentServicesPage'; - import CONSTANTS = require('../../../util/constants'); import resources = require('../../../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; - import { FolderModel } from '../../../models/ACS/folderModel'; import { AcsUserModel } from '../../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../../actions/ACS/upload.actions'; describe('Viewer', () => { const viewerPage = new ViewerPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let site; const acsUser = new AcsUserModel(); @@ -46,12 +44,6 @@ describe('Viewer', () => { }); beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -76,9 +68,9 @@ describe('Viewer', () => { let textFolderUploaded; beforeAll(async (done) => { - textFolderUploaded = await uploadActions.createFolder(this.alfrescoJsApi, textFolderInfo.name, '-my-'); + textFolderUploaded = await uploadActions.createFolder(textFolderInfo.name, '-my-'); - uploadedTexts = await uploadActions.uploadFolder(this.alfrescoJsApi, textFolderInfo.location, textFolderUploaded.entry.id); + uploadedTexts = await uploadActions.uploadFolder(textFolderInfo.location, textFolderUploaded.entry.id); await loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); @@ -87,7 +79,7 @@ describe('Viewer', () => { }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, textFolderUploaded.entry.id); + await uploadActions.deleteFileOrFolder(textFolderUploaded.entry.id); done(); }); diff --git a/e2e/core/viewer/file-extensions/viewer-word.component.e2e.ts b/e2e/core/viewer/file-extensions/viewer-word.component.e2e.ts index 9a39704f7a..03339f361a 100644 --- a/e2e/core/viewer/file-extensions/viewer-word.component.e2e.ts +++ b/e2e/core/viewer/file-extensions/viewer-word.component.e2e.ts @@ -16,27 +16,25 @@ */ import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { ViewerPage } from '../../../pages/adf/viewerPage'; import { ContentServicesPage } from '../../../pages/adf/contentServicesPage'; - import CONSTANTS = require('../../../util/constants'); import resources = require('../../../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; - import { FolderModel } from '../../../models/ACS/folderModel'; import { AcsUserModel } from '../../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../../actions/ACS/upload.actions'; describe('Viewer', () => { const viewerPage = new ViewerPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let site; const acsUser = new AcsUserModel(); @@ -46,12 +44,6 @@ describe('Viewer', () => { }); beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -76,9 +68,9 @@ describe('Viewer', () => { let wordFolderUploaded; beforeAll(async (done) => { - wordFolderUploaded = await uploadActions.createFolder(this.alfrescoJsApi, wordFolderInfo.name, '-my-'); + wordFolderUploaded = await uploadActions.createFolder(wordFolderInfo.name, '-my-'); - uploadedWords = await uploadActions.uploadFolder(this.alfrescoJsApi, wordFolderInfo.location, wordFolderUploaded.entry.id); + uploadedWords = await uploadActions.uploadFolder(wordFolderInfo.location, wordFolderUploaded.entry.id); await loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); @@ -87,7 +79,7 @@ describe('Viewer', () => { }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, wordFolderUploaded.entry.id); + await uploadActions.deleteFileOrFolder(wordFolderUploaded.entry.id); done(); }); diff --git a/e2e/core/viewer/info-drawer.component.e2e.ts b/e2e/core/viewer/info-drawer.component.e2e.ts index 333a585082..7138379f08 100644 --- a/e2e/core/viewer/info-drawer.component.e2e.ts +++ b/e2e/core/viewer/info-drawer.component.e2e.ts @@ -16,21 +16,15 @@ */ import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; - import CONSTANTS = require('../../util/constants'); import resources = require('../../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; - import { FileModel } from '../../models/ACS/fileModel'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; describe('Info Drawer', () => { @@ -38,7 +32,11 @@ describe('Info Drawer', () => { const navigationBarPage = new NavigationBarPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let site; const acsUser = new AcsUserModel(); let pngFileUploaded; @@ -49,12 +47,6 @@ describe('Info Drawer', () => { }); beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -70,13 +62,13 @@ describe('Info Drawer', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - pngFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileInfo.location, pngFileInfo.name, site.entry.guid); + pngFileUploaded = await uploadActions.uploadFile(pngFileInfo.location, pngFileInfo.name, site.entry.guid); done(); }); afterAll(async (done) => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pngFileUploaded.entry.id); + await uploadActions.deleteFileOrFolder(pngFileUploaded.entry.id); done(); }); diff --git a/e2e/core/viewer/viewer-content-services-component.e2e.ts b/e2e/core/viewer/viewer-content-services-component.e2e.ts index 1045eff70a..ba4234cdc7 100644 --- a/e2e/core/viewer/viewer-content-services-component.e2e.ts +++ b/e2e/core/viewer/viewer-content-services-component.e2e.ts @@ -15,23 +15,17 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; -import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; -import { ViewerPage } from '../../pages/adf/viewerPage'; - -import resources = require('../../util/resources'); - -import { FileModel } from '../../models/ACS/fileModel'; -import { AcsUserModel } from '../../models/ACS/acsUserModel'; - -import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { browser } from 'protractor'; -describe('Content Services Viewer', () => { - const originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL; - jasmine.DEFAULT_TIMEOUT_INTERVAL = 50000; +import { LoginPage, UploadActions } from '@alfresco/adf-testing'; +import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; +import { ViewerPage } from '../../pages/adf/viewerPage'; +import resources = require('../../util/resources'); +import { FileModel } from '../../models/ACS/fileModel'; +import { AcsUserModel } from '../../models/ACS/acsUserModel'; +import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; +describe('Content Services Viewer', () => { const acsUser = new AcsUserModel(); const viewerPage = new ViewerPage(); const contentServicesPage = new ContentServicesPage(); @@ -74,14 +68,13 @@ describe('Content Services Viewer', () => { 'name': resources.Files.ADF_DOCUMENTS.PPT.file_name, 'firstPageText': resources.Files.ADF_DOCUMENTS.PPT.first_page_text }); - - beforeAll(async (done) => { - const uploadActions = new UploadActions(); - - this.alfrescoJsApi = new AlfrescoApi({ + this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + const uploadActions = new UploadActions(this.alfrescoJsApi); + + beforeAll(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); @@ -89,25 +82,25 @@ describe('Content Services Viewer', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const pdfFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pdfFile.location, pdfFile.name, '-my-'); + const pdfFileUploaded = await uploadActions.uploadFile(pdfFile.location, pdfFile.name, '-my-'); Object.assign(pdfFile, pdfFileUploaded.entry); - const protectedFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, protectedFile.location, protectedFile.name, '-my-'); + const protectedFileUploaded = await uploadActions.uploadFile(protectedFile.location, protectedFile.name, '-my-'); Object.assign(protectedFile, protectedFileUploaded.entry); - const docxFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, docxFile.location, docxFile.name, '-my-'); + const docxFileUploaded = await uploadActions.uploadFile(docxFile.location, docxFile.name, '-my-'); Object.assign(docxFile, docxFileUploaded.entry); - const jpgFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, jpgFile.location, jpgFile.name, '-my-'); + const jpgFileUploaded = await uploadActions.uploadFile(jpgFile.location, jpgFile.name, '-my-'); Object.assign(jpgFile, jpgFileUploaded.entry); - const mp4FileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, mp4File.location, mp4File.name, '-my-'); + const mp4FileUploaded = await uploadActions.uploadFile(mp4File.location, mp4File.name, '-my-'); Object.assign(mp4File, mp4FileUploaded.entry); - const pptFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pptFile.location, pptFile.name, '-my-'); + const pptFileUploaded = await uploadActions.uploadFile(pptFile.location, pptFile.name, '-my-'); Object.assign(pptFile, pptFileUploaded.entry); - const unsupportedFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, unsupportedFile.location, unsupportedFile.name, '-my-'); + const unsupportedFileUploaded = await uploadActions.uploadFile(unsupportedFile.location, unsupportedFile.name, '-my-'); Object.assign(unsupportedFile, unsupportedFileUploaded.entry); await loginPage.loginToContentServicesUsingUserModel(acsUser); @@ -118,16 +111,14 @@ describe('Content Services Viewer', () => { }); afterAll(async (done) => { - const uploadActions = new UploadActions(); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pdfFile.getId()); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, protectedFile.getId()); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, docxFile.getId()); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, jpgFile.getId()); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, mp4File.getId()); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pptFile.getId()); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, unsupportedFile.getId()); - jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout; + await uploadActions.deleteFileOrFolder(pdfFile.getId()); + await uploadActions.deleteFileOrFolder(protectedFile.getId()); + await uploadActions.deleteFileOrFolder(docxFile.getId()); + await uploadActions.deleteFileOrFolder(jpgFile.getId()); + await uploadActions.deleteFileOrFolder(mp4File.getId()); + await uploadActions.deleteFileOrFolder(pptFile.getId()); + await uploadActions.deleteFileOrFolder(unsupportedFile.getId()); done(); }); diff --git a/e2e/core/viewer/viewer-custom-toolbar-info-drawer.e2e.ts b/e2e/core/viewer/viewer-custom-toolbar-info-drawer.e2e.ts index 5a0134c6d8..a68194dfe6 100644 --- a/e2e/core/viewer/viewer-custom-toolbar-info-drawer.e2e.ts +++ b/e2e/core/viewer/viewer-custom-toolbar-info-drawer.e2e.ts @@ -16,25 +16,24 @@ */ import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions } from '@alfresco/adf-testing'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; - import resources = require('../../util/resources'); - import { FileModel } from '../../models/ACS/fileModel'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; describe('Viewer', () => { const viewerPage = new ViewerPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const acsUser = new AcsUserModel(); let txtFileUploaded; @@ -44,18 +43,12 @@ describe('Viewer', () => { }); beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - txtFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, txtFileInfo.location, txtFileInfo.name, '-my-'); + txtFileUploaded = await uploadActions.uploadFile(txtFileInfo.location, txtFileInfo.name, '-my-'); await loginPage.loginToContentServicesUsingUserModel(acsUser); @@ -63,7 +56,7 @@ describe('Viewer', () => { }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, txtFileUploaded.entry.id); + await uploadActions.deleteFileOrFolder(txtFileUploaded.entry.id); done(); }); diff --git a/e2e/core/viewer/viewer-extension.e2e.ts b/e2e/core/viewer/viewer-extension.e2e.ts index 89a8e1bd2c..ecf5e57248 100644 --- a/e2e/core/viewer/viewer-extension.e2e.ts +++ b/e2e/core/viewer/viewer-extension.e2e.ts @@ -16,22 +16,16 @@ */ import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, StringUtil, UploadActions } from '@alfresco/adf-testing'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { MonacoExtensionPage } from '../../pages/adf/demo-shell/monacoExtensionPage'; - import CONSTANTS = require('../../util/constants'); import resources = require('../../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; - import { FileModel } from '../../models/ACS/fileModel'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; describe('Viewer', () => { @@ -39,7 +33,11 @@ describe('Viewer', () => { const navigationBarPage = new NavigationBarPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let site; const acsUser = new AcsUserModel(); const monacoExtensionPage = new MonacoExtensionPage(); @@ -51,13 +49,8 @@ describe('Viewer', () => { }); beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); site = await this.alfrescoJsApi.core.sitesApi.createSite({ @@ -72,7 +65,7 @@ describe('Viewer', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - jsFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, jsFileInfo.location, jsFileInfo.name, '-my-'); + jsFileUploaded = await uploadActions.uploadFile(jsFileInfo.location, jsFileInfo.name, '-my-'); await loginPage.loginToContentServicesUsingUserModel(acsUser); @@ -81,7 +74,7 @@ describe('Viewer', () => { afterAll(async (done) => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, jsFileUploaded.entry.id); + await uploadActions.deleteFileOrFolder(jsFileUploaded.entry.id); done(); }); diff --git a/e2e/core/viewer/viewer-properties.e2e.ts b/e2e/core/viewer/viewer-properties.e2e.ts index 997327b600..26b76ad8e4 100644 --- a/e2e/core/viewer/viewer-properties.e2e.ts +++ b/e2e/core/viewer/viewer-properties.e2e.ts @@ -16,20 +16,14 @@ */ import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, DataTableComponentPage } from '@alfresco/adf-testing'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; -import { DataTableComponentPage } from '@alfresco/adf-testing'; - import resources = require('../../util/resources'); - import { FileModel } from '../../models/ACS/fileModel'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; describe('Viewer - properties', () => { @@ -49,25 +43,23 @@ describe('Viewer - properties', () => { 'name': 'fileForOverlay.png', 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location }); - - beforeAll(async (done) => { - const uploadActions = new UploadActions(); - - this.alfrescoJsApi = new AlfrescoApi({ + this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); + const uploadActions = new UploadActions(this.alfrescoJsApi); + beforeAll(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - let pngFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pngFile.location, pngFile.name, '-my-'); + let pngFileUploaded = await uploadActions.uploadFile(pngFile.location, pngFile.name, '-my-'); Object.assign(pngFile, pngFileUploaded.entry); - pngFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, fileForOverlay.location, fileForOverlay.name, '-my-'); + pngFileUploaded = await uploadActions.uploadFile(fileForOverlay.location, fileForOverlay.name, '-my-'); Object.assign(fileForOverlay, pngFileUploaded.entry); await loginPage.loginToContentServicesUsingUserModel(acsUser); @@ -85,9 +77,7 @@ describe('Viewer - properties', () => { }); afterAll(async (done) => { - const uploadActions = new UploadActions(); - - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pngFile.getId()); + await uploadActions.deleteFileOrFolder(pngFile.getId()); done(); }); diff --git a/e2e/core/viewer/viewer-share-content.ts b/e2e/core/viewer/viewer-share-content.ts index 531189e03e..aefc8cbbad 100644 --- a/e2e/core/viewer/viewer-share-content.ts +++ b/e2e/core/viewer/viewer-share-content.ts @@ -15,21 +15,16 @@ * limitations under the License. */ -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil, BrowserActions } from '@alfresco/adf-testing'; import { ViewerPage } from '../../pages/adf/viewerPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { ShareDialog } from '../../pages/adf/dialog/shareDialog'; - import CONSTANTS = require('../../util/constants'); import resources = require('../../util/resources'); -import { StringUtil, BrowserActions } from '@alfresco/adf-testing'; - import { FileModel } from '../../models/ACS/fileModel'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { browser } from 'protractor'; describe('Viewer', () => { @@ -38,7 +33,11 @@ describe('Viewer', () => { const navigationBarPage = new NavigationBarPage(); const loginPage = new LoginPage(); const contentServicesPage = new ContentServicesPage(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); let site; const acsUser = new AcsUserModel(); let pngFileUploaded; @@ -58,12 +57,6 @@ describe('Viewer', () => { let pngFileShared, wordFileUploaded; beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); @@ -79,11 +72,11 @@ describe('Viewer', () => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - pngFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileInfo.location, pngFileInfo.name, site.entry.guid); + pngFileUploaded = await uploadActions.uploadFile(pngFileInfo.location, pngFileInfo.name, site.entry.guid); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - wordFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, wordFileInfo.location, wordFileInfo.name, '-my-'); + wordFileUploaded = await uploadActions.uploadFile(wordFileInfo.location, wordFileInfo.name, '-my-'); pngFileShared = await this.alfrescoJsApi.core.sharedlinksApi.addSharedLink({ 'nodeId': pngFileUploaded.entry.id }); @@ -92,7 +85,7 @@ describe('Viewer', () => { afterAll(async (done) => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, wordFileUploaded.entry.id); + await uploadActions.deleteFileOrFolder(wordFileUploaded.entry.id); done(); }); diff --git a/e2e/search/components/search-checkList.e2e.ts b/e2e/search/components/search-checkList.e2e.ts index 850b459d08..1c12697b78 100644 --- a/e2e/search/components/search-checkList.e2e.ts +++ b/e2e/search/components/search-checkList.e2e.ts @@ -15,20 +15,15 @@ * limitations under the License. */ -import { LoginPage, BrowserActions } from '@alfresco/adf-testing'; +import { LoginPage, BrowserActions, UploadActions, StringUtil, LocalStorageUtil } from '@alfresco/adf-testing'; import { SearchResultsPage } from '../../pages/adf/searchResultsPage'; import { SearchFiltersPage } from '../../pages/adf/searchFiltersPage'; import { SearchDialog } from '../../pages/adf/dialog/searchDialog'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; - import { SearchConfiguration } from '../search.config'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { browser } from 'protractor'; -import { StringUtil, LocalStorageUtil } from '@alfresco/adf-testing'; describe('Search Checklist Component', () => { @@ -39,7 +34,11 @@ describe('Search Checklist Component', () => { const navigationBarPage = new NavigationBarPage(); const acsUser = new AcsUserModel(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const filterType = { folder: 'Folder', @@ -56,26 +55,14 @@ describe('Search Checklist Component', () => { let createdFile, createdFolder; beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - createdFolder = await this.alfrescoJsApi.nodes.addNode('-my-', { - name: nodeNames.folder, - nodeType: 'cm:folder' - }); - createdFile = await this.alfrescoJsApi.nodes.addNode('-my-', { - name: nodeNames.document, - nodeType: 'cm:content' - }); + createdFolder = await this.alfrescoJsApi.nodes.addNode('-my-', { name: nodeNames.folder, nodeType: 'cm:folder' }); + createdFile = await this.alfrescoJsApi.nodes.addNode('-my-', { name: nodeNames.document, nodeType: 'cm:content' }); await browser.driver.sleep(15000); @@ -89,8 +76,8 @@ describe('Search Checklist Component', () => { afterAll(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, createdFile.entry.id); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, createdFolder.entry.id); + await uploadActions.deleteFileOrFolder(createdFile.entry.id); + await uploadActions.deleteFileOrFolder(createdFolder.entry.id); done(); }); diff --git a/e2e/search/components/search-number-range.e2e.ts b/e2e/search/components/search-number-range.e2e.ts index bff19c5b25..1926893f29 100644 --- a/e2e/search/components/search-number-range.e2e.ts +++ b/e2e/search/components/search-number-range.e2e.ts @@ -15,15 +15,12 @@ * limitations under the License. */ -import { LoginPage, LocalStorageUtil, DateUtil } from '@alfresco/adf-testing'; +import { LoginPage, LocalStorageUtil, UploadActions, DataTableComponentPage, DateUtil } from '@alfresco/adf-testing'; import { SearchDialog } from '../../pages/adf/dialog/searchDialog'; -import { DataTableComponentPage } from '@alfresco/adf-testing'; import { SearchResultsPage } from '../../pages/adf/searchResultsPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { SearchFiltersPage } from '../../pages/adf/searchFiltersPage'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; import { browser } from 'protractor'; @@ -53,23 +50,22 @@ describe('Search Number Range Filter', () => { }); let file2Bytes, file0Bytes; - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - file2Bytes = await uploadActions.uploadFile(this.alfrescoJsApi, file2BytesModel.location, file2BytesModel.name, '-my-'); - file0Bytes = await uploadActions.uploadFile(this.alfrescoJsApi, file0BytesModel.location, file0BytesModel.name, '-my-'); + file2Bytes = await uploadActions.uploadFile(file2BytesModel.location, file2BytesModel.name, '-my-'); + file0Bytes = await uploadActions.uploadFile(file0BytesModel.location, file0BytesModel.name, '-my-'); await browser.driver.sleep(15000); loginPage.loginToContentServices(acsUser.id, acsUser.password); @@ -83,8 +79,8 @@ describe('Search Number Range Filter', () => { afterAll(async (done) => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, file2Bytes.entry.id); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, file0Bytes.entry.id); + await uploadActions.deleteFileOrFolder(file2Bytes.entry.id); + await uploadActions.deleteFileOrFolder(file0Bytes.entry.id); done(); }); diff --git a/e2e/search/components/search-radio.e2e.ts b/e2e/search/components/search-radio.e2e.ts index ae4297006f..deeb572756 100644 --- a/e2e/search/components/search-radio.e2e.ts +++ b/e2e/search/components/search-radio.e2e.ts @@ -15,20 +15,15 @@ * limitations under the License. */ -import { LoginPage, BrowserActions } from '@alfresco/adf-testing'; +import { LoginPage, BrowserActions, StringUtil, LocalStorageUtil, UploadActions } from '@alfresco/adf-testing'; import { SearchFiltersPage } from '../../pages/adf/searchFiltersPage'; import { SearchResultsPage } from '../../pages/adf/searchResultsPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { SearchDialog } from '../../pages/adf/dialog/searchDialog'; - import { AcsUserModel } from '../../models/ACS/acsUserModel'; - import { SearchConfiguration } from '../search.config'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { browser } from 'protractor'; -import { StringUtil, LocalStorageUtil } from '@alfresco/adf-testing'; describe('Search Radio Component', () => { @@ -39,7 +34,11 @@ describe('Search Radio Component', () => { const searchResults = new SearchResultsPage(); const acsUser = new AcsUserModel(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const filterType = { none: 'None', @@ -58,13 +57,8 @@ describe('Search Radio Component', () => { let createdFile, createdFolder; beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); @@ -89,8 +83,8 @@ describe('Search Radio Component', () => { afterAll(async (done) => { await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, createdFile.entry.id); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, createdFolder.entry.id); + await uploadActions.deleteFileOrFolder(createdFile.entry.id); + await uploadActions.deleteFileOrFolder(createdFolder.entry.id); done(); }); diff --git a/e2e/search/components/search-slider.e2e.ts b/e2e/search/components/search-slider.e2e.ts index 4c66fe9df8..80ff186b27 100644 --- a/e2e/search/components/search-slider.e2e.ts +++ b/e2e/search/components/search-slider.e2e.ts @@ -15,15 +15,12 @@ * limitations under the License. */ -import { LoginPage, LocalStorageUtil } from '@alfresco/adf-testing'; +import { LoginPage, LocalStorageUtil, UploadActions, DataTableComponentPage } from '@alfresco/adf-testing'; import { SearchDialog } from '../../pages/adf/dialog/searchDialog'; -import { DataTableComponentPage } from '@alfresco/adf-testing'; import { SearchResultsPage } from '../../pages/adf/searchResultsPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { SearchFiltersPage } from '../../pages/adf/searchFiltersPage'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { FileModel } from '../../models/ACS/fileModel'; import { browser } from 'protractor'; @@ -48,22 +45,21 @@ describe('Search Number Range Filter', () => { }); let file2Bytes; - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - file2Bytes = await uploadActions.uploadFile(this.alfrescoJsApi, file2BytesModel.location, file2BytesModel.name, '-my-'); + file2Bytes = await uploadActions.uploadFile(file2BytesModel.location, file2BytesModel.name, '-my-'); await browser.driver.sleep(15000); loginPage.loginToContentServices(acsUser.id, acsUser.password); @@ -78,7 +74,7 @@ describe('Search Number Range Filter', () => { afterAll(async (done) => { try { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, file2Bytes.entry.id); + await uploadActions.deleteFileOrFolder(file2Bytes.entry.id); } catch (error) { } done(); diff --git a/e2e/search/components/search-sorting-picker.e2e.ts b/e2e/search/components/search-sorting-picker.e2e.ts index 7b777d78da..9239bde831 100644 --- a/e2e/search/components/search-sorting-picker.e2e.ts +++ b/e2e/search/components/search-sorting-picker.e2e.ts @@ -15,16 +15,14 @@ * limitations under the License. */ -import { LoginPage, LocalStorageUtil, BrowserActions, SearchSortingPickerPage } from '@alfresco/adf-testing'; +import { LoginPage, LocalStorageUtil, BrowserActions, SearchSortingPickerPage, UploadActions } from '@alfresco/adf-testing'; import { SearchDialog } from '../../pages/adf/dialog/searchDialog'; import { SearchResultsPage } from '../../pages/adf/searchResultsPage'; import { NavigationBarPage } from '../../pages/adf/navigationBarPage'; import { SearchFiltersPage } from '../../pages/adf/searchFiltersPage'; import { ContentServicesPage } from '../../pages/adf/contentServicesPage'; import { NodeActions } from '../../actions/ACS/node.actions'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../../actions/ACS/upload.actions'; import { AcsUserModel } from '../../models/ACS/acsUserModel'; import { browser } from 'protractor'; import resources = require('../../util/resources'); @@ -40,7 +38,6 @@ describe('Search Sorting Picker', () => { const searchSortingPicker = new SearchSortingPickerPage(); const contentServices = new ContentServicesPage(); const nodeActions = new NodeActions(); - const acsUser = new AcsUserModel(); const pngAModel = { @@ -54,26 +51,23 @@ describe('Search Sorting Picker', () => { }; let pngA, pngD; - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const search = '_png_file.png'; let jsonFile; beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - pngA = await uploadActions.uploadFile(this.alfrescoJsApi, pngAModel.location, pngAModel.name, '-my-'); + pngA = await uploadActions.uploadFile(pngAModel.location, pngAModel.name, '-my-'); await browser.driver.sleep(3000); - pngD = await uploadActions.uploadFile(this.alfrescoJsApi, pngDModel.location, pngDModel.name, '-my-'); + pngD = await uploadActions.uploadFile(pngDModel.location, pngDModel.name, '-my-'); await browser.driver.sleep(12000); loginPage.loginToContentServices(acsUser.id, acsUser.password); @@ -82,8 +76,8 @@ describe('Search Sorting Picker', () => { }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pngA.entry.id); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, pngD.entry.id); + await uploadActions.deleteFileOrFolder(pngA.entry.id); + await uploadActions.deleteFileOrFolder(pngD.entry.id); done(); }); diff --git a/e2e/search/search-component.e2e.ts b/e2e/search/search-component.e2e.ts index 1c9c228b9b..8ddbef35bf 100644 --- a/e2e/search/search-component.e2e.ts +++ b/e2e/search/search-component.e2e.ts @@ -17,21 +17,16 @@ import { browser } from 'protractor'; -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil, LocalStorageUtil, BrowserActions } from '@alfresco/adf-testing'; import { SearchDialog } from '../pages/adf/dialog/searchDialog'; import { ContentServicesPage } from '../pages/adf/contentServicesPage'; import { ViewerPage } from '../pages/adf/viewerPage'; import { SearchResultsPage } from '../pages/adf/searchResultsPage'; - import { AcsUserModel } from '../models/ACS/acsUserModel'; import { FileModel } from '../models/ACS/fileModel'; import { FolderModel } from '../models/ACS/folderModel'; - import { Util } from '../util/util'; -import { StringUtil, LocalStorageUtil, BrowserActions } from '@alfresco/adf-testing'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../actions/ACS/upload.actions'; import { NavigationBarPage } from '../pages/adf/navigationBarPage'; import { SearchConfiguration } from './search.config'; @@ -54,7 +49,11 @@ describe('Search component - Search Bar', () => { const viewerPage = new ViewerPage(); const acsUser = new AcsUserModel(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const filename = StringUtil.generateRandomString(16); const firstFolderName = StringUtil.generateRandomString(16); @@ -82,16 +81,11 @@ describe('Search component - Search Bar', () => { beforeAll(async (done) => { - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - const firstFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, firstFileModel.location, firstFileModel.name, '-my-'); + const firstFileUploaded = await uploadActions.uploadFile(firstFileModel.location, firstFileModel.name, '-my-'); Object.assign(firstFileModel, firstFileUploaded.entry); fileHighlightUploaded = await this.alfrescoJsApi.nodes.addNode('-my-', { @@ -105,9 +99,9 @@ describe('Search component - Search Bar', () => { filesToDelete.push(fileHighlightUploaded); filesToDelete.push(firstFileUploaded); - filesToDelete.push(await uploadActions.createFolder(this.alfrescoJsApi, firstFolderModel.name, '-my-')); - filesToDelete.push(await uploadActions.createFolder(this.alfrescoJsApi, secondFolder.name, '-my-')); - filesToDelete.push(await uploadActions.createFolder(this.alfrescoJsApi, thirdFolder.name, '-my-')); + filesToDelete.push(await uploadActions.createFolder(firstFolderModel.name, '-my-')); + filesToDelete.push(await uploadActions.createFolder(secondFolder.name, '-my-')); + filesToDelete.push(await uploadActions.createFolder(thirdFolder.name, '-my-')); await browser.driver.sleep(15000); // wait search index previous file/folder uploaded @@ -119,7 +113,7 @@ describe('Search component - Search Bar', () => { afterAll(async (done) => { filesToDelete.forEach(async (currentNode) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, currentNode.entry.id); + await uploadActions.deleteFileOrFolder(currentNode.entry.id); }); diff --git a/e2e/search/search-filters.e2e.ts b/e2e/search/search-filters.e2e.ts index 208d6c9a93..6cd6113fa3 100644 --- a/e2e/search/search-filters.e2e.ts +++ b/e2e/search/search-filters.e2e.ts @@ -18,25 +18,26 @@ import { SearchDialog } from '../pages/adf/dialog/searchDialog'; import { SearchFiltersPage } from '../pages/adf/searchFiltersPage'; import { SearchResultsPage } from '../pages/adf/searchResultsPage'; - import { AcsUserModel } from '../models/ACS/acsUserModel'; import { FileModel } from '../models/ACS/fileModel'; import { NavigationBarPage } from '../pages/adf/navigationBarPage'; - -import { StringUtil, DocumentListPage, PaginationPage, LoginPage, LocalStorageUtil, BrowserActions } from '@alfresco/adf-testing'; +import { StringUtil, DocumentListPage, PaginationPage, LoginPage, LocalStorageUtil, UploadActions } from '@alfresco/adf-testing'; import resources = require('../util/resources'); - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../actions/ACS/upload.actions'; import { browser } from 'protractor'; import { SearchConfiguration } from './search.config'; +import { BrowserActions } from '../../lib/testing/src/lib/core/utils/browser-actions'; describe('Search Filters', () => { const loginPage = new LoginPage(); const searchDialog = new SearchDialog(); const searchFiltersPage = new SearchFiltersPage(); - const uploadActions = new UploadActions(); + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); const paginationPage = new PaginationPage(); const contentList = new DocumentListPage(); const searchResults = new SearchResultsPage(); @@ -81,27 +82,21 @@ describe('Search Filters', () => { let jsonFile; beforeAll(async (done) => { - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - fileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, fileModel.location, fileModel.name, '-my-'); + fileUploaded = await uploadActions.uploadFile(fileModel.location, fileModel.name, '-my-'); - fileTypePng = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, '-my-'); + fileTypePng = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, '-my-'); - fileTypeTxt1 = await uploadActions.uploadFile(this.alfrescoJsApi, txtFileModel1.location, txtFileModel1.name, '-my-'); + fileTypeTxt1 = await uploadActions.uploadFile(txtFileModel1.location, txtFileModel1.name, '-my-'); - fileTypeJpg = await uploadActions.uploadFile(this.alfrescoJsApi, jpgFileModel.location, jpgFileModel.name, '-my-'); + fileTypeJpg = await uploadActions.uploadFile(jpgFileModel.location, jpgFileModel.name, '-my-'); - fileTypeTxt2 = await uploadActions.uploadFile(this.alfrescoJsApi, txtFileModel2.location, txtFileModel2.name, '-my-'); + fileTypeTxt2 = await uploadActions.uploadFile(txtFileModel2.location, txtFileModel2.name, '-my-'); await loginPage.loginToContentServicesUsingUserModel(acsUser); @@ -118,11 +113,11 @@ describe('Search Filters', () => { afterAll(async (done) => { await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileUploaded.entry.id); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileTypePng.entry.id); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileTypeTxt1.entry.id); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileTypeTxt2.entry.id); - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, fileTypeJpg.entry.id); + await uploadActions.deleteFileOrFolder(fileUploaded.entry.id); + await uploadActions.deleteFileOrFolder(fileTypePng.entry.id); + await uploadActions.deleteFileOrFolder(fileTypeTxt1.entry.id); + await uploadActions.deleteFileOrFolder(fileTypeTxt2.entry.id); + await uploadActions.deleteFileOrFolder(fileTypeJpg.entry.id); done(); }); diff --git a/e2e/search/search-multiselect.e2e.ts b/e2e/search/search-multiselect.e2e.ts index d47bda6efa..0ec11d0291 100644 --- a/e2e/search/search-multiselect.e2e.ts +++ b/e2e/search/search-multiselect.e2e.ts @@ -16,18 +16,13 @@ */ import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; - -import { StringUtil } from '@alfresco/adf-testing'; +import { StringUtil, UploadActions, LoginPage } from '@alfresco/adf-testing'; import resources = require('../util/resources'); import CONSTANTS = require('../util/constants'); -import { UploadActions } from '../actions/ACS/upload.actions'; import { browser } from 'protractor'; - -import { LoginPage } from '@alfresco/adf-testing'; import { SearchDialog } from '../pages/adf/dialog/searchDialog'; import { SearchResultsPage } from '../pages/adf/searchResultsPage'; import { SearchFiltersPage } from '../pages/adf/searchFiltersPage'; - import { AcsUserModel } from '../models/ACS/acsUserModel'; import { FileModel } from '../models/ACS/fileModel'; @@ -35,16 +30,13 @@ describe('Search Component - Multi-Select Facet', () => { const loginPage = new LoginPage(); const searchDialog = new SearchDialog(); const searchResultsPage = new SearchResultsPage(); - const uploadActions = new UploadActions(); - const searchFiltersPage = new SearchFiltersPage(); - let site, userOption; - - beforeAll(() => { - this.alfrescoJsApi = new AlfrescoApi({ + this.alfrescoJsApi = new AlfrescoApi({ provider: 'ECM', hostEcm: browser.params.testConfig.adf.url }); - }); + const uploadActions = new UploadActions(this.alfrescoJsApi); + const searchFiltersPage = new SearchFiltersPage(); + let site, userOption; describe('', () => { let jpgFile, jpgFileSite, txtFile, txtFileSite; @@ -72,22 +64,36 @@ describe('Search Component - Multi-Select Facet', () => { visibility: 'PUBLIC' }); - jpgFile = await uploadActions.uploadFile(this.alfrescoJsApi, jpgFileInfo.location, jpgFileInfo.name, '-my-'); - jpgFileSite = await uploadActions.uploadFile(this.alfrescoJsApi, jpgFileInfo.location, jpgFileInfo.name, site.entry.guid); - txtFile = await uploadActions.uploadFile(this.alfrescoJsApi, txtFileInfo.location, txtFileInfo.name, '-my-'); - txtFileSite = await uploadActions.uploadFile(this.alfrescoJsApi, txtFileInfo.location, txtFileInfo.name, site.entry.guid); + jpgFile = await uploadActions.uploadFile(jpgFileInfo.location, jpgFileInfo.name, '-my-'); - await browser.driver.sleep(20000); + jpgFileSite = await uploadActions.uploadFile(jpgFileInfo.location, jpgFileInfo.name, site.entry.guid); + + txtFile = await uploadActions.uploadFile(txtFileInfo.location, txtFileInfo.name, '-my-'); + + txtFileSite = await uploadActions.uploadFile(txtFileInfo.location, txtFileInfo.name, site.entry.guid); + + await browser.driver.sleep(15000); + + loginPage.loginToContentServicesUsingUserModel(acsUser); + + searchDialog.checkSearchIconIsVisible(); + searchDialog.clickOnSearchIcon(); + searchDialog.enterTextAndPressEnter(`${randomName}`); + + userOption = `${acsUser.firstName} ${acsUser.lastName}`; + + searchFiltersPage.checkSearchFiltersIsDisplayed(); + searchFiltersPage.creatorCheckListFiltersPage().filterBy(userOption); done(); }); afterAll(async (done) => { Promise.all([ - uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, jpgFile.entry.id), - uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, jpgFileSite.entry.id), - uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, txtFile.entry.id), - uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, txtFileSite.entry.id) + uploadActions.deleteFileOrFolder(jpgFile.entry.id), + uploadActions.deleteFileOrFolder(jpgFileSite.entry.id), + uploadActions.deleteFileOrFolder(txtFile.entry.id), + uploadActions.deleteFileOrFolder(txtFileSite.entry.id) ]); await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id); @@ -95,8 +101,8 @@ describe('Search Component - Multi-Select Facet', () => { done(); }); - it('[C280054] Should be able to select multiple items from a search facet filter', async () => { - await loginPage.loginToContentServicesUsingUserModel(acsUser); + it('[C280054] Should be able to select multiple items from a search facet filter', () => { + loginPage.loginToContentServicesUsingUserModel(acsUser); searchDialog.checkSearchIconIsVisible(); searchDialog.clickOnSearchIcon(); @@ -155,19 +161,15 @@ describe('Search Component - Multi-Select Facet', () => { role: CONSTANTS.CS_USER_ROLES.MANAGER }); - txtFile = await uploadActions.uploadFile(this.alfrescoJsApi, txtFileInfo.location, txtFileInfo.name, site.entry.guid); + txtFile = await uploadActions.uploadFile(txtFileInfo.location, txtFileInfo.name, site.entry.guid); await this.alfrescoJsApi.login(userUploadingImg.id, userUploadingImg.password); - jpgFile = await uploadActions.uploadFile(this.alfrescoJsApi, jpgFileInfo.location, jpgFileInfo.name, site.entry.guid); + jpgFile = await uploadActions.uploadFile(jpgFileInfo.location, jpgFileInfo.name, site.entry.guid); - await browser.driver.sleep(20000); + await browser.driver.sleep(15000); - done(); - }); - - it('[C280056] Should be able to select multiple items from multiple search facet filters', async () => { - await loginPage.loginToContentServicesUsingUserModel(userUploadingImg); + loginPage.loginToContentServicesUsingUserModel(userUploadingImg); searchDialog.checkSearchIconIsVisible(); searchDialog.clickOnSearchIcon(); @@ -211,20 +213,28 @@ describe('Search Component - Multi-Select Facet', () => { visibility: 'PUBLIC' }); - txtFile = await uploadActions.uploadFile(this.alfrescoJsApi, txtFileInfo.location, txtFileInfo.name, '-my-'); - await browser.driver.sleep(20000); + txtFile = await uploadActions.uploadFile(txtFileInfo.location, txtFileInfo.name, '-my-'); + await browser.driver.sleep(15000); + + loginPage.loginToContentServicesUsingUserModel(acsUser); + + searchDialog.checkSearchIconIsVisible(); + searchDialog.clickOnSearchIcon(); + searchDialog.enterTextAndPressEnter(`*${randomName}*`); + + searchFiltersPage.checkSearchFiltersIsDisplayed(); done(); }); afterAll(async (done) => { - await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, txtFile.entry.id); + await uploadActions.deleteFileOrFolder(txtFile.entry.id); await this.alfrescoJsApi.core.sitesApi; done(); }); - it('[C280058] Should update filter facets items number when another filter facet item is selected', async () => { - await loginPage.loginToContentServicesUsingUserModel(acsUser); + it('[C280058] Should update filter facets items number when another filter facet item is selected', () => { + loginPage.loginToContentServicesUsingUserModel(acsUser); searchDialog.checkSearchIconIsVisible(); searchDialog.clickOnSearchIcon(); diff --git a/e2e/search/search-page-component.e2e.ts b/e2e/search/search-page-component.e2e.ts index bdbc9cd1db..3537353bd8 100644 --- a/e2e/search/search-page-component.e2e.ts +++ b/e2e/search/search-page-component.e2e.ts @@ -17,22 +17,17 @@ import { browser } from 'protractor'; -import { LoginPage } from '@alfresco/adf-testing'; +import { LoginPage, UploadActions, StringUtil } from '@alfresco/adf-testing'; import { SearchDialog } from '../pages/adf/dialog/searchDialog'; import { ContentServicesPage } from '../pages/adf/contentServicesPage'; import { SearchResultsPage } from '../pages/adf/searchResultsPage'; - import { AcsUserModel } from '../models/ACS/acsUserModel'; import { FolderModel } from '../models/ACS/folderModel'; import { FileModel } from '../models/ACS/fileModel'; - import { Util } from '../util/util'; import resources = require('../util/resources'); -import { StringUtil } from '@alfresco/adf-testing'; - import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; -import { UploadActions } from '../actions/ACS/upload.actions'; describe('Search component - Search Page', () => { const search = { @@ -60,6 +55,11 @@ describe('Search component - Search Page', () => { let fileNames = []; const nrOfFiles = 15; const adminNrOfFiles = 5; + this.alfrescoJsApi = new AlfrescoApi({ + provider: 'ECM', + hostEcm: browser.params.testConfig.adf.url + }); + const uploadActions = new UploadActions(this.alfrescoJsApi); beforeAll(async (done) => { fileNames = Util.generateSequenceFiles(1, nrOfFiles, search.active.base, search.active.extension); @@ -73,27 +73,21 @@ describe('Search component - Search Page', () => { 'location': resources.Files.ADF_DOCUMENTS.TXT.file_location }); - const uploadActions = new UploadActions(); - - this.alfrescoJsApi = new AlfrescoApi({ - provider: 'ECM', - hostEcm: browser.params.testConfig.adf.url - }); - await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); + await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser); await this.alfrescoJsApi.login(acsUser.id, acsUser.password); - await uploadActions.createFolder(this.alfrescoJsApi, emptyFolderModel.name, '-my-'); - const newFolderModelUploaded = await uploadActions.createFolder(this.alfrescoJsApi, newFolderModel.name, '-my-'); + await uploadActions.createFolder(emptyFolderModel.name, '-my-'); + const newFolderModelUploaded = await uploadActions.createFolder(newFolderModel.name, '-my-'); - await uploadActions.createEmptyFiles(this.alfrescoJsApi, fileNames, newFolderModelUploaded.entry.id); + await uploadActions.createEmptyFiles(fileNames, newFolderModelUploaded.entry.id); - await uploadActions.uploadFile(this.alfrescoJsApi, firstFileModel.location, firstFileModel.name, '-my-'); + await uploadActions.uploadFile(firstFileModel.location, firstFileModel.name, '-my-'); await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword); - await uploadActions.createEmptyFiles(this.alfrescoJsApi, adminFileNames, newFolderModelUploaded.entry.id); + await uploadActions.createEmptyFiles(adminFileNames, newFolderModelUploaded.entry.id); browser.driver.sleep(15000); diff --git a/lib/content-services/upload/upload.module.ts b/lib/content-services/upload/upload.module.ts index 1ca0711374..bed4e4ca30 100644 --- a/lib/content-services/upload/upload.module.ts +++ b/lib/content-services/upload/upload.module.ts @@ -17,7 +17,6 @@ import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; - import { MaterialModule } from '../material.module'; import { FileUploadingDialogComponent } from './components/file-uploading-dialog.component'; import { FileUploadingListRowComponent } from './components/file-uploading-list-row.component'; @@ -26,7 +25,6 @@ import { UploadButtonComponent } from './components/upload-button.component'; import { UploadVersionButtonComponent } from './components/upload-version-button.component'; import { UploadDragAreaComponent } from './components/upload-drag-area.component'; import { FileUploadErrorPipe } from './pipes/file-upload-error.pipe'; - import { CoreModule } from '@alfresco/adf-core'; import { FileDraggableDirective } from './directives/file-draggable.directive'; diff --git a/lib/testing/src/lib/content-services/actions/public-api.ts b/lib/testing/src/lib/content-services/actions/public-api.ts index 005ff462eb..01aba87e7d 100644 --- a/lib/testing/src/lib/content-services/actions/public-api.ts +++ b/lib/testing/src/lib/content-services/actions/public-api.ts @@ -16,3 +16,4 @@ */ export * from './example.action'; +export * from './upload.actions'; diff --git a/e2e/actions/ACS/upload.actions.ts b/lib/testing/src/lib/content-services/actions/upload.actions.ts similarity index 60% rename from e2e/actions/ACS/upload.actions.ts rename to lib/testing/src/lib/content-services/actions/upload.actions.ts index 7e6ca2f25d..b12e167778 100644 --- a/e2e/actions/ACS/upload.actions.ts +++ b/lib/testing/src/lib/content-services/actions/upload.actions.ts @@ -15,17 +15,23 @@ * limitations under the License. */ -import path = require('path'); -import fs = require('fs'); import { browser } from 'protractor'; +import * as path from 'path'; +import * as fs from 'fs'; +import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api'; export class UploadActions { + alfrescoJsApi: any = null; - async uploadFile(alfrescoJsApi, fileLocation, fileName, parentFolderId) { - const pathFile = path.join(browser.params.testConfig.main.rootPath + fileLocation); + constructor(alfrescoJsApi: AlfrescoApi) { + this.alfrescoJsApi = alfrescoJsApi; + } + + async uploadFile(fileLocation, fileName, parentFolderId) { + const pathFile = path.join(browser.params.rootPath + '/e2e' + fileLocation); const file = fs.createReadStream(pathFile); - return alfrescoJsApi.upload.uploadFile( + return await this.alfrescoJsApi.upload.uploadFile( file, '', parentFolderId, @@ -38,7 +44,7 @@ export class UploadActions { ); } - async createEmptyFiles(alfrescoJsApi, emptyFileNames: string[], parentFolderId) { + async createEmptyFiles(emptyFileNames: string[], parentFolderId) { const filesRequest = []; for (let i = 0; i < emptyFileNames.length; i++) { @@ -48,25 +54,25 @@ export class UploadActions { filesRequest.push(jsonItem); } - return alfrescoJsApi.nodes.addNode(parentFolderId, filesRequest, {}, { + return this.alfrescoJsApi.nodes.addNode(parentFolderId, filesRequest, {}, { filedata: '' }); } - async createFolder(alfrescoJsApi, folderName, parentFolderId) { - return alfrescoJsApi.nodes.addNode(parentFolderId, { + async createFolder(folderName, parentFolderId) { + return this.alfrescoJsApi.node.addNode(parentFolderId, { 'name': folderName, 'nodeType': 'cm:folder' }, {}, {}); } - async deleteFilesOrFolder(alfrescoJsApi, folderId) { - return alfrescoJsApi.nodes.deleteNode(folderId, { permanent: true } ); + async deleteFileOrFolder(nodeId) { + return this.alfrescoJsApi.node.deleteNode(nodeId, { permanent: true }); } - async uploadFolder(alfrescoJsApi, sourcePath, folder) { - const absolutePath = '../../' + sourcePath; - const files = fs.readdirSync(path.join(__dirname, absolutePath)); + async uploadFolder(sourcePath, folder) { + const absolutePath = 'e2e/' + sourcePath; + const files = fs.readdirSync(path.join(browser.params.rootPath, absolutePath)); let uploadedFiles; const promises = []; @@ -74,7 +80,7 @@ export class UploadActions { for (const fileName of files) { const pathFile = path.join(sourcePath, fileName); - promises.push(this.uploadFile(alfrescoJsApi, pathFile, fileName, folder)); + promises.push(this.uploadFile(pathFile, fileName, folder)); } uploadedFiles = await Promise.all(promises); } diff --git a/protractor.conf.ts b/protractor.conf.ts index 74edc951cc..3e2f27f905 100644 --- a/protractor.conf.ts +++ b/protractor.conf.ts @@ -283,6 +283,7 @@ exports.config = { config: TestConfig.appConfig, identityAdmin: TestConfig.identityAdmin, identityUser: TestConfig.identityUser, + rootPath: __dirname }, framework: 'jasmine2', @@ -432,4 +433,3 @@ exports.config = { } }; -