jspec 2.11.13 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. data/History.md +714 -0
  2. data/Manifest +51 -36
  3. data/README.md +968 -0
  4. data/Rakefile +4 -53
  5. data/bin/jspec +93 -224
  6. data/jspec.gemspec +5 -5
  7. data/lib/images/sprites.png +0 -0
  8. data/lib/jspec.css +2 -2
  9. data/lib/jspec.growl.js +115 -0
  10. data/lib/jspec.jquery.js +1 -1
  11. data/lib/jspec.js +98 -101
  12. data/lib/jspec.shell.js +5 -2
  13. data/lib/jspec.timers.js +1 -1
  14. data/lib/jspec.xhr.js +12 -2
  15. data/spec/commands/example_command.rb +19 -0
  16. data/spec/dom.html +33 -0
  17. data/spec/node.js +32 -0
  18. data/spec/rhino.js +24 -0
  19. data/spec/ruby/bin/init_spec.rb +101 -0
  20. data/spec/ruby/bin/install_spec.rb +141 -0
  21. data/spec/ruby/bin/run_spec.rb +0 -0
  22. data/spec/ruby/bin/shell_spec.rb +13 -0
  23. data/spec/ruby/bin/spec_helper.rb +25 -0
  24. data/spec/ruby/bin/update_spec.rb +72 -0
  25. data/spec/server.html +29 -0
  26. data/spec/server.rb +1 -1
  27. data/spec/{env.js → support/env.js} +554 -664
  28. data/spec/support/jquery.js +4376 -0
  29. data/spec/{helpers.js → unit/helpers.js} +2 -0
  30. data/spec/{spec.fixtures.js → unit/spec.fixtures.js} +0 -1
  31. data/spec/{spec.grammar-less.js → unit/spec.grammar-less.js} +0 -0
  32. data/spec/{spec.grammar.js → unit/spec.grammar.js} +1 -11
  33. data/spec/{spec.jquery.js → unit/spec.jquery.js} +0 -17
  34. data/spec/{spec.jquery.xhr.js → unit/spec.jquery.xhr.js} +13 -2
  35. data/spec/unit/spec.js +187 -0
  36. data/spec/{spec.matchers.js → unit/spec.matchers.js} +141 -66
  37. data/spec/{spec.modules.js → unit/spec.modules.js} +0 -0
  38. data/spec/{spec.shared-behaviors.js → unit/spec.shared-behaviors.js} +0 -0
  39. data/spec/{spec.utils.js → unit/spec.utils.js} +123 -22
  40. data/spec/{spec.xhr.js → unit/spec.xhr.js} +11 -10
  41. data/{server → src}/browsers.rb +23 -0
  42. data/{server → src}/helpers.rb +2 -17
  43. data/src/installables.rb +229 -0
  44. data/src/project.rb +340 -0
  45. data/{server → src}/routes.rb +1 -1
  46. data/{server → src}/server.rb +0 -0
  47. data/support/js.jar +0 -0
  48. data/templates/default/History.md +5 -0
  49. data/templates/default/{README.rdoc → Readme.md} +3 -3
  50. data/templates/default/lib/{yourlib.core.js → yourlib.js} +0 -0
  51. data/templates/default/spec/commands/example_command.rb +19 -0
  52. data/templates/default/spec/{spec.dom.html → dom.html} +5 -3
  53. data/templates/default/spec/rhino.js +10 -0
  54. data/templates/default/spec/server.html +18 -0
  55. data/templates/default/spec/unit/spec.helper.js +0 -0
  56. data/templates/default/spec/{spec.core.js → unit/spec.js} +0 -0
  57. data/templates/rails/commands/example_commands.rb +19 -0
  58. data/templates/rails/{spec.dom.html → dom.html} +4 -2
  59. data/templates/rails/rhino.js +10 -0
  60. data/templates/rails/server.html +18 -0
  61. data/templates/rails/unit/spec.helper.js +0 -0
  62. data/templates/rails/{spec.application.js → unit/spec.js} +0 -0
  63. metadata +56 -41
  64. data/History.rdoc +0 -590
  65. data/README.rdoc +0 -842
  66. data/spec/async +0 -1
  67. data/spec/jquery.js +0 -19
  68. data/spec/spec.dom.html +0 -34
  69. data/spec/spec.js +0 -166
  70. data/spec/spec.node.js +0 -46
  71. data/spec/spec.rhino.js +0 -23
  72. data/spec/spec.server.html +0 -29
  73. data/templates/default/History.rdoc +0 -4
  74. data/templates/default/spec/spec.rhino.js +0 -8
  75. data/templates/default/spec/spec.server.html +0 -16
  76. data/templates/rails/spec.rhino.js +0 -8
  77. data/templates/rails/spec.server.html +0 -16
