const {SpecReporter} = require('jasmine-spec-reporter')
exports.config = {
- allScriptsTimeout: 11000,
- specs: [
- './src/**/*.e2e-spec.ts'
- ],
+ allScriptsTimeout: 25000,
+ specs: ['./src/**/*.e2e-spec.ts'],
+
+ seleniumAddress: 'http://hub-cloud.browserstack.com/wd/hub',
+ commonCapabilities: {
+ 'browserstack.user': process.env.BROWSERSTACK_USER,
+ 'browserstack.key': process.env.BROWSERSTACK_KEY,
+ 'browserstack.local': true,
+ project: 'PeerTube'
+ },
+
multiCapabilities: [
{
- 'browserName': 'firefox',
- 'moz:firefoxOptions': {
- binary: 'firefox-developer'
- }
+ browserName: 'Chrome',
+ version: '66'
+ },
+ {
+ browserName: 'Safari',
+ version: '11.1'
+ },
+ {
+ browserName: 'Firefox',
+ version: '52' // ESR
+ },
+ {
+ browserName: 'Firefox',
+ version: '60'
+ },
+ {
+ browserName: 'Edge',
+ version: '16'
+ },
+ {
+ browserName: 'Chrome',
+ device: 'Google Nexus 6',
+ realMobile: 'true',
+ os_version: '5.0'
+ },
+ {
+ browserName: 'Safari',
+ device: 'iPhone SE',
+ realMobile: 'true',
+ os_version: '11.2'
}
],
- maxSessions: 1,
- directConnect: true,
- baseUrl: 'http://localhost:4200/',
+
+ // maxSessions: 1,
+ // BrowserStack compatible ports: https://www.browserstack.com/question/664
+ baseUrl: 'http://localhost:3333/',
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
- defaultTimeoutInterval: 30000,
- print: function () {}
+ defaultTimeoutInterval: 45000,
+ print: function() {}
},
- onPrepare () {
+ onPrepare() {
require('ts-node').register({
project: require('path').join(__dirname, './tsconfig.e2e.json')
})
- jasmine.getEnv().addReporter(new SpecReporter({spec: {displayStacktrace: true}}))
+ jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }))
}
}
+
+exports.config.multiCapabilities.forEach(function (caps) {
+ for (var i in exports.config.commonCapabilities) caps[i] = caps[i] || exports.config.commonCapabilities[i]
+})