add protractor profile for local tests
authorRigel Kent <sendmemail@rigelk.eu>
Mon, 1 Oct 2018 11:40:21 +0000 (13:40 +0200)
committerRigel Kent <sendmemail@rigelk.eu>
Mon, 1 Oct 2018 11:40:28 +0000 (13:40 +0200)
client/angular.json
client/e2e/local-protractor.conf.js [new file with mode: 0644]
package.json
scripts/e2e.sh [deleted file]
scripts/e2e/index.sh [new file with mode: 0755]
scripts/e2e/local.sh [new file with mode: 0755]

index 2cf2ecd621f5f6eb4dbb593974da44837493890f..bd3c7216e082cefc8b2d7d2661cf833fd3658424 100644 (file)
           "options": {
             "protractorConfig": "e2e/protractor.conf.js",
             "devServerTarget": "PeerTube:serve:e2e"
+          },
+          "configurations": {
+            "local": {
+              "protractorConfig": "e2e/local-protractor.conf.js"
+            }
           }
         },
         "lint": {
diff --git a/client/e2e/local-protractor.conf.js b/client/e2e/local-protractor.conf.js
new file mode 100644 (file)
index 0000000..53edf26
--- /dev/null
@@ -0,0 +1,37 @@
+// Protractor configuration file, see link for more information
+// https://github.com/angular/protractor/blob/master/lib/config.ts
+
+const {SpecReporter} = require('jasmine-spec-reporter')
+
+exports.config = {
+  allScriptsTimeout: 25000,
+  specs: ['./src/**/*.e2e-spec.ts'],
+
+  seleniumAddress: 'http://localhost:4444/wd/hub',
+
+  capabilities: {
+    'browserName': 'firefox',
+    'moz:firefoxOptions': {
+      'args': ["-headless"],
+      "log": {
+        "level": "info" // default is "info"
+      }
+    }
+  },
+
+  // maxSessions: 1,
+  baseUrl: 'http://localhost:3333/',
+  framework: 'jasmine',
+  jasmineNodeOpts: {
+    showColors: true,
+    defaultTimeoutInterval: 45000,
+    print: function() {}
+  },
+
+  onPrepare() {
+    require('ts-node').register({
+      project: require('path').join(__dirname, './tsconfig.e2e.json')
+    })
+    jasmine.getEnv().addReporter(new SpecReporter({   spec:  {  displayStacktrace: true    }  }))
+  }
+}
index c091aeab79481bc74e071e97da9b4ab442ee18e4..06434f89d7ab27b30499dcf1136c555fec4ddd2a 100644 (file)
@@ -22,6 +22,7 @@
   "typings": "*.d.ts",
   "scripts": {
     "e2e": "scripty",
+    "e2e:local": "scripty",
     "build": "SCRIPTY_PARALLEL=true scripty",
     "build:server": "scripty",
     "build:client": "scripty",
diff --git a/scripts/e2e.sh b/scripts/e2e.sh
deleted file mode 100755 (executable)
index 1e31cd5..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-set -eu
-
-npm run clean:server:test
-
-(
-    cd client
-    npm run webdriver-manager update
-    npm run webpack -- --config webpack/webpack.video-embed.js --mode development
-)
-
-npm run concurrently -- -k -s first \
-    "cd client && npm run ng -- e2e --port 3333" \
-    "NODE_ENV=test NODE_APP_INSTANCE=1 NODE_CONFIG='{ \"log\": { \"level\": \"warning\" } }' npm start"
-
diff --git a/scripts/e2e/index.sh b/scripts/e2e/index.sh
new file mode 100755 (executable)
index 0000000..cf2e043
--- /dev/null
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+set -eu
+
+npm run clean:server:test
+
+(
+    cd client
+    npm run webdriver-manager update
+    npm run webpack -- --config webpack/webpack.video-embed.js --mode development
+)
+
+npm run concurrently -- -k -s first \
+    "cd client && npm run ng -- e2e --port 3333" \
+    "NODE_ENV=test NODE_APP_INSTANCE=1 NODE_CONFIG='{ \"log\": { \"level\": \"warning\" } }' npm start"
diff --git a/scripts/e2e/local.sh b/scripts/e2e/local.sh
new file mode 100755 (executable)
index 0000000..65ec653
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+set -eu
+
+npm run clean:server:test
+
+(
+    cd client
+    npm run webdriver-manager update
+    npm run webpack -- --config webpack/webpack.video-embed.js --mode development
+)
+
+npm run concurrently -- -k -s first \
+    "cd client && npm run webdriver-manager start" \
+    "cd client && npm run ng -- e2e --port 3333 -c local" \
+    "NODE_ENV=test NODE_APP_INSTANCE=1 NODE_CONFIG='{ \"log\": { \"level\": \"warning\" } }' npm start"