vulcan 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (211) hide show
  1. data/bin/vulcan +3 -1
  2. data/lib/vulcan/cli.rb +22 -3
  3. data/lib/vulcan/version.rb +1 -1
  4. data/server/bin/make +1 -3
  5. data/server/lib/spawner.js +9 -4
  6. data/server/node_modules/connect-form/node_modules/formidable/Readme.md +13 -2
  7. data/server/node_modules/connect-form/node_modules/formidable/lib/incoming_form.js +19 -7
  8. data/server/node_modules/connect-form/node_modules/formidable/lib/multipart_parser.js +12 -1
  9. data/server/node_modules/connect-form/node_modules/formidable/package.json +1 -1
  10. data/server/node_modules/connect-form/node_modules/formidable/test/fixture/file/plain.txt +1 -0
  11. data/server/node_modules/connect-form/node_modules/formidable/test/fixture/http/no-filename/generic.http +13 -0
  12. data/server/node_modules/connect-form/node_modules/formidable/test/fixture/http/special-chars-in-filename/osx-chrome-13.http +0 -10
  13. data/server/node_modules/connect-form/node_modules/formidable/test/fixture/http/special-chars-in-filename/xp-chrome-12.http +0 -9
  14. data/server/node_modules/connect-form/node_modules/formidable/test/fixture/js/no-filename.js +3 -0
  15. data/server/node_modules/connect-form/node_modules/formidable/test/legacy/simple/test-multipart-parser.js +1 -1
  16. data/server/node_modules/cradle/lib/cradle.js +0 -1
  17. data/server/node_modules/cradle/package.json +3 -3
  18. data/server/node_modules/cradle/test/cache-test.js +6 -7
  19. data/server/node_modules/cradle/test/cradle-test.js +4 -5
  20. data/server/node_modules/cradle/test/response-test.js +5 -6
  21. data/server/node_modules/express/History.md +53 -1
  22. data/server/node_modules/express/Makefile +3 -9
  23. data/server/node_modules/express/Readme.md +3 -1
  24. data/server/node_modules/express/bin/express +65 -66
  25. data/server/node_modules/express/lib/express.js +1 -1
  26. data/server/node_modules/express/lib/request.js +23 -9
  27. data/server/node_modules/express/lib/response.js +3 -2
  28. data/server/node_modules/express/lib/utils.js +13 -0
  29. data/server/node_modules/express/lib/view/view.js +2 -1
  30. data/server/node_modules/express/lib/view.js +19 -16
  31. data/server/node_modules/express/node_modules/connect/lib/connect.js +1 -1
  32. data/server/node_modules/express/node_modules/connect/lib/http.js +2 -0
  33. data/server/node_modules/express/node_modules/connect/lib/middleware/bodyParser.js +135 -31
  34. data/server/node_modules/express/node_modules/connect/lib/middleware/limit.js +5 -1
  35. data/server/node_modules/express/node_modules/connect/lib/middleware/session.js +2 -2
  36. data/server/node_modules/express/node_modules/connect/lib/middleware/static.js +26 -21
  37. data/server/node_modules/express/node_modules/connect/lib/middleware/staticCache.js +91 -38
  38. data/server/node_modules/express/node_modules/connect/lib/middleware/vhost.js +1 -1
  39. data/server/node_modules/express/node_modules/connect/lib/utils.js +11 -4
  40. data/server/node_modules/express/node_modules/connect/node_modules/formidable/Makefile +14 -0
  41. data/server/node_modules/express/node_modules/connect/node_modules/formidable/Readme.md +286 -0
  42. data/server/node_modules/express/node_modules/connect/node_modules/formidable/TODO +3 -0
  43. data/server/node_modules/express/node_modules/connect/node_modules/formidable/benchmark/bench-multipart-parser.js +70 -0
  44. data/server/node_modules/express/node_modules/connect/node_modules/formidable/example/post.js +43 -0
  45. data/server/node_modules/express/node_modules/connect/node_modules/formidable/example/upload.js +48 -0
  46. data/server/node_modules/express/node_modules/connect/node_modules/formidable/index.js +1 -0
  47. data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/file.js +61 -0
  48. data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/incoming_form.js +377 -0
  49. data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/index.js +3 -0
  50. data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/multipart_parser.js +312 -0
  51. data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/querystring_parser.js +25 -0
  52. data/server/node_modules/express/node_modules/connect/node_modules/formidable/lib/util.js +6 -0
  53. data/server/node_modules/express/node_modules/connect/node_modules/formidable/package.json +22 -0
  54. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/common.js +19 -0
  55. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/file/funkyfilename.txt +1 -0
  56. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/file/plain.txt +1 -0
  57. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/no-filename/generic.http +13 -0
  58. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/info.md +3 -0
  59. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/osx-chrome-13.http +26 -0
  60. 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
  61. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/osx-safari-5.http +23 -0
  62. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/xp-chrome-12.http +24 -0
  63. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/xp-ie-7.http +22 -0
  64. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/xp-ie-8.http +22 -0
  65. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/http/special-chars-in-filename/xp-safari-5.http +22 -0
  66. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/js/no-filename.js +3 -0
  67. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/js/special-chars-in-filename.js +21 -0
  68. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/multi_video.upload +0 -0
  69. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/fixture/multipart.js +72 -0
  70. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/integration/test-fixtures.js +89 -0
  71. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/common.js +24 -0
  72. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/integration/test-multipart-parser.js +80 -0
  73. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/simple/test-file.js +104 -0
  74. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/simple/test-incoming-form.js +715 -0
  75. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/simple/test-multipart-parser.js +50 -0
  76. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/simple/test-querystring-parser.js +45 -0
  77. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/legacy/system/test-multi-video-upload.js +72 -0
  78. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/run.js +2 -0
  79. data/server/node_modules/express/node_modules/connect/node_modules/formidable/test/unit/test-incoming-form.js +63 -0
  80. data/server/node_modules/express/node_modules/connect/node_modules/formidable/tool/record.js +47 -0
  81. data/server/node_modules/express/node_modules/connect/package.json +7 -6
  82. data/server/node_modules/express/node_modules/connect/test.js +44 -31
  83. data/server/node_modules/express/node_modules/mime/mime.js +3 -3
  84. data/server/node_modules/express/node_modules/mime/package.json +21 -10
  85. data/server/node_modules/express/node_modules/mime/test.js +2 -3
  86. data/server/node_modules/express/node_modules/mime/{mime.types → types/mime.types} +0 -0
  87. data/server/node_modules/express/node_modules/mime/{node.types → types/node.types} +17 -0
  88. data/server/node_modules/express/node_modules/mkdirp/LICENSE +21 -0
  89. data/server/node_modules/express/node_modules/mkdirp/README.markdown +21 -0
  90. data/server/node_modules/express/node_modules/mkdirp/examples/pow.js +6 -0
  91. data/server/node_modules/express/node_modules/mkdirp/examples/pow.js.orig +6 -0
  92. data/server/node_modules/express/node_modules/mkdirp/examples/pow.js.rej +19 -0
  93. data/server/node_modules/express/node_modules/mkdirp/index.js +20 -0
  94. data/server/node_modules/express/node_modules/mkdirp/package.json +23 -0
  95. data/server/node_modules/express/node_modules/mkdirp/test/mkdirp.js +28 -0
  96. data/server/node_modules/express/node_modules/mkdirp/test/race.js +41 -0
  97. data/server/node_modules/express/node_modules/mkdirp/test/rel.js +32 -0
  98. data/server/node_modules/express/node_modules/qs/History.md +11 -0
  99. data/server/node_modules/express/node_modules/qs/Makefile +1 -3
  100. data/server/node_modules/express/node_modules/qs/Readme.md +2 -4
  101. data/server/node_modules/express/node_modules/qs/lib/querystring.js +100 -74
  102. data/server/node_modules/express/node_modules/qs/package.json +9 -2
  103. data/server/node_modules/express/node_modules/qs/test/mocha.opts +2 -0
  104. data/server/node_modules/express/node_modules/qs/test/{parse.test.js → parse.js} +1 -2
  105. data/server/node_modules/express/node_modules/qs/test/{stringify.test.js → stringify.js} +0 -0
  106. data/server/node_modules/express/package.json +9 -8
  107. data/server/node_modules/express/testing/foo/app.js +35 -0
  108. data/server/node_modules/express/testing/foo/package.json +9 -0
  109. data/server/node_modules/express/testing/foo/public/stylesheets/style.css +8 -0
  110. data/server/node_modules/express/testing/foo/routes/index.js +10 -0
  111. data/server/node_modules/express/testing/foo/views/index.jade +2 -0
  112. data/server/node_modules/express/testing/foo/views/layout.jade +6 -0
  113. data/server/node_modules/express/testing/index.js +43 -0
  114. data/server/node_modules/express/testing/public/test.txt +2971 -0
  115. data/server/node_modules/express/testing/views/page.html +1 -0
  116. data/server/node_modules/express/testing/views/page.jade +3 -0
  117. data/server/node_modules/express/testing/views/test.md +1 -0
  118. data/server/node_modules/express/testing/views/user/index.jade +1 -0
  119. data/server/node_modules/express/testing/views/user/list.jade +1 -0
  120. data/server/node_modules/node-uuid/README.md +166 -67
  121. data/server/node_modules/node-uuid/benchmark/README.md +53 -0
  122. data/server/node_modules/node-uuid/benchmark/bench.gnu +174 -0
  123. data/server/node_modules/node-uuid/benchmark/bench.sh +34 -0
  124. data/server/node_modules/node-uuid/{test → benchmark}/benchmark-native.c +0 -0
  125. data/server/node_modules/node-uuid/benchmark/benchmark.js +84 -0
  126. data/server/node_modules/node-uuid/package.json +5 -3
  127. data/server/node_modules/node-uuid/test/benchmark-native +0 -0
  128. data/server/node_modules/node-uuid/test/compare_v1.js +63 -0
  129. data/server/node_modules/node-uuid/test/test.html +3 -0
  130. data/server/node_modules/node-uuid/test/test.js +214 -57
  131. data/server/node_modules/node-uuid/uuid.js +225 -56
  132. data/server/node_modules/restler/README.md +20 -7
  133. data/server/node_modules/restler/bin/restler +1 -1
  134. data/server/node_modules/restler/lib/multipartform.js +9 -8
  135. data/server/node_modules/restler/lib/restler.js +64 -22
  136. data/server/node_modules/restler/package.json +2 -2
  137. data/server/node_modules/restler/test/restler.js +22 -2
  138. data/server/node_modules/restler/test/test_helper.js +20 -1
  139. data/server/package.json +1 -2
  140. data/server/web.js +30 -7
  141. metadata +90 -86
  142. data/server/node_modules/cradle/node_modules/vows/LICENSE +0 -20
  143. data/server/node_modules/cradle/node_modules/vows/Makefile +0 -7
  144. data/server/node_modules/cradle/node_modules/vows/README.md +0 -39
  145. data/server/node_modules/cradle/node_modules/vows/bin/vows +0 -515
  146. data/server/node_modules/cradle/node_modules/vows/lib/assert/error.js +0 -27
  147. data/server/node_modules/cradle/node_modules/vows/lib/assert/macros.js +0 -215
  148. data/server/node_modules/cradle/node_modules/vows/lib/assert/utils.js +0 -77
  149. data/server/node_modules/cradle/node_modules/vows/lib/vows/console.js +0 -131
  150. data/server/node_modules/cradle/node_modules/vows/lib/vows/context.js +0 -55
  151. data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/file.js +0 -29
  152. data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/fragments/coverage-foot.html +0 -2
  153. data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/fragments/coverage-head.html +0 -61
  154. data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/report-html.js +0 -54
  155. data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/report-json.js +0 -54
  156. data/server/node_modules/cradle/node_modules/vows/lib/vows/coverage/report-plain.js +0 -38
  157. data/server/node_modules/cradle/node_modules/vows/lib/vows/extras.js +0 -28
  158. data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/dot-matrix.js +0 -67
  159. data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/json.js +0 -16
  160. data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/silent.js +0 -8
  161. data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/spec.js +0 -44
  162. data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/watch.js +0 -39
  163. data/server/node_modules/cradle/node_modules/vows/lib/vows/reporters/xunit.js +0 -90
  164. data/server/node_modules/cradle/node_modules/vows/lib/vows/suite.js +0 -319
  165. data/server/node_modules/cradle/node_modules/vows/lib/vows.js +0 -193
  166. data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/LICENSE +0 -20
  167. data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/Makefile +0 -4
  168. data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/README.md +0 -72
  169. data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/lib/eyes.js +0 -233
  170. data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/package.json +0 -14
  171. data/server/node_modules/cradle/node_modules/vows/node_modules/eyes/test/eyes-test.js +0 -55
  172. data/server/node_modules/cradle/node_modules/vows/package.json +0 -14
  173. data/server/node_modules/cradle/node_modules/vows/test/assert-test.js +0 -135
  174. data/server/node_modules/cradle/node_modules/vows/test/fixtures/isolate/failing.js +0 -18
  175. data/server/node_modules/cradle/node_modules/vows/test/fixtures/isolate/log.js +0 -18
  176. data/server/node_modules/cradle/node_modules/vows/test/fixtures/isolate/passing.js +0 -17
  177. data/server/node_modules/cradle/node_modules/vows/test/fixtures/isolate/stderr.js +0 -18
  178. data/server/node_modules/cradle/node_modules/vows/test/isolate-test.js +0 -140
  179. data/server/node_modules/cradle/node_modules/vows/test/testInherit.js +0 -133
  180. data/server/node_modules/cradle/node_modules/vows/test/vows-error-test.js +0 -51
  181. data/server/node_modules/cradle/node_modules/vows/test/vows-test.js +0 -374
  182. data/server/node_modules/express/node_modules/mime/index.js +0 -1
  183. data/server/node_modules/express/node_modules/qs/support/expresso/History.md +0 -128
  184. data/server/node_modules/express/node_modules/qs/support/expresso/Makefile +0 -53
  185. data/server/node_modules/express/node_modules/qs/support/expresso/Readme.md +0 -61
  186. data/server/node_modules/express/node_modules/qs/support/expresso/bin/expresso +0 -856
  187. data/server/node_modules/express/node_modules/qs/support/expresso/docs/api.html +0 -1080
  188. data/server/node_modules/express/node_modules/qs/support/expresso/docs/index.html +0 -377
  189. data/server/node_modules/express/node_modules/qs/support/expresso/docs/index.md +0 -290
  190. data/server/node_modules/express/node_modules/qs/support/expresso/docs/layout/foot.html +0 -3
  191. data/server/node_modules/express/node_modules/qs/support/expresso/docs/layout/head.html +0 -42
  192. data/server/node_modules/express/node_modules/qs/support/expresso/lib/bar.js +0 -4
  193. data/server/node_modules/express/node_modules/qs/support/expresso/lib/foo.js +0 -16
  194. data/server/node_modules/express/node_modules/qs/support/expresso/package.json +0 -12
  195. data/server/node_modules/express/node_modules/qs/support/expresso/test/assert.test.js +0 -91
  196. data/server/node_modules/express/node_modules/qs/support/expresso/test/async.test.js +0 -12
  197. data/server/node_modules/express/node_modules/qs/support/expresso/test/bar.test.js +0 -13
  198. data/server/node_modules/express/node_modules/qs/support/expresso/test/foo.test.js +0 -14
  199. data/server/node_modules/express/node_modules/qs/support/expresso/test/http.test.js +0 -146
  200. data/server/node_modules/express/node_modules/qs/support/expresso/test/serial/async.test.js +0 -39
  201. data/server/node_modules/express/node_modules/qs/support/expresso/test/serial/http.test.js +0 -48
  202. data/server/node_modules/express/node_modules/qs/support/should/History.md +0 -22
  203. data/server/node_modules/express/node_modules/qs/support/should/Makefile +0 -6
  204. data/server/node_modules/express/node_modules/qs/support/should/Readme.md +0 -248
  205. data/server/node_modules/express/node_modules/qs/support/should/examples/runner.js +0 -53
  206. data/server/node_modules/express/node_modules/qs/support/should/index.js +0 -2
  207. data/server/node_modules/express/node_modules/qs/support/should/lib/eql.js +0 -91
  208. data/server/node_modules/express/node_modules/qs/support/should/lib/should.js +0 -548
  209. data/server/node_modules/express/node_modules/qs/support/should/package.json +0 -8
  210. data/server/node_modules/express/node_modules/qs/support/should/test/should.test.js +0 -358
  211. 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,4 +0,0 @@
1
- test:
2
- @@node test/eyes-test.js
3
-
4
- .PHONY: test
@@ -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
- }