[ADF-2629] Fix infinite pagination and e2e parallel task (#3691)

* change infinite pagination logic
make merge in share adapter a real merge

* missing semi column

* type problem

* fix pagination infinite test

* tentative file detector

* add other remote files for webdriver

* parallel execution test

* fix refresh browser e2e

* missing driver remote in util
This commit is contained in:
Eugenio Romano
2018-08-13 02:27:38 +01:00
committed by Eugenio Romano
parent 2602879cba
commit 83b2857097
19 changed files with 2866 additions and 2856 deletions

View File

@@ -18,10 +18,12 @@
import path = require('path');
import fs = require('fs');
import TestConfig = require('../../test.config');
import remote = require('selenium-webdriver/remote');
export class UploadActions {
async uploadFile(alfrescoJsApi, fileLocation, fileName, parentFolderId) {
browser.setFileDetector(new remote.FileDetector());
let pathFile = path.join(TestConfig.main.rootPath + fileLocation);
let file = fs.createReadStream(pathFile);
@@ -40,6 +42,8 @@ export class UploadActions {
}
async createEmptyFiles(alfrescoJsApi, emptyFileNames: string[], parentFolderId) {
browser.setFileDetector(new remote.FileDetector());
let filesRequest = [];
for (let i = 0; i < emptyFileNames.length; i++) {
@@ -55,6 +59,8 @@ export class UploadActions {
}
async uploadFolder(alfrescoJsApi, folderName, parentFolderId) {
browser.setFileDetector(new remote.FileDetector());
return alfrescoJsApi.nodes.addNode(parentFolderId, {
'name': folderName,
'nodeType': 'cm:folder'

View File

@@ -19,10 +19,12 @@ import path = require('path');
import fs = require('fs');
import TestConfig = require('../../test.config');
import AppPublish = require('../../models/APS/AppPublish');
import remote = require('selenium-webdriver/remote');
export class AppsActions {
async importPublishDeployApp(alfrescoJsApi, appFileLocation) {
browser.setFileDetector(new remote.FileDetector());
let pathFile = path.join(TestConfig.main.rootPath + appFileLocation);
let file = fs.createReadStream(pathFile);
@@ -37,6 +39,7 @@ export class AppsActions {
}
async publishDeployApp(alfrescoJsApi, appId) {
browser.setFileDetector(new remote.FileDetector());
let publishApp = await alfrescoJsApi.activiti.appsApi.publishAppDefinition(appId, new AppPublish());
@@ -46,6 +49,7 @@ export class AppsActions {
}
async importNewVersionAppDefinitionPublishDeployApp(alfrescoJsApi, appFileLocation, modelId) {
browser.setFileDetector(new remote.FileDetector());
let pathFile = path.join(TestConfig.main.rootPath + appFileLocation);
let file = fs.createReadStream(pathFile);
@@ -60,6 +64,7 @@ export class AppsActions {
}
async startProcess(alfrescoJsApi, app, processName?: string) {
browser.setFileDetector(new remote.FileDetector());
let appDefinitionsList = await alfrescoJsApi.activiti.appsApi.getAppDefinitions();

View File

@@ -21,6 +21,7 @@ import { browser } from 'protractor';
import fs = require('fs');
import path = require('path');
import TestConfig = require('../test.config');
import remote = require('selenium-webdriver/remote');
let JS_BIND_INPUT = function (target) {
let input = document.createElement('input');
@@ -79,6 +80,8 @@ let JS_BIND_INPUT_FOLDER = function (target) {
export class DropActions {
dropFile(dropArea, filePath) {
browser.setFileDetector(new remote.FileDetector());
let absolutePath = path.resolve(path.join(TestConfig.main.rootPath, filePath));
fs.accessSync(absolutePath, fs.constants.F_OK);
@@ -91,6 +94,8 @@ export class DropActions {
}
dropFolder(dropArea, folderPath) {
browser.setFileDetector(new remote.FileDetector());
let absolutePath = path.resolve(path.join(TestConfig.main.rootPath, folderPath));
fs.accessSync(absolutePath, fs.constants.F_OK);

View File

@@ -20,6 +20,8 @@ import User = require('../models/APS/User');
import TestConfig = require('../test.config');
import path = require('path');
import fs = require('fs');
import remote = require('selenium-webdriver/remote');
import { browser } from "protractor";
export class UsersActions {
@@ -46,6 +48,8 @@ export class UsersActions {
}
async changeProfilePictureAps(alfrescoJsApi, fileLocation) {
browser.setFileDetector(new remote.FileDetector());
let pathFile = path.join(TestConfig.main.rootPath + fileLocation);
let file = fs.createReadStream(pathFile);

View File

@@ -154,7 +154,7 @@ describe('Document List Component - Actions', () => {
describe('Folder Actions', () => {
let folderName,secondfolderName;
let folderName, secondfolderName;
beforeEach(async (done) => {
acsUser = new AcsUserModel();

View File

@@ -21,6 +21,7 @@ var CreateFolderDialog = require('./dialog/createFolderDialog');
var path = require('path');
var TestConfig = require('../../test.config');
var NavigationBarPage = require('./navigationBarPage');
var remote = require('selenium-webdriver/remote');
var ContentServicesPage = function () {
@@ -323,6 +324,7 @@ var ContentServicesPage = function () {
};
this.uploadFile = function (fileLocation) {
browser.setFileDetector(new remote.FileDetector());
this.checkUploadButton();
Util.waitUntilElementIsVisible(uploadFileButton);
uploadFileButton.sendKeys(path.resolve(path.join(TestConfig.main.rootPath, fileLocation)));
@@ -331,6 +333,7 @@ var ContentServicesPage = function () {
};
this.uploadMultipleFile = function (files) {
browser.setFileDetector(new remote.FileDetector());
Util.waitUntilElementIsVisible(uploadMultipleFileButton);
var allFiles = path.resolve(path.join(TestConfig.main.rootPath, files[0]));
for (var i = 1; i < files.length; i++) {
@@ -342,6 +345,7 @@ var ContentServicesPage = function () {
};
this.uploadFolder = function (folder) {
browser.setFileDetector(new remote.FileDetector());
Util.waitUntilElementIsVisible(uploadFolderButton);
uploadFolderButton.sendKeys(path.resolve(path.join(TestConfig.main.rootPath, folder)));
Util.waitUntilElementIsVisible(uploadFolderButton);

View File

@@ -20,6 +20,7 @@ import { element, by, protractor, browser } from 'protractor';
import Util = require('../../../util/util');
import TestConfig = require('../../../test.config');
import path = require('path');
import remote = require('selenium-webdriver/remote');
export class AttachmentListPage {
@@ -36,6 +37,8 @@ export class AttachmentListPage {
}
clickAttachFileButton(fileLocation) {
browser.setFileDetector(new remote.FileDetector());
Util.waitUntilElementIsVisible(this.attachFileButton);
return this.attachFileButton.sendKeys(path.resolve(path.join(TestConfig.main.rootPath, fileLocation)));
}

View File

@@ -19,6 +19,7 @@ var FormFields = require('../formFields');
var TestConfig = require('../../../../test.config');
var path = require('path');
var Util = require('../../../../util/util');
var remote = require('selenium-webdriver/remote');
var AttachFile = function () {
@@ -28,6 +29,7 @@ var AttachFile = function () {
var filesListLocator = by.css("div[id='adf-attach-widget-readonly-list']");
this.attachFile = function (fieldId, fileLocation) {
browser.setFileDetector(new remote.FileDetector());
var widget = formFields.getWidget(fieldId);
var uploadButton = widget.element(uploadLocator);
Util.waitUntilElementIsVisible(uploadButton);

View File

@@ -18,6 +18,7 @@
import Util = require('../../util/util');
import TestConfig = require('../../test.config');
import path = require('path');
import remote = require('selenium-webdriver/remote');
import { browser, by, element, protractor } from 'protractor';
export class VersionManagePage {
@@ -39,6 +40,7 @@ export class VersionManagePage {
}
uploadNewVersionFile(fileLocation) {
browser.setFileDetector(new remote.FileDetector());
Util.waitUntilElementIsVisible(this.uploadNewVersionButton);
this.uploadNewVersionButton.sendKeys(path.resolve(path.join(TestConfig.main.rootPath, fileLocation)));
Util.waitUntilElementIsVisible(this.showNewVersionButton);

View File

@@ -127,7 +127,7 @@ describe('Start Task - Task App', () => {
await this.alfrescoJsApi.activiti.taskApi.removeForm(listOfTasks.data[0].id);
});
Util.refreshBrowser();
browser.refresh();
taskPage.usingTasksListPage().checkTaskIsDisplayedInTasksList(tasks[3]);
taskPage.checkTaskTitle(tasks[3]);

View File

@@ -22,6 +22,7 @@ var path = require('path');
var until = protractor.ExpectedConditions;
var TestConfig = require('../test.config');
var moment = require('moment');
var remote = require('selenium-webdriver/remote');
var DEFAULT_TIMEOUT = parseInt(TestConfig.main.timeout);
/**
@@ -34,6 +35,8 @@ var DEFAULT_TIMEOUT = parseInt(TestConfig.main.timeout);
* creates an absolute path string if multiple file uploads are required
*/
exports.uploadParentFolder = function (filePath) {
browser.setFileDetector(new remote.FileDetector());
var parentFolder = path.resolve(path.join(__dirname, 'test'));
return path.resolve(path.join(parentFolder, filePath));
};