alfresco-content-app/protractor.conf.js
Adina Parpalita a9467dcc47 [ACA-1767] add tests for Viewer actions (#641)
* add tests for Viewer actions

* exclude e2e from auto-formatting for now

* update lock file
2018-09-18 16:54:33 +01:00

126 lines
2.9 KiB
JavaScript
Executable File

// Protractor configuration file, see link for more information
// https://github.com/angular/protractor/blob/master/lib/config.ts
const path = require('path');
const {
SpecReporter
} = require('jasmine-spec-reporter');
const jasmineReporters = require('jasmine-reporters');
const CDP = require('chrome-remote-interface');
const projectRoot = path.resolve(__dirname);
const downloadFolder = `${projectRoot}/e2e-downloads`;
const width = 1366;
const height = 768;
var fs = require('fs');
function rmDir(dirPath) {
try {
var files = fs.readdirSync(dirPath);
} catch (e) {
return;
}
if (files.length > 0)
for (var i = 0; i < files.length; i++) {
var filePath = dirPath + '/' + files[i];
if (fs.statSync(filePath).isFile())
fs.unlinkSync(filePath);
else
rmDir(filePath);
}
fs.rmdirSync(dirPath);
};
exports.config = {
allScriptsTimeout: 40000,
params: {
downloadFolder: downloadFolder
},
specs: [
'./e2e/suites/authentication/*.test.ts',
'./e2e/suites/list-views/*.test.ts',
'./e2e/suites/application/*.test.ts',
'./e2e/suites/navigation/*.test.ts',
'./e2e/suites/pagination/*.test.ts',
'./e2e/suites/actions/*.test.ts',
'./e2e/suites/viewer/*.test.ts',
'./e2e/suites/extensions/*.test.ts'
],
capabilities: {
browserName: 'chrome',
chromeOptions: {
prefs: {
'credentials_enable_service': false,
'download': {
'prompt_for_download': false,
'default_directory': downloadFolder
}
},
args: ['--incognito', '--headless', '--remote-debugging-port=9222']
}
},
directConnect: true,
baseUrl: 'http://localhost:4000',
framework: 'jasmine2',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 60000,
print: function () {}
},
plugins: [{
package: 'jasmine2-protractor-utils',
disableHTMLReport: false,
disableScreenshot: false,
screenshotOnExpectFailure: true,
screenshotOnSpecFailure: false,
clearFoldersBeforeTest: true,
htmlReportDir: `${projectRoot}/e2e-output/html-report/`,
screenshotPath: `${projectRoot}/e2e-output/screenshots/`
}],
onPrepare() {
require('ts-node').register({
project: 'e2e/tsconfig.e2e.json'
});
browser.manage().window().setSize(width, height);
jasmine.getEnv().addReporter(new SpecReporter({
spec: {
displayStacktrace: true
}
}));
jasmine.getEnv().addReporter(new jasmineReporters.JUnitXmlReporter({
consolidateAll: true,
savePath: `${projectRoot}/e2e-output/junit-report`,
filePrefix: 'results.xml',
useDotNotation: false,
useFullTestName: false,
reportFailedUrl: true
}));
rmDir(downloadFolder);
CDP().then(client => {
client.send('Page.setDownloadBehavior', {
behavior: 'allow',
downloadPath: downloadFolder
})
})
.catch(err => {
console.log(err)
});
}
}