Skip to content

Commit ecb508b

Browse files
committed
chore(build): move to rollup over browserify
1 parent 8ec2427 commit ecb508b

File tree

5 files changed

+53
-36
lines changed

5 files changed

+53
-36
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,5 @@ npm-debug.log
1919
coverage/
2020

2121
type-detect.js
22+
type-detect.test.js
23+
.nyc_output

karma.conf.js

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
/* eslint-disable no-process-env */
22
const packageJson = require('./package.json');
33
const defaultTimeout = 120000;
4-
const browserifyIstanbul = require('browserify-istanbul');
54
module.exports = function configureKarma(config) {
65
const localBrowsers = [
76
'PhantomJS',
@@ -42,19 +41,9 @@ module.exports = function configureKarma(config) {
4241
basePath: '',
4342
browsers: localBrowsers,
4443
logLevel: process.env.npm_config_debug ? config.LOG_DEBUG : config.LOG_INFO,
45-
frameworks: [ 'browserify', 'mocha' ],
46-
files: [ 'test/*.js' ],
44+
frameworks: [ 'mocha' ],
45+
files: [ 'type-detect.test.js' ],
4746
exclude: [],
48-
preprocessors: {
49-
'test/*.js': [ 'browserify' ],
50-
},
51-
browserify: {
52-
debug: true,
53-
bare: true,
54-
transform: [
55-
browserifyIstanbul({ ignore: [ '**/node_modules/**', '**/test/**' ] }),
56-
],
57-
},
5847
reporters: [ 'progress', 'coverage' ],
5948
coverageReporter: {
6049
type: 'lcov',

package.json

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,15 @@
2424
},
2525
"scripts": {
2626
"bench": "node bench",
27-
"build": "browserify --bare $npm_pakcage_main --standalone typeDetect -o type-detect.js",
27+
"build": "rollup -c rollup.conf.js",
2828
"commit-msg": "validate-commit-msg",
2929
"lint": "eslint --ignore-path .gitignore .",
30-
"prepublish": "npm run build",
30+
"prepublish": "NODE_ENV=production npm run build",
3131
"semantic-release": "semantic-release pre && npm publish && semantic-release post",
32-
"pretest": "npm run lint",
32+
"pretest": "npm run lint && NODE_ENV=test npm run build",
3333
"test": "npm run test:node && npm run test:browser && npm run upload-coverage",
3434
"test:browser": "karma start --singleRun=true",
35-
"test:node": "istanbul cover _mocha",
35+
"test:node": "nyc mocha type-detect.test.js",
3636
"upload-coverage": "lcov-result-merger 'coverage/**/lcov.info' | coveralls; exit 0"
3737
},
3838
"eslintConfig": {
@@ -51,30 +51,32 @@
5151
"prefer-rest-params": 0
5252
}
5353
},
54-
"dependencies": {},
5554
"devDependencies": {
5655
"benchmark": "^2.1.0",
57-
"browserify": "^14.3.0",
58-
"browserify-istanbul": "^2.0.0",
56+
"buble": "^0.15.2",
5957
"coveralls": "2.13.0",
6058
"eslint": "^3.19.0",
6159
"eslint-config-strict": "^13.0.0",
62-
"eslint-plugin-filenames": "^1.1.0",
63-
"husky": "^0.13.3",
64-
"istanbul": "^0.4.2",
65-
"karma": "^1.1.2",
66-
"karma-browserify": "^5.0.2",
67-
"karma-coverage": "^1.0.0",
68-
"karma-mocha": "^1.0.1",
60+
"eslint-plugin-filenames": "^1.2.0",
61+
"husky": "^0.13.4",
62+
"karma": "^1.7.1",
63+
"karma-coverage": "^1.1.1",
64+
"karma-mocha": "^1.3.0",
6965
"karma-phantomjs-launcher": "^1.0.0",
70-
"karma-sauce-launcher": "^1.0.0",
66+
"karma-sauce-launcher": "^1.2.0",
7167
"lcov-result-merger": "^1.2.0",
72-
"mocha": "^3.0.0",
73-
"phantomjs-prebuilt": "^2.1.5",
74-
"semantic-release": "^6.3.2",
68+
"mocha": "^3.5.1",
69+
"nyc": "^11.2.1",
70+
"phantomjs-prebuilt": "^2.1.15",
71+
"rollup": "^0.49.3",
72+
"rollup-plugin-buble": "^0.15.0",
73+
"rollup-plugin-commonjs": "^8.2.1",
74+
"rollup-plugin-coverage": "^0.1.4",
75+
"rollup-plugin-node-resolve": "^3.0.0",
76+
"semantic-release": "^6.3.6",
7577
"simple-assert": "^1.0.0",
76-
"travis-after-all": "^1.4.4",
77-
"validate-commit-msg": "^2.3.1"
78+
"travis-after-all": "^1.4.5",
79+
"validate-commit-msg": "^2.14.0"
7880
},
7981
"engines": {
8082
"node": "*"

rollup.conf.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import coverage from 'rollup-plugin-coverage';
2+
import common from 'rollup-plugin-commonjs';
3+
import resolve from 'rollup-plugin-node-resolve';
4+
import transform from 'rollup-plugin-buble';
5+
const env = process.env.NODE_ENV || 'test'; // eslint-disable-line no-process-env
6+
export default {
7+
input: env === 'test' ? 'test/index.js' : 'index.js',
8+
output: {
9+
file: env === 'test' ? 'type-detect.test.js' : 'type-detect.js',
10+
name: 'typeDetect',
11+
format: 'iife',
12+
},
13+
plugins: [
14+
env === 'test' ? coverage({ exclude: 'test/*.js' }) : null,
15+
common(),
16+
resolve(),
17+
transform(),
18+
].filter(Boolean),
19+
};

test/index.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import assert from 'simple-assert';
22
import type from '..';
3+
import './dom.js';
4+
import './new-ecmascript-types.js';
5+
import './node.js';
6+
import './tostringtag-extras.js';
37
describe('Generic', () => {
48

59
it('array', () => {
@@ -235,9 +239,10 @@ describe('Generic', () => {
235239
describe('@@toStringTag Sham', () => {
236240
const originalObjectToString = Object.prototype.toString;
237241
before(() => {
238-
self.Symbol = self.Symbol || {};
239-
if (!self.Symbol.toStringTag) {
240-
self.Symbol.toStringTag = '__@@toStringTag__';
242+
const globalObject = typeof self === 'object' ? self : global;
243+
globalObject.Symbol = globalObject.Symbol || {};
244+
if (!Symbol.toStringTag) {
245+
Symbol.toStringTag = '__@@toStringTag__';
241246
}
242247
const test = {};
243248
test[Symbol.toStringTag] = function () {

0 commit comments

Comments
 (0)