data/History.md ADDED
@@ -0,0 +1,714 @@
1
+
2
+ 3.1.0 / 2010-01-05
3
+ ==================
4
+
5
+ * Added --node (works just like --rhino)
6
+ * Added Node.js support [#114]
7
+ * Fixed markdown < > chars in Readme.md
8
+
9
+ 3.0.0 / 2010-01-04
10
+ ==================
11
+
12
+ * Added JSpec.equal() replacing hash()
13
+ * Added Rhino's .jar to JSpec so that users do not need to install it
14
+ * Added specs for receive matcher negation with times [#150]
15
+ * Added fixturePath option to let JSpec know where your fixtures live
16
+ * Added `jspec stats`
17
+ * Added lastRequest() / last_request() helper [#58]
18
+ * Added jspec.xhr.js in templates by default [#44]
19
+ * Added jspec subcommand hooks; checks for spec/commands/*_command.rb [#38]
20
+ * Added circular reference printing support now shown as { foo: "bar", self: &lt;circular reference&gt; }
21
+ * Added install sub-command with support for jquery, jqueryui, prototype, mootools, dojo, envjs, and rhino
22
+ * Added update support for --freeze / --symlink [#34]
23
+ * Changed; defaulting browsers using system calls [#104]
24
+ * Changed; using json_pure gem instead of json to prevent c extension requirements
25
+ * Changed argumentsToArray() -> toArray() [#62]
26
+ * Changed formatter to reporter [#6]
27
+ * Changed project templates to a newer cleaner format with markdown files, and better structure
28
+ * Changed; Rails is now detected when using `jspec init` --rails is no longer required
29
+ * Changed; Major refactor of the `jspec` executable and all Ruby
30
+ * Changed; Ruby server re-written using Sinatra
31
+ * Removed JSpec.hash()
32
+ * Removed JSpec.paramsFor()
33
+ * Removed profiling [#85]
34
+ * Removed module contexts [#72]
35
+ * Fixed --rhino from exiting using --bind [#111]
36
+ * Fixed sprite spacing when several failure messages are shown [#90]
37
+ * Fixed receive matcher negation issue with the number of times called [#150]
38
+ * Fixed #send_file override; no-cache [#93]
39
+ * Fixed most css issues in IE8 [#71]
40
+ * Fixed "Access is denied" error in IE
41
+ * Fixed __END__
42
+ * Fixed; inverted core specifications (mock_it()) for easier contribution
43
+
44
+ 2.11.13 / 2009-11-22
45
+ --------------------
46
+
47
+ * Fixed dom template root replacement
48
+ * Added Tobias Svensson to contributor list
49
+
50
+ 2.11.12 / 2009-11-12
51
+ --------------------
52
+
53
+ * Changed; DOM formatter displaying several failure messages when present [#89]
54
+ * Changed; displaying multiple error messages for Terminal formatter
55
+ * Updated mock timers to 1.0.2
56
+ * Fixed receive matcher negation issue with the number of times called [#150]
57
+
58
+ 2.11.11 / 2009-10-23
59
+ --------------------
60
+
61
+ * Added cheat sheet install docs
62
+ * Added Google Group link
63
+ * Added sarah to contrib list
64
+ * Changed Terminal formatter's java.lang.System.exit() -> quit()
65
+ * Removed unnecessary flags from several regexps
66
+ * Fixed DOM paths when using --freeze [#88]
67
+ * Fixed __END__
68
+
69
+ 2.11.10 / 2009-10-19
70
+ --------------------
71
+
72
+ * Fixed exit status with Terminal reporter [#77] [thanks darxriggs for reporting]
73
+ This is now fixed when using `jspec run --rhino` as well as `java -jar js.jar spec/spec.rhino.js`.
74
+
75
+ 2.11.9 / 2009-10-16
76
+ -------------------
77
+
78
+ * Fixed puts() with jQuery instance without .selector should output outerHTML, not innerHTML
79
+ * Fixed some specs breaking when using Env.js
80
+ * Fixed Env.js support
81
+
82
+ 2.11.8 / 2009-10-16
83
+ -------------------
84
+
85
+ * Fixed newline support in grammar (supports \r\n, \n, \r)
86
+ * Fixed tabs in grammar [#11]
87
+
88
+ 2.11.7 / 2009-10-15
89
+ -------------------
90
+
91
+ * Fixed minor grammar issues for windows users [thanks Tony]
92
+ * Fixes installation issue when XCode is not present; changed dependency json -> json_pure [thanks esbie]
93
+ * Fixed Chrome#visit; latest builds of Chrome for the mac are now "Google Chrome"
94
+
95
+ 2.11.6 / 2009-10-12
96
+ -------------------
97
+
98
+ * Added Tony to contributor list
99
+ * Removed JSpec.paramsFor()
100
+ * Removed module contexts [#72]
101
+ * Fixed some css styling issues in IE8 [#71]
102
+ * Fixed; DOM formatter supporting \r\n \r \n for EOL in the body source [Thanks Tony]
103
+ * Fixed "Access is denied" error in IE
104
+ * Fixed some css support for older browsers [Thanks Tony]
105
+
106
+ 2.11.5 / 2009-10-10
107
+ -------------------
108
+
109
+ * Fixed dependencies (created by github's gem builder removal)
110
+
111
+ 2.11.4 / 2009-10-10
112
+ -------------------
113
+
114
+ * Updated installation docs
115
+ * Removed namespaced dependencies (thanks alot github...)
116
+
117
+ 2.11.3 / 2009-09-30
118
+ -------------------
119
+
120
+ * Updated to mock timers 1.0.1
121
+ fixes an issue where setTimeout(function(){}, 0); tick(100) is never called
122
+
123
+ 2.11.2 / 2009-09-21
124
+ -------------------
125
+
126
+ * Fixed example path in rails template
127
+
128
+ 2.11.1 / 2009-09-10
129
+ -------------------
130
+
131
+ * Fixed JSpec root when using --symlink, --freeze [#36]
132
+ * Added __END__ to the grammar (works like Ruby's __END__)
133
+
134
+ 2.11.0 / 2009-09-04
135
+ -------------------
136
+
137
+ * Added --symlink switch (links the current version of JSpec to ./spec/lib) [#4]
138
+ * Added --freeze switch (copies the current version of JSpec to ./spec/lib) [#4]
139
+
140
+ 2.10.1 / 2009-09-02
141
+ -------------------
142
+
143
+ * Added `jspec shell` sub command (interactive Rhino shell through JSpec)
144
+ * Added jspec.shell.js
145
+
146
+ 2.10.0 / 2009-08-27
147
+ -------------------
148
+
149
+ * Added Async support via mock timers (lib/jspec.timers.js) [#19]
150
+ * IRC channel up and running! irc://irc.freenode.net#jspec
151
+
152
+ 2.9.1 / 2009-08-21
153
+ ------------------
154
+
155
+ * Added module support for formatters
156
+
157
+ 2.9.0 / 2009-08-21
158
+ ------------------
159
+
160
+ * Server output matching Rhino when using verbose or failuresOnly options
161
+ * Added mock_request() and unmock_request() as aliases for mockRequest() and unmockRequest()
162
+ * Added JSpec.JSON.encode()
163
+ * Added default Sinatra routes /slow/NUMBER and /status/NUMBER for simulating
164
+ slow reponses and HTTP status codes.
165
+ * Added server support for loading spec/jspec.rb (or jspec/jspec.rb for rails)
166
+ Allowing additional browser support to be plugged in, as well as Sinatra routes.
167
+ * Added dependency for Sinatra (new server)
168
+ * Added a new Ruby server
169
+ * Added support for --bind and --server on various platforms
170
+ * Added Google Chrome support
171
+ * Added Internet Explorer support
172
+ * Change; --server without --browsers defaults to all supported browsers
173
+ * Removed JSpec.reportToServer()
174
+ Now utilizes JSpec.formatters.Server to handle this
175
+ functionality.
176
+ * Fixed Server output escaping (removed html escaping from puts()) [#13]
177
+ * Fixed JSpec.load(); returns responseText when 2xx or 0 (for file://)
178
+
179
+ 2.8.4 / 2009-08-02
180
+ ------------------
181
+
182
+ * Fixed error thrown when a module has no utilities
183
+
184
+ 2.8.3 / 2009-07-30
185
+ ------------------
186
+
187
+ * Added JSpec.evalHook()
188
+ * Added JSpec.paramsFor()
189
+ * Refactored jspec.xhr.js
190
+ * Fixed mock xhr HEAD method
191
+ * Fixed node.js print() newline issue
192
+ * Fixed specs preventing spec/spec.node.js from running
193
+
194
+ 2.8.2 / 2009-07-29
195
+ ------------------
196
+
197
+ * Added JSpec.tryLoading()
198
+ * Added JSpec.request used to reference the original XMLHttpRequest; used to fix [#149]
199
+ * Fixed Mock XHR issue messing up JSpec request related utilities such as fixture() [#149]
200
+
201
+ 2.8.1 / 2009-07-27
202
+ ------------------
203
+
204
+ * Added Lawrence Pit as a contributor
205
+ * Fixed object hash equality [#146]
206
+ { a : '1', b : '2' } is now the same as:
207
+ { b : '2', a : '1' }
208
+
209
+ 2.8.0 / 2009-07-27
210
+ ------------------
211
+
212
+ * Give readFile precendence over xhr so that fixtures work with mockRequest when using Rhino
213
+ * Give XMLHttpRequest precedence over microsoft crap
214
+ * Added Mock Ajax Support
215
+ * Added mockRequest(), unmockRequest() utilities
216
+ * Added jspec.xhr.js
217
+ * Fixed be_visible, and be_hidden. Now implement the jQuery <= 1.3.1 method
218
+
219
+ 2.7.2 / 2009-07-24
220
+ ------------------
221
+
222
+ * Fixed "end" in spec bodies when using the grammar
223
+ * Fixed "it" in spec bodies when using the grammar [#142]
224
+ * Changed; HTML entities in descriptions are now escaped for DOM formatter [#141]
225
+ * Added enno84@gmx.net as a contributor (thanks for the bug reports)
226
+
227
+ 2.7.1 / 2009-07-17
228
+ ------------------
229
+
230
+ * Changed; hash() now accepts null
231
+ * Fixed should_receive issue with validating boolean args or return values
232
+ * Fixed --server-only switch
233
+ * Fixed jQuery dependency error message when jQuery is not available
234
+ when using jspec.jquery.js
235
+
236
+ 2.7.0 / 2009-07-14
237
+ ------------------
238
+
239
+ * Added fixture() utility function
240
+ * Templates initialize with example paths to lib
241
+
242
+ 2.6.0 / 2009-07-09
243
+ ------------------
244
+
245
+ * Added Ruby on Rails support
246
+ * Added exporting of JSpec (node.js etc)
247
+ * Added be_undefined matcher [#134]
248
+
249
+ 2.5.1 / 2009-07-07
250
+ ------------------
251
+
252
+ * Added intermediate node.js support
253
+ * Fixed; grammar now allows foo.bar.baz.stub() etc to convert to stub(foo.bar.baz)
254
+
255
+ 2.5.0 / 2009-07-03
256
+ ------------------
257
+
258
+ * Added contrib in README (thanks to anyone who has helped)
259
+ * Added more shared behavior specs
260
+ * Added Module.DSLs support for extending / adding new DSLs (DSL exchange not yet fully implemented)
261
+ * Added spec to make sure methods like end() will not fail due to the grammar
262
+ * Changed; giving hook precedence to suite hooks (before_each, etc) over module hooks (beforeSuite, etc) ; (thanks mpd)
263
+ * Changed; calls to stub() without and_return() now simply stub an arbitrary method with no return value
264
+ * Changed JSpec.include(); now returns JSpec allowing chaining
265
+ * Fixed having "end" in descriptions which would be replaced with '});'
266
+ * Fixed negation of should.receive('foo') matcher
267
+ * Fixed shared behavior assertion count issue
268
+
269
+ 2.4.3 / 2009-07-02
270
+ ------------------
271
+
272
+ * Fixed matcher semicolon matcher issue when using the JSpec grammar
273
+ * Added pass() util; Spec#pass() and Spec#fail() (thanks gisikw)
274
+ * Removing Object.prototype.stubby() after specs are finished to prevent pollution
275
+
276
+ 2.4.2 / 2009-06-30
277
+ ------------------
278
+
279
+ * Fixed trailing comma (thanks Kevin)
280
+
281
+ 2.4.1 / 2009-06-30
282
+ ------------------
283
+
284
+ * Moved beforeSpec and afterSpec hook into proper positions
285
+ allowing for additional assertions within afterSpec.
286
+
287
+ 2.4.0 / 2009-06-30
288
+ ------------------
289
+
290
+ * Added hook() and hookImmutable()
291
+ * Added support for matcher lists ('be enabled disabled selected') == be_enabled, be_disabled etc
292
+ * Added JSpec.include()
293
+ * Added several hooks
294
+ * Added Module support
295
+ * Added grammar conversion of Foo.stub('method') to stub(Foo, 'method')
296
+ * Added grammar conversion of Foo.destub() to destub(Foo)
297
+ * Require bind gem
298
+ * Fixed `jspec` bin docs
299
+
300
+ 2.3.1 / 2009-06-25
301
+ ------------------
302
+
303
+ * Fixed; all stubs generated with stub() are restored
304
+ to their original methods after each 'it' block. See
305
+ README for details.
306
+
307
+ 2.3.0 / 2009-06-25
308
+ ------------------
309
+
310
+ * Added stub()
311
+ * Added destub()
312
+ * Changed; Server responses utilize Rack::Mime now for arbitrary requests
313
+
314
+ 2.2.1 / 2009-06-22
315
+ ------------------
316
+
317
+ * Changed; reportToServer() now accepts url arg
318
+
319
+ * Fixed be_empty matcher; now considers {} empty, however { foo : bar } is not
320
+ * Fixed throw_error error messages for Opera
321
+ * Fixed throw_error in Rhino (Opera is broken now)
322
+ * Fixed stray console.log() call
323
+
324
+ * Fixed some tab issues.
325
+ When using the JSpec grammar option you should
326
+ use the 'soft tabs' feature of your IDE or text editor.
327
+ A patch for tabs is pending and should be available soon,
328
+ however be aware that a 'parse error' may occur otherwise.
329
+
330
+ 2.2.0 / 2009-06-18
331
+ ------------------
332
+
333
+ * Added link to JSpec in JSMag June 2009
334
+ * Added Github gem source location to docs
335
+ * Changed throw_error matcher; now accepts two arguments
336
+ * Changed --server; serves from current working directory.
337
+ This allows files in ../lib/ * to be served rather than ./spec/ * only.
338
+ * Refactored argumentsToArray()
339
+
340
+ 2.1.0 / 2009-06-12
341
+ ------------------
342
+
343
+ * Changed `jspec init` to utilize a single template
344
+ which allows for all three suite running capabilities
345
+ within a single template. Now after initializing a
346
+ project you may `jspec run --server`, `jspec run --rhino`
347
+ etc at any time without modifications.
348
+
349
+ 2.0.3 / 2009-05-15
350
+ ------------------
351
+
352
+ * Table should span full width
353
+ (Very week release I know, but improperly styled things bug me :) )
354
+
355
+ 2.0.2 / 2009-05-11
356
+ ------------------
357
+
358
+ * Added rails integration link http://github.com/bhauman/jspec-rails
359
+ * Changed; puts() now displays constructor name when available
360
+ * Fixed Terminal output which was not displaying due to a recent commit
361
+ * fixed IE bug : DOM elements don't have valueOf() method
362
+
363
+ 2.0.1 / 2009-05-01
364
+ ------------------
365
+
366
+ * Added better failure messages for throw_error matcher
367
+ * Renamed print() to puts() [#108]
368
+
369
+ 2.0.0 / 2009-04-27
370
+ ------------------
371
+
372
+ * Added DOM loading indicator [#105]
373
+ * Added wait() helper for additional async support
374
+ * Added shared behavior support using should_behave_like('Another Suite')
375
+ * Added CSS body toggling [#1]
376
+ * Added receive matcher for Proxy Assertins
377
+ * Added grammar-less support
378
+ * Added an_instance_of() helper
379
+ * Removed .this literal
380
+ * Removed deprecated be_a_TYPE_input matchers
381
+
382
+ * Added ProxyAssertion
383
+ * Added select() util
384
+ * Added does() util for report-less assertions
385
+ * Added find() util
386
+ * Added JSpec.contentsOf()
387
+ * Added matchers to body evaluation [#90]
388
+
389
+ 1.1.7 / 2009-04-22
390
+ ------------------
391
+
392
+ * Removed trailing commas causing issues with IE (what a suprise ;) )
393
+
394
+ 1.1.6 / 2009-04-22
395
+ ------------------
396
+
397
+ * Fixed typo in requires()
398
+ * Added expect()
399
+
400
+ 1.1.5 / 2009-04-17
401
+ ------------------
402
+
403
+ * Strengthened specs for cascading hooks
404
+ * Fixed cascading hooks
405
+
406
+ 1.1.4 / 2009-04-17
407
+ ------------------
408
+
409
+ * Added rhino and server template files
410
+ * Added JSpec.hasXhr()
411
+ * Added JSpec.xhr()
412
+ * Added Ruby javascript testing server
413
+ * Added support for options passed to run()
414
+ * Added failuresOnly for Terminal formatter
415
+ * Added terminal assertion graphs
416
+ * Addec color() utility
417
+ * Added main.puts() since we use print() as a utility
418
+ * Added rhino support
419
+ * Added fail() utility function
420
+ * Added JSpec.Assertion
421
+ * Added normalizeMatcherMessage()
422
+ * Added normalizeMatcherBody()
423
+ * Added have_classes [#19]
424
+ * Added extend() utility
425
+ * Added be_an_instance_of matcher
426
+ * Added constructor checking support for throw_error matcher [#72]
427
+ * Added file support for exception messages, making them much easier to debug
428
+ * Added catching of exceptions throw within specs [#46]
429
+ * Changed; executable aborts when template does not exist
430
+ * Changed; matchers now normalized upon creation, accepts function, hash, or string.
431
+ * Changed be() matcher to be strict [#57]
432
+ * Changed error() to conditionally show line number when available
433
+ * Renamed Jspec.addSuite to JSpec.describe and Suite#addSpec to Suite#it
434
+ * Refactored be_a_TYPE_input matchers so that the deprication warning is logged only when calling the method
435
+ * Fixed JSpec.requires() now works with latest version of JSpec.error()
436
+ * Fixed error() now displays exceptions throw that do not respond to .message
437
+ * Fixed commenting bug [#37]
438
+ * Removed JSpec.main, now just using local main
439
+
440
+ 1.1.3 / 2009-04-14
441
+ ------------------
442
+
443
+ * Removed /test used for the executable, causing gem to fail building
444
+
445
+ 1.1.2 / 2009-04-14
446
+ ------------------
447
+
448
+ * Added `jspec update` sub-command [#63]
449
+
450
+ 1.1.1 / 2009-04-12
451
+ ------------------
452
+
453
+ * Added gemspec
454
+
455
+ 1.1.0 / 2009-04-12
456
+ ------------------
457
+
458
+ * jspec executable fully functional
459
+
460
+ 1.0.4 / 2009-04-09
461
+ ------------------
462
+
463
+ * Added `jspec bind`
464
+ * Added `jspec run`
465
+ * Added `jspec init`
466
+ * Added `jspec` executable
467
+ * Added gemspec and manifest
468
+ * Added command-line usage docs
469
+ * Added custom matchers documentation
470
+ * Removed double negation
471
+
472
+ 1.0.3 / 2009-04-08
473
+ ------------------
474
+
475
+ * Added have_prop matcher, have_property is now strict [#56]
476
+
477
+ 1.0.2 / 2009-04-08
478
+ ------------------
479
+
480
+ * Added be_selected, be_checked matchers
481
+ * Added string support to each() each('some foo bar', ...)
482
+ * Added have_ATTR matchers [#51]
483
+ * Deprected be_a_TYPE_input matchers [#50]
484
+
485
+ 1.0.1 / 2009-04-07
486
+ ------------------
487
+
488
+ * Added have_property matcher [#53]
489
+
490
+ 1.0.0 / 2009-04-06
491
+ ------------------
492
+
493
+ * Added option() which gives the query string option precedence [#39]
494
+ * Changed; Using JSpec.options.formatter not JSpec.formatter [#44]
495
+ * Fixed Console formatter, now displays nested suites
496
+ * Check out http://visionmedia.github.com/jspec for additional documentation!
497
+
498
+ 0.9.6 / 2009-04-03
499
+ ------------------
500
+
501
+ * Added nesting support
502
+ * Added printing of nested specs
503
+ * Added assertion graphs to DOM formatter
504
+ * Refactored preprocess()
505
+ * Refactored most of the specs
506
+ * Renamed preProcess() to preprocess()
507
+ * Removed running of a single suite via ?suite= for now
508
+
509
+ 0.9.5 / 2009-04-02
510
+ ------------------
511
+
512
+ * Added support for printing of function bodies and regexps [#27]
513
+ * Added support for strings / regexp with should_throw_error [#26]
514
+ * Added have_within matcher
515
+ * Added have_at_most matcher
516
+ * Added have_at_least matcher
517
+ * Added have matcher [#24]
518
+
519
+ 0.9.4 / 2009-04-02
520
+ ------------------
521
+
522
+ * Added be_a_TYPE_input matchers (be_a_checkbox_input, be_a_text_input, etc)
523
+ * Added be_disabled matcher [#21]
524
+ * Added be_enabled matcher [#20]
525
+ * Refactored be_visible and be_hidden with $(elem).is()
526
+
527
+ 0.9.2 / 2009-04-02
528
+ ------------------
529
+
530
+ * Added support for multi-arg failure messages [#2]
531
+ * Better printing of jQuery objects [#15]
532
+
533
+ 0.9.1 / 2009-04-02
534
+ ------------------
535
+
536
+ * Added support for dotted negation of assertions (foo.should.not.equal bar)
537
+ * Added support for dot-style assertions [#17] (foo.should_not.equal bar)
538
+
539
+ 0.9.0 / 2009-04-01
540
+ ------------------
541
+
542
+ * Added spec for strip()
543
+ * Added strip()
544
+ * Added any() util
545
+ * Added new improved include matcher
546
+ * Added have_many and have_one matchers
547
+ * Added have_attr matcher [#14]
548
+ * Added map() util
549
+ * Added inject() util
550
+ * Added escape() util
551
+ * Added recursive array and object printing
552
+ * Added DOM formatter option failuresOnly
553
+ * Added support for running of a single squite via ?suite=...
554
+ * Added query() util
555
+ * Added last() util
556
+ * Added be_within matcher, accepts a range literal
557
+ * Added inclusive range literal n..n
558
+ * Added row hover
559
+ * Refactored range()
560
+ * Refactored setMessage()
561
+ * Refactored hash()
562
+ * Changed; preprocessor passing array of args (multi-arg matcher support)
563
+ * Changed jQuery to $ for internal usage
564
+
565
+ 0.8.0 / 2009-02-27
566
+ ------------------
567
+
568
+ * Added a new style for the DOM formatter (not finished yet)
569
+
570
+ 0.7.0 / 2009-02-27
571
+ ------------------
572
+
573
+ * Added Console formatter (anything implementing the console object. Firebug, Safari 4, etc)
574
+ * Added JSpec.options.profile for optional profiling of specs
575
+ * Added this. literal alternative (view readme)
576
+ * Moved formatters into JSpec.formatters
577
+ * Added error() util
578
+ * Added savings raketask
579
+ * Fixed parse error bug in Safari 4
580
+
581
+ 0.6.3 / 2009-02-26
582
+ ------------------
583
+
584
+ * Added minification for jspec.jquery.js when packaging before release
585
+ * Added compression of css when packaging before release
586
+
587
+ 0.6.2 / 2009-02-26
588
+ ------------------
589
+
590
+ * Changed; using $ in jspec.jquery.js for JSpec, take that jQuery ;)
591
+ * Added addMatchers, print, hash, and each as 'utility functions' this allows
592
+ JSpec to do each(...) internally instead of JSpec.each(...), while still preventing
593
+ pollution of the global scope.
594
+
595
+ 0.6.1 / 2009-02-26
596
+ ------------------
597
+
598
+ * Added closrue literal -{ (view README)
599
+ * Added option to DOM formatter, now allows you to specify which element id to output to
600
+
601
+ 0.6.0 / 2009-02-24
602
+ ------------------
603
+
604
+ * Added JSpec.hash
605
+ * Added be_null matcher
606
+ * Allow recursive composite matching using should_eql and should_not_eql
607
+ For example [1, 2, [3]].should_eql([1, 2, [3]]) is true, works with object
608
+ 'hashes' as well.
609
+
610
+ 0.5.1 / 2009-02-24
611
+ ------------------
612
+
613
+ * Damn auto-release messed up
614
+
615
+ 0.5.0 / 2009-02-24
616
+ ------------------
617
+
618
+ * Added async support for jQuery
619
+ * Added JSpec.requires for dependencies
620
+ * Added JSpec.throw
621
+ * Added JSpec.runSpec
622
+ * Refactored jspec.jquery.js
623
+ * Fixed evalBody exceptions, previously was not showing exception message
624
+ * Fixed bug of JSpec interpreting // in a string such as http:// to be a comment.
625
+
626
+ 0.4.1 / 2009-02-22
627
+ ------------------
628
+
629
+ * Added elements() alias of element()
630
+ * Added support for string passed to runSuite; runSuite('Matchers') is the same as
631
+ runSuite(JSpec.suites['Matchers']).
632
+ * Fixed some documentation
633
+
634
+ 0.4.0 / 2009-02-20
635
+ ------------------
636
+
637
+ * Added comment literal (//)
638
+ * Added pre-processor for convering matchers.
639
+ For example 'test'.should_be_true becomes JSpec.match('test', 'should_be', 'true'),
640
+ preventing pollution of core prototypes.
641
+
642
+ 0.3.2 / 2009-02-19
643
+ ------------------
644
+
645
+ * Added TM bundle (go checkout my jspec.tmbundle repo on github)
646
+ * Renamed have_length_of to have_length
647
+
648
+ 0.3.1 / 2009-02-19
649
+ ------------------
650
+
651
+ * Added jquery js to package
652
+
653
+ 0.3.0 / 2009-02-19
654
+ ------------------
655
+
656
+ * Added JSpec.match
657
+ * Added options to report() which are passed to formatter
658
+ * Added sandbox helpers (reg / jquery)
659
+ * Added have_child and have_children
660
+ * Added have_tag and have_tags
661
+ * Changed exec to only load / eval file
662
+ * Fixed parser token issue, was previously matching things like end() as literal end
663
+
664
+ 0.2.3 / 2009-02-18
665
+ ------------------
666
+
667
+ * Changed test dir to spec
668
+ * Changed test.js to core.spec.js
669
+
670
+ 0.2.2 / 2009-02-18
671
+ ------------------
672
+
673
+ * Added contexts
674
+
675
+ 0.2.0 / 2009-02-18
676
+ ------------------
677
+
678
+ * Added release rake task
679
+ * Added package with minified alternative
680
+
681
+ 0.1.0 / 2009-02-18
682
+ ------------------
683
+
684
+ * Added new sexy syntax (warning: you will have to re-write your specs)
685
+ * Added pre-processor for optional matcher parens
686
+ * Added several new matchers
687
+ * Added matcher aliasing
688
+ * Added simple matcher declarations
689
+ * Added __END__
690
+ * Added yet-to-be-implemented specs
691
+ * Added loading of suites via JSpec.load
692
+
693
+ 0.0.4 / 2008-11-03
694
+ ------------------
695
+
696
+ * Added ability to pass only a description to it(), meaning not yet implemented
697
+
698
+ 0.0.3 / 2008-10-28
699
+ ------------------
700
+
701
+ * Added should_fail
702
+ * Added should_match
703
+ * Added should_not_match
704
+ * Added should_be and should_not_be
705
+
706
+ 0.0.2 / 2008-10-28
707
+ ------------------
708
+
709
+ * Fixed typo in documentation for pointing to the master repo
710
+
711
+ 0.0.1 / 2008-10-28
712
+ ------------------
713
+
714
+ * Initial release