Skip to content

v2.0.0

@balupton balupton tagged this 04 Nov 01:14
This release contains several major improvements to internals and
undocumented functionality, which potentially impact backwards
compatibility with before and after hooks, and reporter functionality.
For the average end-user these should be non-functional changes and
should just improve the quality of the reports that joe generates.

- The before and after hooks are now stable and documented
	- `before` and `after` listers fire with the context as the item
	they are bound to, receiving no arguments besides the optional
	completion callback
	  - `task.before`, `task.after`, `suite.before`, `suite.after`
	  listeners fire with the context as the suite they are bound
	  to, receiving the first argument as the item for the hook, as
	  well as the optional completion callback
	  - Suite initialiser methods now get descriptive names instead
	  of no name
	  - If a suite or test encounter an error, the
	  `finish[Test|Suite]` reporting now always occurs regardless of
	  `reporting` preference
	  - The global suite now has a name of `global joe suite`, it is
	  up to the reporters to filter this out
	  - Reporter can now be specified via the `JOE_REPORTER`
	  environment variable
	  - Reporter must now be specified, no longer defaults to
	  `joe-reporter-console`
	  - `--joe-reporter` and `JOE_REPORTER` can now point to paths
	  to load
	  - `setReporter` now expects to receive a reporter instance
	  - Exit reporting now contains the reason for the exit as the
	  second argument
	  - `getItemName` has now been removed, it should be handled by
	  the reporters instead
	  - `uncaughtException` method has been removed, it doesn't make
	  sense being an API call
	  - Simplified cross environment (browser, windows, etc)
	  handling
	  - Exiting should now be more reliable across different node
	  versions and browser environments
	    - browsers will now have exit reporting by waiting for the
	    global suite to destroy
	      - on node
	          - joe will now listen to `beforeExit` so exits can
		  perform more reliably
		      - joe will no longer bother with `SIGINT` on
		      windows as `beforeExit` should now accomplish that
		          - joe will no longer listen to the global
			  suites completion event to exit, now it just
			  listens to the `beforeExit`, `exit`, and
			  `uncaughtException` events
			        - this is groundwork to solving [issue
				#19](https://github.com/bevry/joe/issues/19)
				(a regression since v1.8.0)
				- Early node version support added once
				again without the need of a polyfill
				- Moved examples out from this
				repository into the new [`joe-examples`
				repository](https://github.com/bevry/joe-examples)
				- Testing infrastructure now tests the
				most common reporters against the most
				common examples
				- Updated base files
Assets 2
Loading