vulcan 0.3.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- data/bin/vulcan +3 -1
- data/lib/vulcan/cli.rb +22 -3
- data/lib/vulcan/version.rb +1 -1
- data/server/bin/make +1 -3
- data/server/lib/spawner.js +9 -4
- data/server/node_modules/connect-form/node_modules/formidable/Readme.md +13 -2
- data/server/node_modules/connect-form/node_modules/formidable/lib/incoming_form.js +19 -7
- data/server/node_modules/connect-form/node_modules/formidable/lib/multipart_parser.js +12 -1
- data/server/node_modules/connect-form/node_modules/formidable/package.json +1 -1
- data/server/node_modules/connect-form/node_modules/formidable/test/fixture/file/plain.txt +1 -0
- data/server/node_modules/connect-form/node_modules/formidable/test/fixture/http/no-filename/generic.http +13 -0
- data/server/node_modules/connect-form/node_modules/formidable/test/fixture/http/special-chars-in-filename/osx-chrome-13.http +0 -10
- data/server/node_modules/connect-form/node_modules/formidable/test/fixture/http/special-chars-in-filename/xp-chrome-12.http +0 -9
- data/server/node_modules/connect-form/node_modules/formidable/test/fixture/js/no-filename.js +3 -0
- data/server/node_modules/connect-form/node_modules/formidable/test/legacy/simple/test-multipart-parser.js +1 -1
- data/server/node_modules/cradle/lib/cradle.js +0 -1
- data/server/node_modules/cradle/package.json +3 -3
- data/server/node_modules/cradle/test/cache-test.js +6 -7
- data/server/node_modules/cradle/test/cradle-test.js +4 -5
- data/server/node_modules/cradle/test/response-test.js +5 -6
- data/server/node_modules/express/History.md +53 -1
- data/server/node_modules/express/Makefile +3 -9
- data/server/node_modules/express/Readme.md +3 -1
- data/server/node_modules/express/bin/express +65 -66
- data/server/node_modules/express/lib/express.js +1 -1
- data/server/node_modules/express/lib/request.js +23 -9
- data/server/node_modules/express/lib/response.js +3 -2
- data/server/node_modules/express/lib/utils.js +13 -0
- data/server/node_modules/express/lib/view/view.js +2 -1
- data/server/node_modules/express/lib/view.js +19 -16
- data/server/node_modules/express/node_modules/connect/lib/connect.js +1 -1
- data/server/node_modules/express/node_modules/connect/lib/http.js +2 -0
- data/server/node_modules/express/node_modules/connect/lib/middleware/bodyParser.js +135 -31
- data/server/node_modules/express/node_modules/connect/lib/middleware/limit.js +5 -1
- data/server/node_modules/express/node_modules/connect/lib/middleware/session.js +2 -2
- data/server/node_modules/express/node_modules/connect/lib/middleware/static.js +26 -21
- data/server/node_modules/express/node_modules/connect/lib/middleware/staticCache.js +91 -38
- data/server/node_modules/express/node_modules/connect/lib/middleware/vhost.js +1 -1
- data/server/node_modules/express/node_modules/connect/lib/utils.js +11 -4
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/Makefile +14 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/Readme.md +286 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/TODO +3 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/benchmark/bench-multipart-parser.js +70 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/example/post.js +43 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/example/upload.js +48 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/index.js +1 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/file.js +61 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/incoming_form.js +377 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/index.js +3 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/multipart_parser.js +312 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/querystring_parser.js +25 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/util.js +6 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/package.json +22 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/common.js +19 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/file/funkyfilename.txt +1 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/file/plain.txt +1 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/no-filename/generic.http +13 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/info.md +3 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/osx-chrome-13.http +26 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/osx-firefox-3.6.http +24 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/osx-safari-5.http +23 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/xp-chrome-12.http +24 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/xp-ie-7.http +22 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/xp-ie-8.http +22 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/xp-safari-5.http +22 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/js/no-filename.js +3 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/js/special-chars-in-filename.js +21 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/multi_video.upload +0 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/multipart.js +72 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/integration/test-fixtures.js +89 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/common.js +24 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/integration/test-multipart-parser.js +80 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/simple/test-file.js +104 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/simple/test-incoming-form.js +715 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/simple/test-multipart-parser.js +50 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/simple/test-querystring-parser.js +45 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/system/test-multi-video-upload.js +72 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/run.js +2 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/unit/test-incoming-form.js +63 -0
- data/server/node_modules/express/node_modules/connect/node_modules/formidable/tool/record.js +47 -0
- data/server/node_modules/express/node_modules/connect/package.json +7 -6
- data/server/node_modules/express/node_modules/connect/test.js +44 -31
- data/server/node_modules/express/node_modules/mime/mime.js +3 -3
- data/server/node_modules/express/node_modules/mime/package.json +21 -10
- data/server/node_modules/express/node_modules/mime/test.js +2 -3
- data/server/node_modules/express/node_modules/mime/{mime.types → types/mime.types} +0 -0
- data/server/node_modules/express/node_modules/mime/{node.types → types/node.types} +17 -0
- data/server/node_modules/express/node_modules/mkdirp/LICENSE +21 -0
- data/server/node_modules/express/node_modules/mkdirp/README.markdown +21 -0
- data/server/node_modules/express/node_modules/mkdirp/examples/pow.js +6 -0
- data/server/node_modules/express/node_modules/mkdirp/examples/pow.js.orig +6 -0
- data/server/node_modules/express/node_modules/mkdirp/examples/pow.js.rej +19 -0
- data/server/node_modules/express/node_modules/mkdirp/index.js +20 -0
- data/server/node_modules/express/node_modules/mkdirp/package.json +23 -0
- data/server/node_modules/express/node_modules/mkdirp/test/mkdirp.js +28 -0
- data/server/node_modules/express/node_modules/mkdirp/test/race.js +41 -0
- data/server/node_modules/express/node_modules/mkdirp/test/rel.js +32 -0
- data/server/node_modules/express/node_modules/qs/History.md +11 -0
- data/server/node_modules/express/node_modules/qs/Makefile +1 -3
- data/server/node_modules/express/node_modules/qs/Readme.md +2 -4
- data/server/node_modules/express/node_modules/qs/lib/querystring.js +100 -74
- data/server/node_modules/express/node_modules/qs/package.json +9 -2
- data/server/node_modules/express/node_modules/qs/test/mocha.opts +2 -0
- data/server/node_modules/express/node_modules/qs/test/{parse.test.js → parse.js} +1 -2
- data/server/node_modules/express/node_modules/qs/test/{stringify.test.js → stringify.js} +0 -0
- data/server/node_modules/express/package.json +9 -8
- data/server/node_modules/express/testing/foo/app.js +35 -0
- data/server/node_modules/express/testing/foo/package.json +9 -0
- data/server/node_modules/express/testing/foo/public/stylesheets/style.css +8 -0
- data/server/node_modules/express/testing/foo/routes/index.js +10 -0
- data/server/node_modules/express/testing/foo/views/index.jade +2 -0
- data/server/node_modules/express/testing/foo/views/layout.jade +6 -0
- data/server/node_modules/express/testing/index.js +43 -0
- data/server/node_modules/express/testing/public/test.txt +2971 -0
- data/server/node_modules/express/testing/views/page.html +1 -0
- data/server/node_modules/express/testing/views/page.jade +3 -0
- data/server/node_modules/express/testing/views/test.md +1 -0
- data/server/node_modules/express/testing/views/user/index.jade +1 -0
- data/server/node_modules/express/testing/views/user/list.jade +1 -0
- data/server/node_modules/node-uuid/README.md +166 -67
- data/server/node_modules/node-uuid/benchmark/README.md +53 -0
- data/server/node_modules/node-uuid/benchmark/bench.gnu +174 -0
- data/server/node_modules/node-uuid/benchmark/bench.sh +34 -0
- data/server/node_modules/node-uuid/{test → benchmark}/benchmark-native.c +0 -0
- data/server/node_modules/node-uuid/benchmark/benchmark.js +84 -0
- data/server/node_modules/node-uuid/package.json +5 -3
- data/server/node_modules/node-uuid/test/benchmark-native +0 -0
- data/server/node_modules/node-uuid/test/compare_v1.js +63 -0
- data/server/node_modules/node-uuid/test/test.html +3 -0
- data/server/node_modules/node-uuid/test/test.js +214 -57
- data/server/node_modules/node-uuid/uuid.js +225 -56
- data/server/node_modules/restler/README.md +20 -7
- data/server/node_modules/restler/bin/restler +1 -1
- data/server/node_modules/restler/lib/multipartform.js +9 -8
- data/server/node_modules/restler/lib/restler.js +64 -22
- data/server/node_modules/restler/package.json +2 -2
- data/server/node_modules/restler/test/restler.js +22 -2
- data/server/node_modules/restler/test/test_helper.js +20 -1
- data/server/package.json +1 -2
- data/server/web.js +30 -7
- metadata +90 -86
- data/server/node_modules/cradle/node_modules/vows/LICENSE +0 -20
- data/server/node_modules/cradle/node_modules/vows/Makefile +0 -7
- data/server/node_modules/cradle/node_modules/vows/README.md +0 -39
- data/server/node_modules/cradle/node_modules/vows/bin/vows +0 -515
- data/server/node_modules/cradle/node_modules/vows/lib/assert/error.js +0 -27
- data/server/node_modules/cradle/node_modules/vows/lib/assert/macros.js +0 -215
- data/server/node_modules/cradle/node_modules/vows/lib/assert/utils.js +0 -77
- data/server/node_modules/cradle/node_modules/vows/lib/vows/console.js +0 -131
- data/server/node_modules/cradle/node_modules/vows/lib/vows/context.js +0 -55
- data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/file.js +0 -29
- data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/fragments/coverage-foot.html +0 -2
- data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/fragments/coverage-head.html +0 -61
- data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/report-html.js +0 -54
- data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/report-json.js +0 -54
- data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/report-plain.js +0 -38
- data/server/node_modules/cradle/node_modules/vows/lib/vows/extras.js +0 -28
- data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/dot-matrix.js +0 -67
- data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/json.js +0 -16
- data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/silent.js +0 -8
- data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/spec.js +0 -44
- data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/watch.js +0 -39
- data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/xunit.js +0 -90
- data/server/node_modules/cradle/node_modules/vows/lib/vows/suite.js +0 -319
- data/server/node_modules/cradle/node_modules/vows/lib/vows.js +0 -193
- data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/LICENSE +0 -20
- data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/Makefile +0 -4
- data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/README.md +0 -72
- data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/lib/eyes.js +0 -233
- data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/package.json +0 -14
- data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/test/eyes-test.js +0 -55
- data/server/node_modules/cradle/node_modules/vows/package.json +0 -14
- data/server/node_modules/cradle/node_modules/vows/test/assert-test.js +0 -135
- data/server/node_modules/cradle/node_modules/vows/test/fixtures/isolate/failing.js +0 -18
- data/server/node_modules/cradle/node_modules/vows/test/fixtures/isolate/log.js +0 -18
- data/server/node_modules/cradle/node_modules/vows/test/fixtures/isolate/passing.js +0 -17
- data/server/node_modules/cradle/node_modules/vows/test/fixtures/isolate/stderr.js +0 -18
- data/server/node_modules/cradle/node_modules/vows/test/isolate-test.js +0 -140
- data/server/node_modules/cradle/node_modules/vows/test/testInherit.js +0 -133
- data/server/node_modules/cradle/node_modules/vows/test/vows-error-test.js +0 -51
- data/server/node_modules/cradle/node_modules/vows/test/vows-test.js +0 -374
- data/server/node_modules/express/node_modules/mime/index.js +0 -1
- data/server/node_modules/express/node_modules/qs/support/expresso/History.md +0 -128
- data/server/node_modules/express/node_modules/qs/support/expresso/Makefile +0 -53
- data/server/node_modules/express/node_modules/qs/support/expresso/Readme.md +0 -61
- data/server/node_modules/express/node_modules/qs/support/expresso/bin/expresso +0 -856
- data/server/node_modules/express/node_modules/qs/support/expresso/docs/api.html +0 -1080
- data/server/node_modules/express/node_modules/qs/support/expresso/docs/index.html +0 -377
- data/server/node_modules/express/node_modules/qs/support/expresso/docs/index.md +0 -290
- data/server/node_modules/express/node_modules/qs/support/expresso/docs/layout/foot.html +0 -3
- data/server/node_modules/express/node_modules/qs/support/expresso/docs/layout/head.html +0 -42
- data/server/node_modules/express/node_modules/qs/support/expresso/lib/bar.js +0 -4
- data/server/node_modules/express/node_modules/qs/support/expresso/lib/foo.js +0 -16
- data/server/node_modules/express/node_modules/qs/support/expresso/package.json +0 -12
- data/server/node_modules/express/node_modules/qs/support/expresso/test/assert.test.js +0 -91
- data/server/node_modules/express/node_modules/qs/support/expresso/test/async.test.js +0 -12
- data/server/node_modules/express/node_modules/qs/support/expresso/test/bar.test.js +0 -13
- data/server/node_modules/express/node_modules/qs/support/expresso/test/foo.test.js +0 -14
- data/server/node_modules/express/node_modules/qs/support/expresso/test/http.test.js +0 -146
- data/server/node_modules/express/node_modules/qs/support/expresso/test/serial/async.test.js +0 -39
- data/server/node_modules/express/node_modules/qs/support/expresso/test/serial/http.test.js +0 -48
- data/server/node_modules/express/node_modules/qs/support/should/History.md +0 -22
- data/server/node_modules/express/node_modules/qs/support/should/Makefile +0 -6
- data/server/node_modules/express/node_modules/qs/support/should/Readme.md +0 -248
- data/server/node_modules/express/node_modules/qs/support/should/examples/runner.js +0 -53
- data/server/node_modules/express/node_modules/qs/support/should/index.js +0 -2
- data/server/node_modules/express/node_modules/qs/support/should/lib/eql.js +0 -91
- data/server/node_modules/express/node_modules/qs/support/should/lib/should.js +0 -548
- data/server/node_modules/express/node_modules/qs/support/should/package.json +0 -8
- data/server/node_modules/express/node_modules/qs/support/should/test/should.test.js +0 -358
- data/server/node_modules/node-uuid/test/benchmark.js +0 -27
@@ -1,193 +0,0 @@
|
|
1
|
-
//
|
2
|
-
// Vows.js - asynchronous event-based BDD for node.js
|
3
|
-
//
|
4
|
-
// usage:
|
5
|
-
//
|
6
|
-
// var vows = require('vows');
|
7
|
-
//
|
8
|
-
// vows.describe('Deep Thought').addBatch({
|
9
|
-
// "An instance of DeepThought": {
|
10
|
-
// topic: new DeepThought,
|
11
|
-
//
|
12
|
-
// "should know the answer to the ultimate question of life": function (deepThought) {
|
13
|
-
// assert.equal (deepThought.question('what is the answer to the universe?'), 42);
|
14
|
-
// }
|
15
|
-
// }
|
16
|
-
// }).run();
|
17
|
-
//
|
18
|
-
var sys = require('sys'),
|
19
|
-
path = require('path'),
|
20
|
-
events = require('events'),
|
21
|
-
vows = exports;
|
22
|
-
|
23
|
-
// Options
|
24
|
-
vows.options = {
|
25
|
-
Emitter: events.EventEmitter,
|
26
|
-
reporter: require('./vows/reporters/dot-matrix'),
|
27
|
-
matcher: /.*/,
|
28
|
-
error: true // Handle "error" event
|
29
|
-
};
|
30
|
-
|
31
|
-
vows.__defineGetter__('reporter', function () {
|
32
|
-
return vows.options.reporter;
|
33
|
-
});
|
34
|
-
|
35
|
-
var stylize = require('./vows/console').stylize;
|
36
|
-
var console = require('./vows/console');
|
37
|
-
|
38
|
-
vows.inspect = require('./vows/console').inspect;
|
39
|
-
vows.prepare = require('./vows/extras').prepare;
|
40
|
-
vows.tryEnd = require('./vows/suite').tryEnd;
|
41
|
-
|
42
|
-
//
|
43
|
-
// Assertion Macros & Extensions
|
44
|
-
//
|
45
|
-
require('./assert/error');
|
46
|
-
require('./assert/macros');
|
47
|
-
|
48
|
-
//
|
49
|
-
// Suite constructor
|
50
|
-
//
|
51
|
-
var Suite = require('./vows/suite').Suite;
|
52
|
-
|
53
|
-
//
|
54
|
-
// This function gets added to events.EventEmitter.prototype, by default.
|
55
|
-
// It's essentially a wrapper around `on`, which adds all the specification
|
56
|
-
// goodness.
|
57
|
-
//
|
58
|
-
function addVow(vow) {
|
59
|
-
var batch = vow.batch;
|
60
|
-
|
61
|
-
batch.total ++;
|
62
|
-
batch.vows.push(vow);
|
63
|
-
|
64
|
-
return this.on("success", function () {
|
65
|
-
var args = Array.prototype.slice.call(arguments);
|
66
|
-
// If the callback is expecting two or more arguments,
|
67
|
-
// pass the error as the first (null) and the result after.
|
68
|
-
if (vow.callback.length >= 2 && batch.suite.options.error) {
|
69
|
-
args.unshift(null);
|
70
|
-
}
|
71
|
-
runTest(args, this.ctx);
|
72
|
-
vows.tryEnd(batch);
|
73
|
-
|
74
|
-
}).on("error", function (err) {
|
75
|
-
if (vow.callback.length >= 2 || !batch.suite.options.error) {
|
76
|
-
runTest(arguments, this.ctx);
|
77
|
-
} else {
|
78
|
-
output('errored', { type: 'promise', error: err.stack || err.message || JSON.stringify(err) });
|
79
|
-
}
|
80
|
-
vows.tryEnd(batch);
|
81
|
-
});
|
82
|
-
|
83
|
-
function runTest(args, ctx) {
|
84
|
-
var topic, status;
|
85
|
-
|
86
|
-
if (vow.callback instanceof String) {
|
87
|
-
return output('pending');
|
88
|
-
}
|
89
|
-
|
90
|
-
// Run the test, and try to catch `AssertionError`s and other exceptions;
|
91
|
-
// increment counters accordingly.
|
92
|
-
try {
|
93
|
-
vow.callback.apply(ctx === global || !ctx ? vow.binding : ctx, args);
|
94
|
-
output('honored');
|
95
|
-
} catch (e) {
|
96
|
-
if (e.name && e.name.match(/AssertionError/)) {
|
97
|
-
output('broken', e.toString());
|
98
|
-
} else {
|
99
|
-
output('errored', e.stack || e.message || e);
|
100
|
-
}
|
101
|
-
}
|
102
|
-
}
|
103
|
-
|
104
|
-
function output(status, exception) {
|
105
|
-
batch[status] ++;
|
106
|
-
vow.status = status;
|
107
|
-
|
108
|
-
if (vow.context && batch.lastContext !== vow.context) {
|
109
|
-
batch.lastContext = vow.context;
|
110
|
-
batch.suite.report(['context', vow.context]);
|
111
|
-
}
|
112
|
-
batch.suite.report(['vow', {
|
113
|
-
title: vow.description,
|
114
|
-
context: vow.context,
|
115
|
-
status: status,
|
116
|
-
exception: exception || null
|
117
|
-
}]);
|
118
|
-
}
|
119
|
-
};
|
120
|
-
|
121
|
-
//
|
122
|
-
// On exit, check that all promises have been fired.
|
123
|
-
// If not, report an error message.
|
124
|
-
//
|
125
|
-
process.on('exit', function () {
|
126
|
-
var results = { honored: 0, broken: 0, errored: 0, pending: 0, total: 0 }, failure;
|
127
|
-
|
128
|
-
vows.suites.forEach(function (s) {
|
129
|
-
if ((s.results.total > 0) && (s.results.time === null)) {
|
130
|
-
s.reporter.print('\n\n');
|
131
|
-
s.reporter.report(['error', { error: "Asynchronous Error", suite: s }]);
|
132
|
-
}
|
133
|
-
s.batches.forEach(function (b) {
|
134
|
-
var unFired = [];
|
135
|
-
|
136
|
-
b.vows.forEach(function (vow) {
|
137
|
-
if (! vow.status) {
|
138
|
-
if (unFired.indexOf(vow.context) === -1) {
|
139
|
-
unFired.push(vow.context);
|
140
|
-
}
|
141
|
-
}
|
142
|
-
});
|
143
|
-
|
144
|
-
if (unFired.length > 0) { sys.print('\n') }
|
145
|
-
|
146
|
-
unFired.forEach(function (title) {
|
147
|
-
s.reporter.report(['error', {
|
148
|
-
error: "callback not fired",
|
149
|
-
context: title,
|
150
|
-
batch: b,
|
151
|
-
suite: s
|
152
|
-
}]);
|
153
|
-
});
|
154
|
-
|
155
|
-
if (b.status === 'begin') {
|
156
|
-
failure = true;
|
157
|
-
results.errored ++;
|
158
|
-
results.total ++;
|
159
|
-
}
|
160
|
-
Object.keys(results).forEach(function (k) { results[k] += b[k] });
|
161
|
-
});
|
162
|
-
});
|
163
|
-
if (failure) {
|
164
|
-
sys.puts(console.result(results));
|
165
|
-
}
|
166
|
-
});
|
167
|
-
|
168
|
-
vows.suites = [];
|
169
|
-
|
170
|
-
//
|
171
|
-
// Create a new test suite
|
172
|
-
//
|
173
|
-
vows.describe = function (subject) {
|
174
|
-
var suite = new(Suite)(subject);
|
175
|
-
|
176
|
-
this.options.Emitter.prototype.addVow = addVow;
|
177
|
-
this.suites.push(suite);
|
178
|
-
|
179
|
-
//
|
180
|
-
// Add any additional arguments as batches if they're present
|
181
|
-
//
|
182
|
-
if (arguments.length > 1) {
|
183
|
-
for (var i = 1, l = arguments.length; i < l; ++i) {
|
184
|
-
suite.addBatch(arguments[i]);
|
185
|
-
}
|
186
|
-
}
|
187
|
-
|
188
|
-
return suite;
|
189
|
-
};
|
190
|
-
|
191
|
-
|
192
|
-
vows.version = require('fs').readFileSync(path.join(__dirname, '..', 'package.json'))
|
193
|
-
.toString().match(/"version"\s*:\s*"([\d.]+)"/)[1];
|
@@ -1,20 +0,0 @@
|
|
1
|
-
Copyright (c) 2009 cloudhead
|
2
|
-
|
3
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
-
a copy of this software and associated documentation files (the
|
5
|
-
"Software"), to deal in the Software without restriction, including
|
6
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
-
permit persons to whom the Software is furnished to do so, subject to
|
9
|
-
the following conditions:
|
10
|
-
|
11
|
-
The above copyright notice and this permission notice shall be
|
12
|
-
included in all copies or substantial portions of the Software.
|
13
|
-
|
14
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
-
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
-
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -1,72 +0,0 @@
|
|
1
|
-
eyes
|
2
|
-
====
|
3
|
-
|
4
|
-
a customizable value inspector for Node.js
|
5
|
-
|
6
|
-
synopsis
|
7
|
-
--------
|
8
|
-
|
9
|
-
I was tired of looking at cluttered output in the console -- something needed to be done,
|
10
|
-
`sys.inspect()` didn't display regexps correctly, and was too verbose, and I had an hour or two to spare.
|
11
|
-
So I decided to have some fun. _eyes_ were born.
|
12
|
-
|
13
|
-
![eyes-ss](http://dl.dropbox.com/u/251849/eyes-js-ss.gif)
|
14
|
-
|
15
|
-
_example of the output of a user-customized eyes.js inspector_
|
16
|
-
|
17
|
-
*eyes* also deals with circular objects in an intelligent way, and can pretty-print object literals.
|
18
|
-
|
19
|
-
usage
|
20
|
-
-----
|
21
|
-
|
22
|
-
var inspect = require('eyes').inspector({styles: {all: 'magenta'}});
|
23
|
-
|
24
|
-
inspect(something); // inspect with the settings passed to `inspector`
|
25
|
-
|
26
|
-
or
|
27
|
-
|
28
|
-
var eyes = require('eyes');
|
29
|
-
|
30
|
-
eyes.inspect(something); // inspect with the default settings
|
31
|
-
|
32
|
-
you can pass a _label_ to `inspect()`, to keep track of your inspections:
|
33
|
-
|
34
|
-
eyes.inspect(something, "a random value");
|
35
|
-
|
36
|
-
If you want to return the output of eyes without printing it, you can set it up this way:
|
37
|
-
|
38
|
-
var inspect = require('eyes').inspector({ stream: null });
|
39
|
-
|
40
|
-
sys.puts(inspect({ something: 42 }));
|
41
|
-
|
42
|
-
customization
|
43
|
-
-------------
|
44
|
-
|
45
|
-
These are the default styles and settings used by _eyes_.
|
46
|
-
styles: { // Styles applied to stdout
|
47
|
-
all: 'cyan', // Overall style applied to everything
|
48
|
-
label: 'underline', // Inspection labels, like 'array' in `array: [1, 2, 3]`
|
49
|
-
other: 'inverted', // Objects which don't have a literal representation, such as functions
|
50
|
-
key: 'bold', // The keys in object literals, like 'a' in `{a: 1}`
|
51
|
-
|
52
|
-
special: 'grey', // null, undefined...
|
53
|
-
string: 'green',
|
54
|
-
number: 'magenta',
|
55
|
-
bool: 'blue', // true false
|
56
|
-
regexp: 'green', // /\d+/
|
57
|
-
},
|
58
|
-
pretty: true, // Indent object literals
|
59
|
-
hideFunctions: false, // Don't output functions at all
|
60
|
-
stream: process.stdout, // Stream to write to, or null
|
61
|
-
maxLength: 2048 // Truncate output if longer
|
62
|
-
|
63
|
-
You can overwrite them with your own, by passing a similar object to `inspector()` or `inspect()`.
|
64
|
-
|
65
|
-
var inspect = require('eyes').inspector({
|
66
|
-
styles: {
|
67
|
-
all: 'magenta',
|
68
|
-
special: 'bold'
|
69
|
-
},
|
70
|
-
maxLength: 512
|
71
|
-
});
|
72
|
-
|
@@ -1,233 +0,0 @@
|
|
1
|
-
//
|
2
|
-
// Eyes.js - a customizable value inspector for Node.js
|
3
|
-
//
|
4
|
-
// usage:
|
5
|
-
//
|
6
|
-
// var inspect = require('eyes').inspector({styles: {all: 'magenta'}});
|
7
|
-
// inspect(something); // inspect with the settings passed to `inspector`
|
8
|
-
//
|
9
|
-
// or
|
10
|
-
//
|
11
|
-
// var eyes = require('eyes');
|
12
|
-
// eyes.inspect(something); // inspect with the default settings
|
13
|
-
//
|
14
|
-
var eyes = exports,
|
15
|
-
stack = [];
|
16
|
-
|
17
|
-
eyes.defaults = {
|
18
|
-
styles: { // Styles applied to stdout
|
19
|
-
all: 'cyan', // Overall style applied to everything
|
20
|
-
label: 'underline', // Inspection labels, like 'array' in `array: [1, 2, 3]`
|
21
|
-
other: 'inverted', // Objects which don't have a literal representation, such as functions
|
22
|
-
key: 'bold', // The keys in object literals, like 'a' in `{a: 1}`
|
23
|
-
special: 'grey', // null, undefined...
|
24
|
-
string: 'green',
|
25
|
-
number: 'magenta',
|
26
|
-
bool: 'blue', // true false
|
27
|
-
regexp: 'green', // /\d+/
|
28
|
-
},
|
29
|
-
pretty: true, // Indent object literals
|
30
|
-
hideFunctions: false,
|
31
|
-
stream: process.stdout,
|
32
|
-
maxLength: 2048 // Truncate output if longer
|
33
|
-
};
|
34
|
-
|
35
|
-
// Return a curried inspect() function, with the `options` argument filled in.
|
36
|
-
eyes.inspector = function (options) {
|
37
|
-
var that = this;
|
38
|
-
return function (obj, label, opts) {
|
39
|
-
return that.inspect.call(that, obj, label,
|
40
|
-
merge(options || {}, opts || {}));
|
41
|
-
};
|
42
|
-
};
|
43
|
-
|
44
|
-
// If we have a `stream` defined, use it to print a styled string,
|
45
|
-
// if not, we just return the stringified object.
|
46
|
-
eyes.inspect = function (obj, label, options) {
|
47
|
-
options = merge(this.defaults, options || {});
|
48
|
-
|
49
|
-
if (options.stream) {
|
50
|
-
return this.print(stringify(obj, options), label, options);
|
51
|
-
} else {
|
52
|
-
return stringify(obj, options) + (options.styles ? '\033[39m' : '');
|
53
|
-
}
|
54
|
-
};
|
55
|
-
|
56
|
-
// Output using the 'stream', and an optional label
|
57
|
-
// Loop through `str`, and truncate it after `options.maxLength` has been reached.
|
58
|
-
// Because escape sequences are, at this point embeded within
|
59
|
-
// the output string, we can't measure the length of the string
|
60
|
-
// in a useful way, without separating what is an escape sequence,
|
61
|
-
// versus a printable character (`c`). So we resort to counting the
|
62
|
-
// length manually.
|
63
|
-
eyes.print = function (str, label, options) {
|
64
|
-
for (var c = 0, i = 0; i < str.length; i++) {
|
65
|
-
if (str.charAt(i) === '\033') { i += 4 } // `4` because '\033[25m'.length + 1 == 5
|
66
|
-
else if (c === options.maxLength) {
|
67
|
-
str = str.slice(0, i - 1) + '…';
|
68
|
-
break;
|
69
|
-
} else { c++ }
|
70
|
-
}
|
71
|
-
return options.stream.write.call(options.stream, (label ?
|
72
|
-
this.stylize(label, options.styles.label, options.styles) + ': ' : '') +
|
73
|
-
this.stylize(str, options.styles.all, options.styles) + '\033[0m' + "\n");
|
74
|
-
};
|
75
|
-
|
76
|
-
// Apply a style to a string, eventually,
|
77
|
-
// I'd like this to support passing multiple
|
78
|
-
// styles.
|
79
|
-
eyes.stylize = function (str, style, styles) {
|
80
|
-
var codes = {
|
81
|
-
'bold' : [1, 22],
|
82
|
-
'underline' : [4, 24],
|
83
|
-
'inverse' : [7, 27],
|
84
|
-
'cyan' : [36, 39],
|
85
|
-
'magenta' : [35, 39],
|
86
|
-
'blue' : [34, 39],
|
87
|
-
'yellow' : [33, 39],
|
88
|
-
'green' : [32, 39],
|
89
|
-
'red' : [31, 39],
|
90
|
-
'grey' : [90, 39]
|
91
|
-
}, endCode;
|
92
|
-
|
93
|
-
if (style && codes[style]) {
|
94
|
-
endCode = (codes[style][1] === 39 && styles.all) ? codes[styles.all][0]
|
95
|
-
: codes[style][1];
|
96
|
-
return '\033[' + codes[style][0] + 'm' + str +
|
97
|
-
'\033[' + endCode + 'm';
|
98
|
-
} else { return str }
|
99
|
-
};
|
100
|
-
|
101
|
-
// Convert any object to a string, ready for output.
|
102
|
-
// When an 'array' or an 'object' are encountered, they are
|
103
|
-
// passed to specialized functions, which can then recursively call
|
104
|
-
// stringify().
|
105
|
-
function stringify(obj, options) {
|
106
|
-
var that = this, stylize = function (str, style) {
|
107
|
-
return eyes.stylize(str, options.styles[style], options.styles)
|
108
|
-
}, index, result;
|
109
|
-
|
110
|
-
if ((index = stack.indexOf(obj)) !== -1) {
|
111
|
-
return stylize(new(Array)(stack.length - index + 1).join('.'), 'special');
|
112
|
-
}
|
113
|
-
stack.push(obj);
|
114
|
-
|
115
|
-
result = (function (obj) {
|
116
|
-
switch (typeOf(obj)) {
|
117
|
-
case "string" : obj = stringifyString(obj.indexOf("'") === -1 ? "'" + obj + "'"
|
118
|
-
: '"' + obj + '"');
|
119
|
-
return stylize(obj, 'string');
|
120
|
-
case "regexp" : return stylize('/' + obj.source + '/', 'regexp');
|
121
|
-
case "number" : return stylize(obj + '', 'number');
|
122
|
-
case "function" : return options.stream ? stylize("Function", 'other') : '[Function]';
|
123
|
-
case "null" : return stylize("null", 'special');
|
124
|
-
case "undefined": return stylize("undefined", 'special');
|
125
|
-
case "boolean" : return stylize(obj + '', 'bool');
|
126
|
-
case "date" : return stylize(obj.toUTCString());
|
127
|
-
case "array" : return stringifyArray(obj, options, stack.length);
|
128
|
-
case "object" : return stringifyObject(obj, options, stack.length);
|
129
|
-
}
|
130
|
-
})(obj);
|
131
|
-
|
132
|
-
stack.pop();
|
133
|
-
return result;
|
134
|
-
};
|
135
|
-
|
136
|
-
// Escape invisible characters in a string
|
137
|
-
function stringifyString (str, options) {
|
138
|
-
return str.replace(/\\/g, '\\\\')
|
139
|
-
.replace(/\n/g, '\\n')
|
140
|
-
.replace(/[\u0001-\u001F]/g, function (match) {
|
141
|
-
return '\\0' + match[0].charCodeAt(0).toString(8);
|
142
|
-
});
|
143
|
-
}
|
144
|
-
|
145
|
-
// Convert an array to a string, such as [1, 2, 3].
|
146
|
-
// This function calls stringify() for each of the elements
|
147
|
-
// in the array.
|
148
|
-
function stringifyArray(ary, options, level) {
|
149
|
-
var out = [];
|
150
|
-
var pretty = options.pretty && (ary.length > 4 || ary.some(function (o) {
|
151
|
-
return (typeof(o) === 'object' && Object.keys(o).length > 0) ||
|
152
|
-
(Array.isArray(o) && o.length > 0);
|
153
|
-
}));
|
154
|
-
var ws = pretty ? '\n' + new(Array)(level * 4 + 1).join(' ') : ' ';
|
155
|
-
|
156
|
-
for (var i = 0; i < ary.length; i++) {
|
157
|
-
out.push(stringify(ary[i], options));
|
158
|
-
}
|
159
|
-
|
160
|
-
if (out.length === 0) {
|
161
|
-
return '[]';
|
162
|
-
} else {
|
163
|
-
return '[' + ws
|
164
|
-
+ out.join(',' + (pretty ? ws : ' '))
|
165
|
-
+ (pretty ? ws.slice(0, -4) : ws) +
|
166
|
-
']';
|
167
|
-
}
|
168
|
-
};
|
169
|
-
|
170
|
-
// Convert an object to a string, such as {a: 1}.
|
171
|
-
// This function calls stringify() for each of its values,
|
172
|
-
// and does not output functions or prototype values.
|
173
|
-
function stringifyObject(obj, options, level) {
|
174
|
-
var out = [];
|
175
|
-
var pretty = options.pretty && (Object.keys(obj).length > 2 ||
|
176
|
-
Object.keys(obj).some(function (k) { return typeof(obj[k]) === 'object' }));
|
177
|
-
var ws = pretty ? '\n' + new(Array)(level * 4 + 1).join(' ') : ' ';
|
178
|
-
|
179
|
-
Object.keys(obj).forEach(function (k) {
|
180
|
-
if (obj.hasOwnProperty(k) && !(obj[k] instanceof Function && options.hideFunctions)) {
|
181
|
-
out.push(eyes.stylize(k, options.styles.key, options.styles) + ': ' +
|
182
|
-
stringify(obj[k], options));
|
183
|
-
}
|
184
|
-
});
|
185
|
-
|
186
|
-
if (out.length === 0) {
|
187
|
-
return '{}';
|
188
|
-
} else {
|
189
|
-
return "{" + ws
|
190
|
-
+ out.join(',' + (pretty ? ws : ' '))
|
191
|
-
+ (pretty ? ws.slice(0, -4) : ws) +
|
192
|
-
"}";
|
193
|
-
}
|
194
|
-
};
|
195
|
-
|
196
|
-
// A better `typeof`
|
197
|
-
function typeOf(value) {
|
198
|
-
var s = typeof(value),
|
199
|
-
types = [Object, Array, String, RegExp, Number, Function, Boolean, Date];
|
200
|
-
|
201
|
-
if (s === 'object' || s === 'function') {
|
202
|
-
if (value) {
|
203
|
-
types.forEach(function (t) {
|
204
|
-
if (value instanceof t) { s = t.name.toLowerCase() }
|
205
|
-
});
|
206
|
-
} else { s = 'null' }
|
207
|
-
}
|
208
|
-
return s;
|
209
|
-
}
|
210
|
-
|
211
|
-
function merge(/* variable args */) {
|
212
|
-
var objs = Array.prototype.slice.call(arguments);
|
213
|
-
var target = {};
|
214
|
-
|
215
|
-
objs.forEach(function (o) {
|
216
|
-
Object.keys(o).forEach(function (k) {
|
217
|
-
if (k === 'styles') {
|
218
|
-
if (! o.styles) {
|
219
|
-
target.styles = false;
|
220
|
-
} else {
|
221
|
-
target.styles = {}
|
222
|
-
for (var s in o.styles) {
|
223
|
-
target.styles[s] = o.styles[s];
|
224
|
-
}
|
225
|
-
}
|
226
|
-
} else {
|
227
|
-
target[k] = o[k];
|
228
|
-
}
|
229
|
-
});
|
230
|
-
});
|
231
|
-
return target;
|
232
|
-
}
|
233
|
-
|
@@ -1,14 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"name" : "eyes",
|
3
|
-
"description" : "a customizable value inspector",
|
4
|
-
"url" : "http://github.com/cloudhead/eyes.js",
|
5
|
-
"keywords" : ["inspector", "debug", "inspect", "print"],
|
6
|
-
"author" : "Alexis Sellier <self@cloudhead.net>",
|
7
|
-
"contributors" : [],
|
8
|
-
"licenses" : ["MIT"],
|
9
|
-
"dependencies" : [],
|
10
|
-
"main" : "./lib/eyes",
|
11
|
-
"version" : "0.1.6",
|
12
|
-
"directories" : { "lib": "./lib", "test": "./test" },
|
13
|
-
"engines" : { "node": "> 0.1.90" }
|
14
|
-
}
|
@@ -1,55 +0,0 @@
|
|
1
|
-
var sys = require('sys');
|
2
|
-
var eyes = require('../lib/eyes');
|
3
|
-
|
4
|
-
eyes.inspect({
|
5
|
-
number: 42,
|
6
|
-
string: "John Galt",
|
7
|
-
regexp: /[a-z]+/,
|
8
|
-
array: [99, 168, 'x', {}],
|
9
|
-
func: function () {},
|
10
|
-
bool: false,
|
11
|
-
nil: null,
|
12
|
-
undef: undefined,
|
13
|
-
object: {attr: []}
|
14
|
-
}, "native types");
|
15
|
-
|
16
|
-
eyes.inspect({
|
17
|
-
number: new(Number)(42),
|
18
|
-
string: new(String)("John Galt"),
|
19
|
-
regexp: new(RegExp)(/[a-z]+/),
|
20
|
-
array: new(Array)(99, 168, 'x', {}),
|
21
|
-
bool: new(Boolean)(false),
|
22
|
-
object: new(Object)({attr: []}),
|
23
|
-
date: new(Date)
|
24
|
-
}, "wrapped types");
|
25
|
-
|
26
|
-
var obj = {};
|
27
|
-
obj.that = { self: obj };
|
28
|
-
obj.self = obj;
|
29
|
-
|
30
|
-
eyes.inspect(obj, "circular object");
|
31
|
-
eyes.inspect({hello: 'moto'}, "small object");
|
32
|
-
eyes.inspect({hello: new(Array)(6) }, "big object");
|
33
|
-
eyes.inspect(["hello 'world'", 'hello "world"'], "quotes");
|
34
|
-
eyes.inspect({
|
35
|
-
recommendations: [{
|
36
|
-
id: 'a7a6576c2c822c8e2bd81a27e41437d8',
|
37
|
-
key: [ 'spree', 3.764316258020699 ],
|
38
|
-
value: {
|
39
|
-
_id: 'a7a6576c2c822c8e2bd81a27e41437d8',
|
40
|
-
_rev: '1-2e2d2f7fd858c4a5984bcf809d22ed98',
|
41
|
-
type: 'domain',
|
42
|
-
domain: 'spree',
|
43
|
-
weight: 3.764316258020699,
|
44
|
-
product_id: 30
|
45
|
-
}
|
46
|
-
}]
|
47
|
-
}, 'complex');
|
48
|
-
|
49
|
-
|
50
|
-
var inspect = eyes.inspector({ stream: null });
|
51
|
-
|
52
|
-
sys.puts(inspect('something', "something"));
|
53
|
-
sys.puts(inspect("something else"));
|
54
|
-
|
55
|
-
sys.puts(inspect(["no color"], null, { styles: false }));
|
@@ -1,14 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"name" : "vows",
|
3
|
-
"description" : "Asynchronous BDD & continuous integration for node.js",
|
4
|
-
"url" : "http://vowsjs.org",
|
5
|
-
"keywords" : ["testing", "spec", "test", "BDD"],
|
6
|
-
"author" : "Alexis Sellier <self@cloudhead.net>",
|
7
|
-
"contributors" : [{ "name": "Charlie Robbins", "email": "charlie.robbins@gmail.com" }],
|
8
|
-
"dependencies" : {"eyes": ">=0.1.6"},
|
9
|
-
"main" : "./lib/vows",
|
10
|
-
"bin" : { "vows": "./bin/vows" },
|
11
|
-
"directories" : { "test": "./test", "bin": "./bin" },
|
12
|
-
"version" : "0.5.11",
|
13
|
-
"engines" : {"node": ">=0.2.6"}
|
14
|
-
}
|