]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/e2e/protractor.conf.js
Merge remote-tracking branch 'weblate/develop' into develop
[github/Chocobozzz/PeerTube.git] / client / e2e / protractor.conf.js
index 82daa435ef42409dc9da0566127c8c5cce7d8721..e5a23e16a65d45be1cf614b9b819250b62eb589a 100644 (file)
@@ -4,33 +4,93 @@
 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',
-  capabilities: {
+  commonCapabilities: {
     'browserstack.user': process.env.BROWSERSTACK_USER,
     'browserstack.key': process.env.BROWSERSTACK_KEY,
-    'browserName': 'chrome',
     'browserstack.local': true,
-    'project': 'PeerTube'
+    'browserstack.console': 'verbose',
+    'browserstack.networkLogs': true,
+    'browserstack.debug': true,
+    project: 'PeerTube',
+    build: 'Main',
+    name: 'Bstack-[Protractor] Parallel Test'
   },
 
-  maxSessions: 1,
-  baseUrl: 'http://localhost:4200/',
+  multiCapabilities: [
+    {
+      browserName: 'Safari',
+      version: '11.1',
+      name: 'Safari Desktop',
+      resolution: '1280x1024'
+    },
+    {
+      browserName: 'Chrome',
+      name: 'Latest Chrome Desktop',
+      resolution: '1280x1024'
+    },
+    {
+      browserName: 'Firefox',
+      version: '68', // ESR
+      name: 'Firefox ESR Desktop',
+      resolution: '1280x1024'
+    },
+    {
+      browserName: 'Firefox',
+      name: 'Latest Firefox Desktop',
+      resolution: '1280x1024'
+    },
+    {
+      browserName: 'Edge',
+      name: 'Latest Edge Desktop',
+      resolution: '1280x1024'
+    },
+    {
+      browserName: 'Chrome',
+      device: 'Google Nexus 6',
+      real_mobile: 'true',
+      os_version: '5.0',
+      name: 'Latest Chrome Android'
+    },
+    {
+      browserName: 'Safari',
+      device: 'iPhone 8 Plus',
+      real_mobile: 'true',
+      os_version: '11',
+      name: 'Safari iPhone'
+    },
+    {
+      browserName: 'Safari',
+      device: 'iPad 7th',
+      real_mobile: 'true',
+      os_version: '13',
+      name: 'Safari iPad'
+    }
+  ],
+
+  // 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: 'raw' }
+    }))
   }
 }
+
+exports.config.multiCapabilities.forEach(function (caps) {
+  for (var i in exports.config.commonCapabilities) caps[i] = caps[i] || exports.config.commonCapabilities[i]
+})