Skip to content

Latest commit

 

History

History
840 lines (630 loc) · 25 KB

History.md

File metadata and controls

840 lines (630 loc) · 25 KB

4.3.3 / 2010-07-13

  • Fixed destubing stub overrides
  • Fixed jQuery have_event_handlers to match "live" events
  • Installables updated: MooTools to 1.2.4, Dojo to 1.4.0, jQuery to 1.4.0.
  • Call rhino with "-opt -1" to avoid silent failure

4.3.2 / 2010-05-30

  • Fixed nodejs support due to recent Buffer changes

4.3.1 / 2010-05-04

  • Fixed; proper handling of undefind values for have_prop[erty]

4.3.0 / 2010-05-04

  • Added chromium to supported browsers
  • Fixed rhino support by using java command
  • Fixed MockXMLHttpRequest#getAllResponseHeaders() matches spec returning a string

4.2.1 / 2010-04-15

  • Fixed; strict type checks for have_prop[erty]
  • Removed some globals

4.2.0 / 2010-04-07

  • Merge branch 'master' of git://github.com/vipulb/jspec into xml
  • Added support for mock requests to parse xml
  • Added have_event_handlers matcher
  • Adding be_animated matcher
  • Add option "disableColors" to disable coloring in terminal reporter

4.1.0 / 2010-03-25

  • Added jspec.nodejs.js - have_prototype matcher
  • Added jspec.nodejs.js - have_keys matcher
  • Added jspec.nodejs.js - have_configurable_property matcher
  • Added jspec.nodejs.js - have_writable_property matcher
  • Added jspec.nodejs.js
  • Remove unused error() method

4.0.0 / 2010-03-22

  • Added json_fixture(). Closes #157

  • Added swalke16 to contrib list (shared behavior fixes)

  • Added shared_behaviors_for() for shared behavior support. This is essentially a Suite instance, however the shared behavior itself is no longer executed, only suites which use should_behave_like().

  • Added before_nested / after_nested for legacy support. These hooks function just as before / after did < 4.0.0, where they will execute once per nested suite as well.

  • Changed; before / after are now executed ONLY once, not when a nested suite is running. Use before_nested / after_nested if you wish to re-gain this functionality.

  • Removed JSpec.error()

3.3.3 / 2010-03-15

  • Added nodejs template. use --node

3.3.2 / 2010-02-25

  • Fixed; output bug with shared behaviors

3.3.1 / 2010-02-22

  • Added have_any matcher
  • Fixed; using readFileSync for node.js support

3.3.0 / 2010-02-16

  • Added support for Chrome on Linux [alex-bepple]
  • Added node.js support in core, no longer has node-specific code in template
  • Fixed linux Default browser support, use 'xdg-open' [alex-bepple]
  • Fixed lastRequest global
  • Removed Console reporter. Closes #142

3.2.1 / 2010-02-02

  • Fixed JRuby compatibility; Look up host in a JRuby-compatible way.

3.2.0 / 2010-01-27

  • Added support for running specs in WebKit nightlies.
  • Fixed bug in dom.html templates that was incorrectly passing options to report() rather than run().

3.1.3 / 2010-01-14

  • Fixed node.js template which was missing fixturePath option. Closes #131
  • Fixed some stray globals

3.1.2 / 2010-01-14

  • Changed dependency; commander 4.0.1 for JRuby support
  • Fixed rails init issue with node.js. Closes #135
  • Fixed bin specs

3.1.1 / 2010-01-14

  • Fixed include matcher substring matching regexp issue. Closes #132

