aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkumavis <aaron@kumavis.me>2018-03-11 03:09:45 +0800
committerkumavis <aaron@kumavis.me>2018-03-11 03:09:45 +0800
commit74502296ed22edd5300ea74fd7b483fab0736729 (patch)
tree322495cfca59d9a17aed42eab0f523f229631537
parentddc85354d3df508cbecc016fc0213a6560d885e1 (diff)
downloadtangerine-wallet-browser-74502296ed22edd5300ea74fd7b483fab0736729.tar
tangerine-wallet-browser-74502296ed22edd5300ea74fd7b483fab0736729.tar.gz
tangerine-wallet-browser-74502296ed22edd5300ea74fd7b483fab0736729.tar.bz2
tangerine-wallet-browser-74502296ed22edd5300ea74fd7b483fab0736729.tar.lz
tangerine-wallet-browser-74502296ed22edd5300ea74fd7b483fab0736729.tar.xz
tangerine-wallet-browser-74502296ed22edd5300ea74fd7b483fab0736729.tar.zst
tangerine-wallet-browser-74502296ed22edd5300ea74fd7b483fab0736729.zip
ci - split integration tests into parallel firefox and chrome runs
-rw-r--r--.circleci/config.yml58
-rw-r--r--test/base.conf.js4
2 files changed, 57 insertions, 5 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml
index 9cd0a24ec..df3e0ed19 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -15,12 +15,20 @@ workflows:
- test-unit:
requires:
- prep-deps-npm
- - test-integration-mascara:
+ - test-integration-mascara-chrome:
+ requires:
+ - prep-deps-npm
+ - prep-scss
+ - test-integration-mascara-firefox:
requires:
- prep-deps-npm
- prep-deps-firefox
- prep-scss
- - test-integration-flat:
+ - test-integration-flat-chrome:
+ requires:
+ - prep-deps-npm
+ - prep-scss
+ - test-integration-flat-firefox:
requires:
- prep-deps-npm
- prep-deps-firefox
@@ -99,7 +107,9 @@ jobs:
name: test:coverage
command: npm run test:coverage
- test-integration-flat:
+ test-integration-flat-firefox:
+ environment:
+ browsers: ["Firefox"]
docker:
- image: circleci/node:8-browsers
steps:
@@ -125,7 +135,28 @@ jobs:
name: test:integration:flat
command: npm run test:flat
- test-integration-mascara:
+ test-integration-flat-chrome:
+ environment:
+ browsers: ["Chrome"]
+ docker:
+ - image: circleci/node:8-browsers
+ steps:
+ - checkout
+ - restore_cache:
+ key: dependency-cache-{{ checksum "package-lock.json" }}
+ - run:
+ name: Get Scss Cache key
+ # this allows us to checksum against a whole directory
+ command: find ui/app/css -type f -exec md5sum {} \; | sort -k 2 > scss_checksum
+ - restore_cache:
+ key: scss-cache-{{ checksum "scss_checksum" }}
+ - run:
+ name: test:integration:flat
+ command: npm run test:flat
+
+ test-integration-mascara-firefox:
+ environment:
+ browsers: ["Firefox"]
docker:
- image: circleci/node:8-browsers
steps:
@@ -150,3 +181,22 @@ jobs:
- run:
name: test:integration:mascara
command: npm run test:mascara
+
+ test-integration-mascara-chrome:
+ environment:
+ browsers: ["Chrome"]
+ docker:
+ - image: circleci/node:8-browsers
+ steps:
+ - checkout
+ - restore_cache:
+ key: dependency-cache-{{ checksum "package-lock.json" }}
+ - run:
+ name: Get Scss Cache key
+ # this allows us to checksum against a whole directory
+ command: find ui/app/css -type f -exec md5sum {} \; | sort -k 2 > scss_checksum
+ - restore_cache:
+ key: scss-cache-{{ checksum "scss_checksum" }}
+ - run:
+ name: test:integration:mascara
+ command: npm run test:mascara
diff --git a/test/base.conf.js b/test/base.conf.js
index 82b9d8eec..adb5357e8 100644
--- a/test/base.conf.js
+++ b/test/base.conf.js
@@ -46,7 +46,9 @@ module.exports = function(config) {
// start these browsers
// available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
- browsers: ['Chrome', 'Firefox'],
+ browsers: process.env.browsers ?
+ JSON.parse(process.env.browsers)
+ : ['Chrome', 'Firefox'],
// Continuous Integration mode
// if true, Karma captures browsers, runs the tests and exits