diff --git a/.travis.yml b/.travis.yml index e8ec2fa..0806782 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,3 +1,7 @@ +addons: + apt: + packages: + - xvfb language: node_js node_js: - "6" @@ -7,3 +11,7 @@ node_js: - "4.2" - "4.1" - "4.0" +install: + - export DISPLAY=':99.0' + - Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 & + - npm install diff --git a/package.json b/package.json index ee2aa63..0016a62 100644 --- a/package.json +++ b/package.json @@ -10,12 +10,13 @@ "cwise": "^1.0.10" }, "devDependencies": { - "browserify": "^14.1.0", - "tape": "^2.12.3", - "zeros": "~0.0.0" + "browserify": "^16.2.2", + "tape": "^4.9.1", + "tape-run": "^4.0.0", + "zeros": "~1.0.0" }, "scripts": { - "test": "tape test/*.js" + "test": "node test/run.js" }, "repository": { "type": "git", diff --git a/test/browserify.js b/test/browserify.js deleted file mode 100644 index 6c6910c..0000000 --- a/test/browserify.js +++ /dev/null @@ -1,39 +0,0 @@ -"use strict" - -var browserify = require("browserify") -var tape = require("tape") -var vm = require("vm") - -var cases = [ "test" ] - -bundleCasesFrom(0) - -function bundleCasesFrom(i) { - if (i>=cases.length) return - var b = browserify() - b.ignore("tape") - b.add(__dirname + "/" + cases[i] + ".js") - tape(cases[i], function(t) { // Without nested tests, the asynchronous nature of bundle causes issues with tape... - b.bundle(function(err, src) { - if(err) { - throw new Error("failed to bundle!") - } - vm.runInNewContext(src, { - test: t.test.bind(t), - Buffer: Buffer, - Int8Array: Int8Array, - Int16Array: Int16Array, - Int32Array: Int32Array, - Float32Array: Float32Array, - Float64Array: Float64Array, - Uint8Array: Uint8Array, - Uint16Array: Uint16Array, - Uint32Array: Uint32Array, - Uint8ClampedArray: Uint8ClampedArray, - console: { log: console.log.bind(console) } - }) - t.end() - }) - }) - bundleCasesFrom(i+1) -} diff --git a/test/run.js b/test/run.js new file mode 100644 index 0000000..eda42b1 --- /dev/null +++ b/test/run.js @@ -0,0 +1,12 @@ +var run = require('tape-run'); +var browserify = require('browserify'); + +var cases = [ "test" ] + +cases.forEach(test => { + browserify(__dirname + '/' + test + '.js') + .bundle() + .pipe(run()) + .on('results', console.log) + .pipe(process.stdout); +});