From ec13d88e6106410e84174dafd1ca8d530938da6b Mon Sep 17 00:00:00 2001 From: cristinaj Date: Fri, 8 Mar 2019 15:27:46 +0200 Subject: [PATCH] [ADF-4061]Automate test for navigating to a non empty folder on last page (#4392) * Create folders * Add navigation to a non-empty folder test --- e2e/core/pagination-empty-current-page.e2e.ts | 57 +++++++++++++++++-- 1 file changed, 52 insertions(+), 5 deletions(-) diff --git a/e2e/core/pagination-empty-current-page.e2e.ts b/e2e/core/pagination-empty-current-page.e2e.ts index eae5097301..52ca310bb1 100644 --- a/e2e/core/pagination-empty-current-page.e2e.ts +++ b/e2e/core/pagination-empty-current-page.e2e.ts @@ -18,27 +18,33 @@ import { LoginPage } from '../pages/adf/loginPage'; import { ContentServicesPage } from '../pages/adf/contentServicesPage'; import { PaginationPage } from '../pages/adf/paginationPage'; -import { Util } from '../util/util'; +import { ViewerPage } from '../pages/adf/viewerPage'; import { AcsUserModel } from '../models/ACS/acsUserModel'; import { FolderModel } from '../models/ACS/folderModel'; - -import TestConfig = require('../test.config'); +import { FileModel } from '../models/ACS/fileModel'; import AlfrescoApi = require('alfresco-js-api-node'); import { UploadActions } from '../actions/ACS/upload.actions'; +import { Util } from '../util/util'; +import resources = require('../util/resources'); +import TestConfig = require('../test.config'); + describe('Pagination - returns to previous page when current is empty', () => { let loginPage = new LoginPage(); let contentServicesPage = new ContentServicesPage(); let paginationPage = new PaginationPage(); + let viewerPage = new ViewerPage(); let acsUser = new AcsUserModel(); let folderModel = new FolderModel({ 'name': 'folderOne' }); + let parentFolderModel = new FolderModel({ 'name': 'parentFolder' }); - let fileNames = [], nrOfFiles = 6; - let lastFile = 'newFile6.txt'; + let fileNames = [], nrOfFiles = 6, nrOfFolders = 5; + let lastFile = 'newFile6.txt', lastFolderResponse, pngFileUploaded; + let folderNames = ['t1', 't2', 't3', 't4', 't5', 't6']; let itemsPerPage = { five: '5', @@ -50,6 +56,11 @@ describe('Pagination - returns to previous page when current is empty', () => { extension: '.txt' }; + let pngFileInfo = new FileModel({ + 'name': resources.Files.ADF_DOCUMENTS.PNG.file_name, + 'location': resources.Files.ADF_DOCUMENTS.PNG.file_location + }); + beforeAll(async (done) => { let uploadActions = new UploadActions(); @@ -68,8 +79,18 @@ describe('Pagination - returns to previous page when current is empty', () => { let folderUploadedModel = await uploadActions.createFolder(this.alfrescoJsApi, folderModel.name, '-my-'); + let parentFolderResponse = await uploadActions.createFolder(this.alfrescoJsApi, parentFolderModel.name, '-my-'); + + for (let i = 0; i < nrOfFolders; i++) { + await uploadActions.createFolder(this.alfrescoJsApi, folderNames[i], parentFolderResponse.entry.id); + } + await uploadActions.createEmptyFiles(this.alfrescoJsApi, fileNames, folderUploadedModel.entry.id); + lastFolderResponse = await uploadActions.createFolder(this.alfrescoJsApi, folderNames[5], parentFolderResponse.entry.id); + + pngFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileInfo.location, pngFileInfo.name, lastFolderResponse.entry.id); + loginPage.loginToContentServicesUsingUserModel(acsUser); contentServicesPage.goToDocumentList(); @@ -117,4 +138,30 @@ describe('Pagination - returns to previous page when current is empty', () => { }); + it('[C297494] Should display content when navigating to a non-empty folder not in the first page', () => { + contentServicesPage.goToDocumentList(); + contentServicesPage.navigateToFolder(parentFolderModel.name); + contentServicesPage.checkAcsContainer(); + contentServicesPage.waitForTableBody(); + + paginationPage.selectItemsPerPage(itemsPerPage.five); + + contentServicesPage.checkAcsContainer(); + contentServicesPage.waitForTableBody(); + + expect(paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.five); + expect(contentServicesPage.numberOfResultsDisplayed()).toBe(itemsPerPage.fiveValue); + + paginationPage.clickOnNextPage(); + + contentServicesPage.checkAcsContainer(); + contentServicesPage.waitForTableBody(); + + contentServicesPage.navigateToFolder(lastFolderResponse.entry.name); + contentServicesPage.checkContentIsDisplayed(pngFileInfo.name); + + viewerPage.viewFile(pngFileUploaded.entry.name); + viewerPage.checkImgViewerIsDisplayed(); + viewerPage.clickCloseButton(); + }); });