]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/e2e/protractor.conf.js
Cleanup E2E tests
[github/Chocobozzz/PeerTube.git] / client / e2e / protractor.conf.js
index 30705cb72e854ee0efcc4d3898b2cec147a310b3..3797961ff6b927cd6ddb22c39511fc9e981c51be 100644 (file)
@@ -4,26 +4,84 @@
 const {SpecReporter} = require('jasmine-spec-reporter')
 
 exports.config = {
-  allScriptsTimeout: 11000,
-  specs: [
-    './src/**/*.e2e-spec.ts'
-  ],
-  capabilities: {
-    'browserName': 'chrome'
+  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,
+    'browserstack.console': 'verbose',
+    'browserstack.networkLogs': true,
+    'browserstack.debug': true,
+    project: 'PeerTube',
+    build: 'Main',
+    name: 'Bstack-[Protractor] Parallel Test'
   },
-  directConnect: true,
-  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: '60', // 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',
+      realMobile: 'true',
+      os_version: '5.0',
+      name: 'Latest Chrome Android'
+    },
+    {
+      browserName: 'Safari',
+      device: 'iPhone 8',
+      realMobile: 'true',
+      os_version: '12',
+      name: 'Safari iPhone'
+    }
+  ],
+
+  // 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]
+})