3.1.0 / 2010-01-05

  • Added --node (works just like --rhino)
  • Added Node.js support [#114]
  • Fixed markdown < > chars in Readme.md

3.0.0 / 2010-01-04

  • Added JSpec.equal() replacing hash()
  • Added Rhino's .jar to JSpec so that users do not need to install it
  • Added specs for receive matcher negation with times [#150]
  • Added fixturePath option to let JSpec know where your fixtures live
  • Added jspec stats
  • Added lastRequest() / last_request() helper [#58]
  • Added jspec.xhr.js in templates by default [#44]
  • Added jspec subcommand hooks; checks for spec/commands/*_command.rb [#38]
  • Added circular reference printing support now shown as { foo: "bar", self: <circular reference> }
  • Added install sub-command with support for jquery, jqueryui, prototype, mootools, dojo, envjs, and rhino
  • Added update support for --freeze / --symlink [#34]
  • Changed; defaulting browsers using system calls [#104]
  • Changed; using json_pure gem instead of json to prevent c extension requirements
  • Changed argumentsToArray() -> toArray() [#62]
  • Changed formatter to reporter [#6]
  • Changed project templates to a newer cleaner format with markdown files, and better structure
  • Changed; Rails is now detected when using jspec init --rails is no longer required
  • Changed; Major refactor of the jspec executable and all Ruby
  • Changed; Ruby server re-written using Sinatra
  • Removed JSpec.hash()
  • Removed JSpec.paramsFor()
  • Removed profiling [#85]
  • Removed module contexts [#72]
  • Fixed --rhino from exiting using --bind [#111]
  • Fixed sprite spacing when several failure messages are shown [#90]
  • Fixed receive matcher negation issue with the number of times called [#150]
  • Fixed #send_file override; no-cache [#93]
  • Fixed most css issues in IE8 [#71]
  • Fixed "Access is denied" error in IE
  • Fixed END
  • Fixed; inverted core specifications (mock_it()) for easier contribution

2.11.13 / 2009-11-22

  • Fixed dom template root replacement
  • Added Tobias Svensson to contributor list

2.11.12 / 2009-11-12

  • Changed; DOM formatter displaying several failure messages when present [#89]
  • Changed; displaying multiple error messages for Terminal formatter
  • Updated mock timers to 1.0.2
  • Fixed receive matcher negation issue with the number of times called [#150]

2.11.11 / 2009-10-23

  • Added cheat sheet install docs
  • Added Google Group link
  • Added sarah to contrib list
  • Changed Terminal formatter's java.lang.System.exit() -> quit()
  • Removed unnecessary flags from several regexps
  • Fixed DOM paths when using --freeze [#88]
  • Fixed END

2.11.10 / 2009-10-19

  • Fixed exit status with Terminal reporter [#77] [thanks darxriggs for reporting] This is now fixed when using jspec run --rhino as well as java -jar js.jar spec/spec.rhino.js.

2.11.9 / 2009-10-16

  • Fixed puts() with jQuery instance without .selector should output outerHTML, not innerHTML
  • Fixed some specs breaking when using Env.js
  • Fixed Env.js support

2.11.8 / 2009-10-16

  • Fixed newline support in grammar (supports \r\n, \n, \r)
  • Fixed tabs in grammar [#11]

2.11.7 / 2009-10-15

  • Fixed minor grammar issues for windows users [thanks Tony]
  • Fixes installation issue when XCode is not present; changed dependency json -> json_pure [thanks esbie]
  • Fixed Chrome#visit; latest builds of Chrome for the mac are now "Google Chrome"

2.11.6 / 2009-10-12

  • Added Tony to contributor list
  • Removed JSpec.paramsFor()
  • Removed module contexts [#72]
  • Fixed some css styling issues in IE8 [#71]
  • Fixed; DOM formatter supporting \r\n \r \n for EOL in the body source [Thanks Tony]
  • Fixed "Access is denied" error in IE
  • Fixed some css support for older browsers [Thanks Tony]

2.11.5 / 2009-10-10

  • Fixed dependencies (created by github's gem builder removal)

2.11.4 / 2009-10-10

  • Updated installation docs
  • Removed namespaced dependencies (thanks alot github...)

2.11.3 / 2009-09-30

  • Updated to mock timers 1.0.1 fixes an issue where setTimeout(function(){}, 0); tick(100) is never called

2.11.2 / 2009-09-21

  • Fixed example path in rails template

2.11.1 / 2009-09-10

  • Fixed JSpec root when using --symlink, --freeze [#36]
  • Added END to the grammar (works like Ruby's END)

2.11.0 / 2009-09-04

  • Added --symlink switch (links the current version of JSpec to ./spec/lib) [#4]
  • Added --freeze switch (copies the current version of JSpec to ./spec/lib) [#4]

2.10.1 / 2009-09-02

  • Added jspec shell sub command (interactive Rhino shell through JSpec)
  • Added jspec.shell.js

2.10.0 / 2009-08-27

  • Added Async support via mock timers (lib/jspec.timers.js) [#19]
  • IRC channel up and running! irc://irc.freenode.net#jspec

2.9.1 / 2009-08-21

  • Added module support for formatters

2.9.0 / 2009-08-21

  • Server output matching Rhino when using verbose or failuresOnly options
  • Added mock_request() and unmock_request() as aliases for mockRequest() and unmockRequest()
  • Added JSpec.JSON.encode()
  • Added default Sinatra routes /slow/NUMBER and /status/NUMBER for simulating slow reponses and HTTP status codes.
  • Added server support for loading spec/jspec.rb (or jspec/jspec.rb for rails) Allowing additional browser support to be plugged in, as well as Sinatra routes.
  • Added dependency for Sinatra (new server)
  • Added a new Ruby server
  • Added support for --bind and --server on various platforms
  • Added Google Chrome support
  • Added Internet Explorer support
  • Change; --server without --browsers defaults to all supported browsers
  • Removed JSpec.reportToServer() Now utilizes JSpec.formatters.Server to handle this functionality.
  • Fixed Server output escaping (removed html escaping from puts()) [#13]
  • Fixed JSpec.load(); returns responseText when 2xx or 0 (for file://)

2.8.4 / 2009-08-02

  • Fixed error thrown when a module has no utilities

2.8.3 / 2009-07-30

  • Added JSpec.evalHook()
  • Added JSpec.paramsFor()
  • Refactored jspec.xhr.js
  • Fixed mock xhr HEAD method
  • Fixed node.js print() newline issue
  • Fixed specs preventing spec/spec.node.js from running

2.8.2 / 2009-07-29

  • Added JSpec.tryLoading()
  • Added JSpec.request used to reference the original XMLHttpRequest; used to fix [#149]
  • Fixed Mock XHR issue messing up JSpec request related utilities such as fixture() [#149]

2.8.1 / 2009-07-27

  • Added Lawrence Pit as a contributor
  • Fixed object hash equality [#146] { a : '1', b : '2' } is now the same as: { b : '2', a : '1' }

2.8.0 / 2009-07-27

  • Give readFile precendence over xhr so that fixtures work with mockRequest when using Rhino
  • Give XMLHttpRequest precedence over microsoft crap
  • Added Mock Ajax Support
  • Added mockRequest(), unmockRequest() utilities
  • Added jspec.xhr.js
  • Fixed be_visible, and be_hidden. Now implement the jQuery <= 1.3.1 method

2.7.2 / 2009-07-24

  • Fixed "end" in spec bodies when using the grammar
  • Fixed "it" in spec bodies when using the grammar [#142]
  • Changed; HTML entities in descriptions are now escaped for DOM formatter [#141]
  • Added [email protected] as a contributor (thanks for the bug reports)

2.7.1 / 2009-07-17

  • Changed; hash() now accepts null
  • Fixed should_receive issue with validating boolean args or return values
  • Fixed --server-only switch
  • Fixed jQuery dependency error message when jQuery is not available when using jspec.jquery.js

2.7.0 / 2009-07-14

  • Added fixture() utility function
  • Templates initialize with example paths to lib

2.6.0 / 2009-07-09

  • Added Ruby on Rails support
  • Added exporting of JSpec (node.js etc)
  • Added be_undefined matcher [#134]

2.5.1 / 2009-07-07

  • Added intermediate node.js support
  • Fixed; grammar now allows foo.bar.baz.stub() etc to convert to stub(foo.bar.baz)

2.5.0 / 2009-07-03

  • Added contrib in README (thanks to anyone who has helped)
  • Added more shared behavior specs
  • Added Module.DSLs support for extending / adding new DSLs (DSL exchange not yet fully implemented)
  • Added spec to make sure methods like end() will not fail due to the grammar
  • Changed; giving hook precedence to suite hooks (before_each, etc) over module hooks (beforeSuite, etc) ; (thanks mpd)
  • Changed; calls to stub() without and_return() now simply stub an arbitrary method with no return value
  • Changed JSpec.include(); now returns JSpec allowing chaining
  • Fixed having "end" in descriptions which would be replaced with '});'
  • Fixed negation of should.receive('foo') matcher
  • Fixed shared behavior assertion count issue

2.4.3 / 2009-07-02

  • Fixed matcher semicolon matcher issue when using the JSpec grammar
  • Added pass() util; Spec#pass() and Spec#fail() (thanks gisikw)
  • Removing Object.prototype.stubby() after specs are finished to prevent pollution

2.4.2 / 2009-06-30

  • Fixed trailing comma (thanks Kevin)

2.4.1 / 2009-06-30

  • Moved beforeSpec and afterSpec hook into proper positions allowing for additional assertions within afterSpec.

2.4.0 / 2009-06-30

  • Added hook() and hookImmutable()
  • Added support for matcher lists ('be enabled disabled selected') == be_enabled, be_disabled etc
  • Added JSpec.include()
  • Added several hooks
  • Added Module support
  • Added grammar conversion of Foo.stub('method') to stub(Foo, 'method')
  • Added grammar conversion of Foo.destub() to destub(Foo)
  • Require bind gem
  • Fixed jspec bin docs

2.3.1 / 2009-06-25

  • Fixed; all stubs generated with stub() are restored to their original methods after each 'it' block. See README for details.

2.3.0 / 2009-06-25

  • Added stub()
  • Added destub()
  • Changed; Server responses utilize Rack::Mime now for arbitrary requests

2.2.1 / 2009-06-22

  • Changed; reportToServer() now accepts url arg

  • Fixed be_empty matcher; now considers {} empty, however { foo : bar } is not

  • Fixed throw_error error messages for Opera

  • Fixed throw_error in Rhino (Opera is broken now)

  • Fixed stray console.log() call

  • Fixed some tab issues. When using the JSpec grammar option you should use the 'soft tabs' feature of your IDE or text editor. A patch for tabs is pending and should be available soon, however be aware that a 'parse error' may occur otherwise.

2.2.0 / 2009-06-18

  • Added link to JSpec in JSMag June 2009
  • Added Github gem source location to docs
  • Changed throw_error matcher; now accepts two arguments
  • Changed --server; serves from current working directory. This allows files in ../lib/ * to be served rather than ./spec/ * only.
  • Refactored argumentsToArray()

2.1.0 / 2009-06-12

  • Changed jspec init to utilize a single template which allows for all three suite running capabilities within a single template. Now after initializing a project you may jspec run --server, jspec run --rhino etc at any time without modifications.

2.0.3 / 2009-05-15

  • Table should span full width (Very week release I know, but improperly styled things bug me :) )

2.0.2 / 2009-05-11

  • Added rails integration link http://github.com/bhauman/jspec-rails
  • Changed; puts() now displays constructor name when available
  • Fixed Terminal output which was not displaying due to a recent commit
  • fixed IE bug : DOM elements don't have valueOf() method

2.0.1 / 2009-05-01

  • Added better failure messages for throw_error matcher
  • Renamed print() to puts() [#108]

2.0.0 / 2009-04-27

  • Added DOM loading indicator [#105]

  • Added wait() helper for additional async support

  • Added shared behavior support using should_behave_like('Another Suite')

  • Added CSS body toggling [#1]

  • Added receive matcher for Proxy Assertins

  • Added grammar-less support

  • Added an_instance_of() helper

  • Removed .this literal

  • Removed deprecated be_a_TYPE_input matchers

  • Added ProxyAssertion

  • Added select() util

  • Added does() util for report-less assertions

  • Added find() util

  • Added JSpec.contentsOf()

  • Added matchers to body evaluation [#90]

1.1.7 / 2009-04-22

  • Removed trailing commas causing issues with IE (what a suprise ;) )

1.1.6 / 2009-04-22

  • Fixed typo in requires()
  • Added expect()

1.1.5 / 2009-04-17

  • Strengthened specs for cascading hooks
  • Fixed cascading hooks

1.1.4 / 2009-04-17

  • Added rhino and server template files
  • Added JSpec.hasXhr()
  • Added JSpec.xhr()
  • Added Ruby javascript testing server
  • Added support for options passed to run()
  • Added failuresOnly for Terminal formatter
  • Added terminal assertion graphs
  • Addec color() utility
  • Added main.puts() since we use print() as a utility
  • Added rhino support
  • Added fail() utility function
  • Added JSpec.Assertion
  • Added normalizeMatcherMessage()
  • Added normalizeMatcherBody()
  • Added have_classes [#19]
  • Added extend() utility
  • Added be_an_instance_of matcher
  • Added constructor checking support for throw_error matcher [#72]
  • Added file support for exception messages, making them much easier to debug
  • Added catching of exceptions throw within specs [#46]
  • Changed; executable aborts when template does not exist
  • Changed; matchers now normalized upon creation, accepts function, hash, or string.
  • Changed be() matcher to be strict [#57]
  • Changed error() to conditionally show line number when available
  • Renamed Jspec.addSuite to JSpec.describe and Suite#addSpec to Suite#it
  • Refactored be_a_TYPE_input matchers so that the deprication warning is logged only when calling the method
  • Fixed JSpec.requires() now works with latest version of JSpec.error()
  • Fixed error() now displays exceptions throw that do not respond to .message
  • Fixed commenting bug [#37]
  • Removed JSpec.main, now just using local main

1.1.3 / 2009-04-14

  • Removed /test used for the executable, causing gem to fail building

1.1.2 / 2009-04-14

  • Added jspec update sub-command [#63]

1.1.1 / 2009-04-12

  • Added gemspec

1.1.0 / 2009-04-12

  • jspec executable fully functional

1.0.4 / 2009-04-09

  • Added jspec bind
  • Added jspec run
  • Added jspec init
  • Added jspec executable
  • Added gemspec and manifest
  • Added command-line usage docs
  • Added custom matchers documentation
  • Removed double negation

1.0.3 / 2009-04-08

  • Added have_prop matcher, have_property is now strict [#56]

1.0.2 / 2009-04-08

  • Added be_selected, be_checked matchers
  • Added string support to each() each('some foo bar', ...)
  • Added have_ATTR matchers [#51]
  • Deprected be_a_TYPE_input matchers [#50]

1.0.1 / 2009-04-07

  • Added have_property matcher [#53]

1.0.0 / 2009-04-06

  • Added option() which gives the query string option precedence [#39]
  • Changed; Using JSpec.options.formatter not JSpec.formatter [#44]
  • Fixed Console formatter, now displays nested suites
  • Check out http://visionmedia.github.com/jspec for additional documentation!

0.9.6 / 2009-04-03

  • Added nesting support
  • Added printing of nested specs
  • Added assertion graphs to DOM formatter
  • Refactored preprocess()
  • Refactored most of the specs
  • Renamed preProcess() to preprocess()
  • Removed running of a single suite via ?suite= for now

0.9.5 / 2009-04-02

  • Added support for printing of function bodies and regexps [#27]
  • Added support for strings / regexp with should_throw_error [#26]
  • Added have_within matcher
  • Added have_at_most matcher
  • Added have_at_least matcher
  • Added have matcher [#24]

0.9.4 / 2009-04-02

  • Added be_a_TYPE_input matchers (be_a_checkbox_input, be_a_text_input, etc)
  • Added be_disabled matcher [#21]
  • Added be_enabled matcher [#20]
  • Refactored be_visible and be_hidden with $(elem).is()

0.9.2 / 2009-04-02

  • Added support for multi-arg failure messages [#2]
  • Better printing of jQuery objects [#15]

0.9.1 / 2009-04-02

  • Added support for dotted negation of assertions (foo.should.not.equal bar)
  • Added support for dot-style assertions [#17] (foo.should_not.equal bar)

0.9.0 / 2009-04-01

  • Added spec for strip()
  • Added strip()
  • Added any() util
  • Added new improved include matcher
  • Added have_many and have_one matchers
  • Added have_attr matcher [#14]
  • Added map() util
  • Added inject() util
  • Added escape() util
  • Added recursive array and object printing
  • Added DOM formatter option failuresOnly
  • Added support for running of a single squite via ?suite=...
  • Added query() util
  • Added last() util
  • Added be_within matcher, accepts a range literal
  • Added inclusive range literal n..n
  • Added row hover
  • Refactored range()
  • Refactored setMessage()
  • Refactored hash()
  • Changed; preprocessor passing array of args (multi-arg matcher support)
  • Changed jQuery to $ for internal usage

0.8.0 / 2009-02-27

  • Added a new style for the DOM formatter (not finished yet)

0.7.0 / 2009-02-27

  • Added Console formatter (anything implementing the console object. Firebug, Safari 4, etc)
  • Added JSpec.options.profile for optional profiling of specs
  • Added this. literal alternative (view readme)
  • Moved formatters into JSpec.formatters
  • Added error() util
  • Added savings raketask
  • Fixed parse error bug in Safari 4

0.6.3 / 2009-02-26

  • Added minification for jspec.jquery.js when packaging before release
  • Added compression of css when packaging before release

0.6.2 / 2009-02-26

  • Changed; using $ in jspec.jquery.js for JSpec, take that jQuery ;)
  • Added addMatchers, print, hash, and each as 'utility functions' this allows JSpec to do each(...) internally instead of JSpec.each(...), while still preventing pollution of the global scope.

0.6.1 / 2009-02-26

  • Added closrue literal -{ (view README)
  • Added option to DOM formatter, now allows you to specify which element id to output to

0.6.0 / 2009-02-24

  • Added JSpec.hash
  • Added be_null matcher
  • Allow recursive composite matching using should_eql and should_not_eql For example [1, 2, [3]].should_eql([1, 2, [3]]) is true, works with object 'hashes' as well.

0.5.1 / 2009-02-24

  • Damn auto-release messed up

0.5.0 / 2009-02-24

  • Added async support for jQuery
  • Added JSpec.requires for dependencies
  • Added JSpec.throw
  • Added JSpec.runSpec
  • Refactored jspec.jquery.js
  • Fixed evalBody exceptions, previously was not showing exception message
  • Fixed bug of JSpec interpreting // in a string such as http:// to be a comment.

0.4.1 / 2009-02-22

  • Added elements() alias of element()
  • Added support for string passed to runSuite; runSuite('Matchers') is the same as runSuite(JSpec.suites['Matchers']).
  • Fixed some documentation

0.4.0 / 2009-02-20

  • Added comment literal (//)
  • Added pre-processor for convering matchers. For example 'test'.should_be_true becomes JSpec.match('test', 'should_be', 'true'), preventing pollution of core prototypes.

0.3.2 / 2009-02-19

  • Added TM bundle (go checkout my jspec.tmbundle repo on github)
  • Renamed have_length_of to have_length

0.3.1 / 2009-02-19

  • Added jquery js to package

0.3.0 / 2009-02-19

  • Added JSpec.match
  • Added options to report() which are passed to formatter
  • Added sandbox helpers (reg / jquery)
  • Added have_child and have_children
  • Added have_tag and have_tags
  • Changed exec to only load / eval file
  • Fixed parser token issue, was previously matching things like end() as literal end

0.2.3 / 2009-02-18

  • Changed test dir to spec
  • Changed test.js to core.spec.js

0.2.2 / 2009-02-18

  • Added contexts

0.2.0 / 2009-02-18

  • Added release rake task
  • Added package with minified alternative

0.1.0 / 2009-02-18

  • Added new sexy syntax (warning: you will have to re-write your specs)
  • Added pre-processor for optional matcher parens
  • Added several new matchers
  • Added matcher aliasing
  • Added simple matcher declarations
  • Added END
  • Added yet-to-be-implemented specs
  • Added loading of suites via JSpec.load

0.0.4 / 2008-11-03

  • Added ability to pass only a description to it(), meaning not yet implemented

0.0.3 / 2008-10-28

  • Added should_fail
  • Added should_match
  • Added should_not_match
  • Added should_be and should_not_be

0.0.2 / 2008-10-28

  • Fixed typo in documentation for pointing to the master repo

0.0.1 / 2008-10-28

  • Initial release