From 9abcb1a55f310758a91ef7dd167daa5526f7b23d Mon Sep 17 00:00:00 2001 From: Albin Mattsson Date: Sun, 22 May 2016 18:29:35 +0200 Subject: [PATCH] Add Travis configuration This closes #108 --- .travis.yml | 11 +++++++++++ package.json | 1 + test/lib/visually-verify-image.js | 28 +++++++++++++++++++++++----- 3 files changed, 35 insertions(+), 5 deletions(-) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..8b49feb --- /dev/null +++ b/.travis.yml @@ -0,0 +1,11 @@ +language: node_js +osx_image: xcode7.3 +os: + - osx +node_js: + - 6 +script: + - sw_vers -productVersion + - defaults write NSGlobalDomain AppleShowAllExtensions -bool true + - killall Finder + - npm test diff --git a/package.json b/package.json index a8c4bc8..e4ccb0b 100644 --- a/package.json +++ b/package.json @@ -34,6 +34,7 @@ }, "devDependencies": { "capture-window": "^0.1.3", + "imgur": "^0.1.7", "looks-same": "^2.1.0", "mocha": "^2.2.5", "standard": "^7.0.1" diff --git a/test/lib/visually-verify-image.js b/test/lib/visually-verify-image.js index 1631f30..3895615 100644 --- a/test/lib/visually-verify-image.js +++ b/test/lib/visually-verify-image.js @@ -4,6 +4,7 @@ var looksSame = require('looks-same') var spawnSync = require('child_process').spawnSync var captureWindow = require('capture-window') var sizeOf = require('image-size') +var imgur = require('imgur') var hdiutil = require('../../lib/hdiutil') @@ -63,11 +64,28 @@ function captureAndSaveDiff (title, expectedPath, cb) { looksSame.createDiff(opts, function (err, data) { if (err) return cb(err) - temp.writeFile(data, function (err, diffPath) { - if (err) return cb(err) - - cb(null, { diff: diffPath, actual: pngPath }) - }) + if (process.env.CI) { + imgur.uploadFile(pngPath) + .then(function (json) { + const pngUrl = json.data.link + imgur.uploadBase64(data.toString('base64')) + .then(function (json) { + cb(null, { diff: json.data.link, actual: pngUrl }) + }) + .catch(function (err) { + cb(err) + }) + }) + .catch(function (err) { + cb(err) + }) + } else { + temp.writeFile(data, function (err, diffPath) { + if (err) return cb(err) + + cb(null, { diff: diffPath, actual: pngPath }) + }) + } }) }) }