UNPKG

1.2 kBJavaScriptView Raw
1var fs = require('fs');
2var path = require('path');
3var browserify = require('browserify');
4var express = require('express');
5
6var expressApp = express();
7expressApp.use(express.static(__dirname + '/public'));
8expressApp.use(express.static(__dirname + '/../node_modules/mocha'));
9
10expressApp.get('/test.js', function(req, res, next) {
11 var bundle = browserify({debug: true});
12 addScripts(bundle, __dirname + '/all', function(err) {
13 if (err) return next(err);
14 addScripts(bundle, __dirname + '/browser', function(err) {
15 if (err) return next(err);
16 bundle.bundle(function(err, code) {
17 if (err) return next(err);
18 res.type('js');
19 res.send(code);
20 });
21 });
22 });
23});
24
25function addScripts(bundle, dir, callback) {
26 fs.readdir(dir, function(err, files) {
27 if (err) return callback(err);
28 for (var i = 0; i < files.length; i++) {
29 var file = files[i];
30 if (path.extname(file) !== '.js') continue;
31 bundle.add(path.join(dir, file));
32 }
33 callback();
34 });
35}
36
37var port = process.env.PORT || 5555;
38var server = expressApp.listen(port, function(err) {
39 console.log('%d listening. Go to: http://localhost:%d/', process.pid, port);
40});