Skip to content
Node runner for Jasmine JavaScript BDD testing framework
JavaScript CoffeeScript
Find file
Pull request Compare This branch is 12 commits ahead, 52 commits behind master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
bin
lib
spec
vendor
.gitignore
.jezebel
LICENSE
README.rdoc
package.json

README.rdoc

Jessie - a Node runner for Jasmine

Jessie is a Node runner for Jasmine. It was created to provide better reporting on failures, more modular design, easier creation of formatters and optional syntactic sugar.

Installation

Stable version is available on npm, so you can install by using:

npm install jessie

If you want to install the edge development version, simply clone this repo and install from it:

git clone git://github.com/futuresimple/jessie.git
npm install ./jessie

Running Tests

$ jessie
Usage:
  jessie [OPTIONS] [spec dirs/files]

Options: 
  -f, --format [STRING]  Output format to use (Default is progress)
  -v, --version          Display the current version
  -h, --help             Display help and usage details

Jessie will run specs in any folder you specify, but it will automatically load up 'spec/spec_helper.js' if it is present.

For details on how to use Jasmine, consult the Jasmine docs at [github.com/pivotal/jasmine/wiki]

Using Jezebel

Jezebel is a continuous test runner and REPL (Read, Evaluate, Print, Loop) for Jessie. You can run it like so:

$ jezebel 
> runTests()
> ................................................................

Completed in 0.037 seconds
64 examples 

>

Jezebel runs all your tests when it starts, and every time a .js file in or under the current directory is changed. You can force a test run by calling the runTests() function from the REPL. Other functions will become available as jezebel improves.

Formatters

Currently Jessie ships with 2 formatters: progress and nested. By default it uses progress. If you want to use nested, you can do it by specifying the -f option:

jessie spec -f nested

Pending specs

Jessie extends Jasmine with the ability of marking pending specs. All you have to do is call the pending() function within your spec, like this:

it("should be pending", function() {
  pending()
})

Optionally, you can provide a message that will appear within spec results, simply by sending an argument to pending(), like this:

it("should be pending", function() {
  pending("Add real spec here!")
})

Sugar

If you want, Jessie can extend the built-in prototypes with syntactic sugar, so you can use methods like this:

variable.should_be("Foo Boo")
variable.should_not_be(4)
variable.should_match("Boo")
variable.should_be_a(String)

The number of these methods is limited and will possibly grow with time.

To use them, put this line into spec/spec_helper.js

require('jessie').sugar()

Development

Jessie is a fresh project, so forks are very welcome!

Testing

Tests are in Jasmine and run on Jessie. In order to run them, use the binary in the bin folder (be sure to run `npm install` first to get the dependencies)

bin/jessie spec

Acknowledgement

jessie is largely based on github.com/mhevery/jasmine-node. The goal of jessie is to be more modular and configurable.

Copyright

Copyright © 2011 Marcin Bunsch, Future Simple Inc. See LICENSE for details.

Something went wrong with that request. Please try again.