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,548 +0,0 @@
1
-
2
- /*!
3
- * Should
4
- * Copyright(c) 2010 TJ Holowaychuk <tj@vision-media.ca>
5
- * MIT Licensed
6
- */
7
-
8
- /**
9
- * Module dependencies.
10
- */
11
-
12
- var util = require('sys')
13
- , assert = require('assert')
14
- , AssertionError = assert.AssertionError
15
- , eql = require('./eql')
16
- , i = util.inspect;
17
-
18
- /**
19
- * Expose assert as should.
20
- *
21
- * This allows you to do things like below
22
- * without require()ing the assert module.
23
- *
24
- * should.equal(foo.bar, undefined);
25
- *
26
- */
27
-
28
- exports = module.exports = assert;
29
-
30
- /**
31
- * Library version.
32
- */
33
-
34
- exports.version = '0.0.4';
35
-
36
- /**
37
- * Expose api via `Object#should`.
38
- *
39
- * @api public
40
- */
41
-
42
- Object.defineProperty(Object.prototype, 'should', {
43
- set: function(){},
44
- get: function(){
45
- return new Assertion(this);
46
- }
47
- });
48
-
49
- /**
50
- * Initialize a new `Assertion` with the given _obj_.
51
- *
52
- * @param {Mixed} obj
53
- * @api private
54
- */
55
-
56
- var Assertion = exports.Assertion = function Assertion(obj) {
57
- this.obj = obj;
58
- };
59
-
60
- /**
61
- * Prototype.
62
- */
63
-
64
- Assertion.prototype = {
65
-
66
- /**
67
- * HACK: prevents double require() from failing.
68
- */
69
-
70
- exports: exports,
71
-
72
- /**
73
- * Assert _expr_ with the given _msg_ and _negatedMsg_.
74
- *
75
- * @param {Boolean} expr
76
- * @param {String} msg
77
- * @param {String} negatedMsg
78
- * @api private
79
- */
80
-
81
- assert: function(expr, msg, negatedMsg){
82
- var msg = this.negate ? negatedMsg : msg
83
- , ok = this.negate ? !expr : expr;
84
- if (!ok) {
85
- throw new AssertionError({
86
- message: msg
87
- , stackStartFunction: this.assert
88
- });
89
- }
90
- },
91
-
92
- /**
93
- * Dummy getter.
94
- *
95
- * @api public
96
- */
97
-
98
- get an() {
99
- return this;
100
- },
101
-
102
- /**
103
- * Dummy getter.
104
- *
105
- * @api public
106
- */
107
-
108
- get and() {
109
- return this;
110
- },
111
-
112
- /**
113
- * Dummy getter.
114
- *
115
- * @api public
116
- */
117
-
118
- get be() {
119
- return this;
120
- },
121
-
122
- /**
123
- * Dummy getter.
124
- *
125
- * @api public
126
- */
127
-
128
- get have() {
129
- return this;
130
- },
131
-
132
- /**
133
- * Dummy getter.
134
- *
135
- * @api public
136
- */
137
-
138
- get with() {
139
- return this;
140
- },
141
-
142
- /**
143
- * Inclusion modifier.
144
- *
145
- * @api public
146
- */
147
-
148
- get include() {
149
- this.includes = true;
150
- return this;
151
- },
152
-
153
- /**
154
- * Negation modifier.
155
- *
156
- * @api public
157
- */
158
-
159
- get not() {
160
- this.negate = true;
161
- return this;
162
- },
163
-
164
- /**
165
- * Get object inspection string.
166
- *
167
- * @return {String}
168
- * @api private
169
- */
170
-
171
- get inspect() {
172
- return i(this.obj);
173
- },
174
-
175
- /**
176
- * Assert instanceof `Arguments`.
177
- *
178
- * @api public
179
- */
180
-
181
- get arguments() {
182
- this.assert(
183
- '[object Arguments]' == Object.prototype.toString.call(this.obj)
184
- , 'expected ' + this.inspect + ' to be arguments'
185
- , 'expected ' + this.inspect + ' to not be arguments');
186
- return this;
187
- },
188
-
189
- /**
190
- * Assert that an object is empty aka length of 0.
191
- *
192
- * @api public
193
- */
194
-
195
- get empty() {
196
- this.obj.should.have.property('length');
197
- this.assert(
198
- 0 === this.obj.length
199
- , 'expected ' + this.inspect + ' to be empty'
200
- , 'expected ' + this.inspect + ' not to be empty');
201
- return this;
202
- },
203
-
204
- /**
205
- * Assert ok.
206
- *
207
- * @api public
208
- */
209
-
210
- get ok() {
211
- this.assert(
212
- this.obj
213
- , 'expected ' + this.inspect + ' to be truthy'
214
- , 'expected ' + this.inspect + ' to be falsey');
215
- return this;
216
- },
217
-
218
- /**
219
- * Assert true.
220
- *
221
- * @api public
222
- */
223
-
224
- get true() {
225
- this.assert(
226
- true === this.obj
227
- , 'expected ' + this.inspect + ' to be true'
228
- , 'expected ' + this.inspect + ' not to be true');
229
- return this;
230
- },
231
-
232
- /**
233
- * Assert false.
234
- *
235
- * @api public
236
- */
237
-
238
- get false() {
239
- this.assert(
240
- false === this.obj
241
- , 'expected ' + this.inspect + ' to be false'
242
- , 'expected ' + this.inspect + ' not to be false');
243
- return this;
244
- },
245
-
246
- /**
247
- * Assert equal.
248
- *
249
- * @param {Mixed} val
250
- * @api public
251
- */
252
-
253
- eql: function(val){
254
- this.assert(
255
- eql(val, this.obj)
256
- , 'expected ' + this.inspect + ' to equal ' + i(val)
257
- , 'expected ' + this.inspect + ' to not equal ' + i(val));
258
- return this;
259
- },
260
-
261
- /**
262
- * Assert strict equal.
263
- *
264
- * @param {Mixed} val
265
- * @api public
266
- */
267
-
268
- equal: function(val){
269
- this.assert(
270
- val === this.obj
271
- , 'expected ' + this.inspect + ' to equal ' + i(val)
272
- , 'expected ' + this.inspect + ' to not equal ' + i(val));
273
- return this;
274
- },
275
-
276
- /**
277
- * Assert within start to finish (inclusive).
278
- *
279
- * @param {Number} start
280
- * @param {Number} finish
281
- * @api public
282
- */
283
-
284
- within: function(start, finish){
285
- var range = start + '..' + finish;
286
- this.assert(
287
- this.obj >= start && this.obj <= finish
288
- , 'expected ' + this.inspect + ' to be within ' + range
289
- , 'expected ' + this.inspect + ' to not be within ' + range);
290
- return this;
291
- },
292
-
293
- /**
294
- * Assert typeof.
295
- *
296
- * @api public
297
- */
298
-
299
- a: function(type){
300
- this.assert(
301
- type == typeof this.obj
302
- , 'expected ' + this.inspect + ' to be a ' + type
303
- , 'expected ' + this.inspect + ' not to be a ' + type);
304
- return this;
305
- },
306
-
307
- /**
308
- * Assert instanceof.
309
- *
310
- * @api public
311
- */
312
-
313
- instanceof: function(constructor){
314
- var name = constructor.name;
315
- this.assert(
316
- this.obj instanceof constructor
317
- , 'expected ' + this.inspect + ' to be an instance of ' + name
318
- , 'expected ' + this.inspect + ' not to be an instance of ' + name);
319
- return this;
320
- },
321
-
322
- /**
323
- * Assert numeric value above _n_.
324
- *
325
- * @param {Number} n
326
- * @api public
327
- */
328
-
329
- above: function(n){
330
- this.assert(
331
- this.obj > n
332
- , 'expected ' + this.inspect + ' to be above ' + n
333
- , 'expected ' + this.inspect + ' to be below ' + n);
334
- return this;
335
- },
336
-
337
- /**
338
- * Assert numeric value below _n_.
339
- *
340
- * @param {Number} n
341
- * @api public
342
- */
343
-
344
- below: function(n){
345
- this.assert(
346
- this.obj < n
347
- , 'expected ' + this.inspect + ' to be below ' + n
348
- , 'expected ' + this.inspect + ' to be above ' + n);
349
- return this;
350
- },
351
-
352
- /**
353
- * Assert string value matches _regexp_.
354
- *
355
- * @param {RegExp} regexp
356
- * @api public
357
- */
358
-
359
- match: function(regexp){
360
- this.assert(
361
- regexp.exec(this.obj)
362
- , 'expected ' + this.inspect + ' to match ' + regexp
363
- , 'expected ' + this.inspect + ' not to match ' + regexp);
364
- return this;
365
- },
366
-
367
- /**
368
- * Assert property "length" exists and has value of _n_.
369
- *
370
- * @param {Number} n
371
- * @api public
372
- */
373
-
374
- length: function(n){
375
- this.obj.should.have.property('length');
376
- var len = this.obj.length;
377
- this.assert(
378
- n == len
379
- , 'expected ' + this.inspect + ' to have a length of ' + n + ' but got ' + len
380
- , 'expected ' + this.inspect + ' to not have a length of ' + len);
381
- return this;
382
- },
383
-
384
- /**
385
- * Assert substring.
386
- *
387
- * @param {String} str
388
- * @api public
389
- */
390
-
391
- string: function(str){
392
- this.obj.should.be.a('string');
393
- this.assert(
394
- ~this.obj.indexOf(str)
395
- , 'expected ' + this.inspect + ' to include ' + i(str)
396
- , 'expected ' + this.inspect + ' to not include ' + i(str));
397
- return this;
398
- },
399
-
400
- /**
401
- * Assert property _name_ exists, with optional _val_.
402
- *
403
- * @param {String} name
404
- * @param {Mixed} val
405
- * @api public
406
- */
407
-
408
- property: function(name, val){
409
- if (this.negate && undefined !== val) {
410
- if (undefined === this.obj[name]) {
411
- throw new Error(this.inspect + ' has no property ' + i(name));
412
- }
413
- } else {
414
- this.assert(
415
- undefined !== this.obj[name]
416
- , 'expected ' + this.inspect + ' to have a property ' + i(name)
417
- , 'expected ' + this.inspect + ' to not have a property ' + i(name));
418
- }
419
-
420
- if (undefined !== val) {
421
- this.assert(
422
- val === this.obj[name]
423
- , 'expected ' + this.inspect + ' to have a property ' + i(name)
424
- + ' of ' + i(val) + ', but got ' + i(this.obj[name])
425
- , 'expected ' + this.inspect + ' to not have a property ' + i(name) + ' of ' + i(val));
426
- }
427
-
428
- this.obj = this.obj[name];
429
- return this;
430
- },
431
-
432
- /**
433
- * Assert own property _name_ exists.
434
- *
435
- * @param {String} name
436
- * @api public
437
- */
438
-
439
- ownProperty: function(name){
440
- this.assert(
441
- this.obj.hasOwnProperty(name)
442
- , 'expected ' + this.inspect + ' to have own property ' + i(name)
443
- , 'expected ' + this.inspect + ' to not have own property ' + i(name));
444
- return this;
445
- },
446
-
447
- /**
448
- * Assert that the array contains _obj_.
449
- *
450
- * @param {Mixed} obj
451
- * @api public
452
- */
453
-
454
- contain: function(obj){
455
- this.obj.should.be.an.instanceof(Array);
456
- this.assert(
457
- ~this.obj.indexOf(obj)
458
- , 'expected ' + this.inspect + ' to contain ' + i(obj)
459
- , 'expected ' + this.inspect + ' to not contain ' + i(obj));
460
- return this;
461
- },
462
-
463
- /**
464
- * Assert exact keys or inclusion of keys by using
465
- * the `.include` modifier.
466
- *
467
- * @param {Array|String ...} keys
468
- * @api public
469
- */
470
-
471
- keys: function(keys){
472
- var str
473
- , ok = true;
474
-
475
- keys = keys instanceof Array
476
- ? keys
477
- : Array.prototype.slice.call(arguments);
478
-
479
- if (!keys.length) throw new Error('keys required');
480
-
481
- var actual = Object.keys(this.obj)
482
- , len = keys.length;
483
-
484
- // Inclusion
485
- ok = keys.every(function(key){
486
- return ~actual.indexOf(key);
487
- });
488
-
489
- // Strict
490
- if (!this.negate && !this.includes) {
491
- ok = ok && keys.length == actual.length;
492
- }
493
-
494
- // Key string
495
- if (len > 1) {
496
- keys = keys.map(function(key){
497
- return i(key);
498
- });
499
- var last = keys.pop();
500
- str = keys.join(', ') + ', and ' + last;
501
- } else {
502
- str = i(keys[0]);
503
- }
504
-
505
- // Form
506
- str = (len > 1 ? 'keys ' : 'key ') + str;
507
-
508
- // Have / include
509
- str = (this.includes ? 'include ' : 'have ') + str;
510
-
511
- // Assertion
512
- this.assert(
513
- ok
514
- , 'expected ' + this.inspect + ' to ' + str
515
- , 'expected ' + this.inspect + ' to not ' + str);
516
-
517
- return this;
518
- },
519
-
520
- /**
521
- * Assert that _method_ is a function.
522
- *
523
- * @param {String} method
524
- * @api public
525
- */
526
-
527
- respondTo: function(method){
528
- this.assert(
529
- 'function' == typeof this.obj[method]
530
- , 'expected ' + this.inspect + ' to respond to ' + method + '()'
531
- , 'expected ' + this.inspect + ' to not respond to ' + method + '()');
532
- return this;
533
- }
534
- };
535
-
536
- /**
537
- * Aliases.
538
- */
539
-
540
- (function alias(name, as){
541
- Assertion.prototype[as] = Assertion.prototype[name];
542
- return alias;
543
- })
544
- ('length', 'lengthOf')
545
- ('keys', 'key')
546
- ('ownProperty', 'haveOwnProperty')
547
- ('above', 'greaterThan')
548
- ('below', 'lessThan');
@@ -1,8 +0,0 @@
1
- { "name": "should"
2
- , "description": "test framework agnostic BDD-style assertions"
3
- , "version": "0.0.4"
4
- , "author": "TJ Holowaychuk <tj@vision-media.ca>"
5
- , "keywords": ["test", "bdd", "assert"]
6
- , "main": "./lib/should.js"
7
- , "engines": { "node": ">= 0.2.0" }
8
- }