As described in issue #655, the handler of an interval cannot successfully clear the same interval that generated it's invocation. Solve this issue by changing the order in which interval's handlers are called and then rescheduled to: first reschedule it and then call it. The actual order (call first then reschedule) produces that, during the execution of the interval's handler, the handler is not registered as a function to run after a timeout or interval ("scheduledFunctions"), because it was previously unregistered. Consequently, if the handler calls clearInterval, that function wont be able to find the handler and remove it completely.
=======
A JavaScript Testing Framework
Jasmine is a Behavior Driven Development testing framework for JavaScript. It does not rely on browsers, DOM, or any JavaScript framework. Thus it's suited for websites, Node.js projects, or anywhere that JavaScript can run.
Documentation & guides live here: http://jasmine.github.io
For a quick start guide of Jasmine 2.0, see the beginning of http://jasmine.github.io/2.0/introduction.html
Upgrading from Jasmine 1.x? Check out the 2.0 release notes for a list of what's new (including breaking interface changes).
Contributing
Please read the contributors' guide
Installation
To install Jasmine on your local box:
- Clone Jasmine -
git clone https://github.com/pivotal/jasmine.git - Create a Jasmine directory in your project -
mkdir my-project/jasmine - Move latest dist to your project directory -
mv jasmine/dist/jasmine-standalone-2.0.0.zip my-project/jasmine - Change directory -
cd my-project/jasmine - Unzip the dist -
unzip jasmine-standalone-2.0.0.zip
Add the following to your HTML file:
<link rel="shortcut icon" type="image/png" href="jasmine/lib/jasmine-2.0.0/jasmine_favicon.png">
<link rel="stylesheet" type="text/css" href="jasmine/lib/jasmine-2.0.0/jasmine.css">
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/jasmine.js"></script>
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/jasmine-html.js"></script>
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/boot.js"></script>
For the Jasmine Ruby Gem:
https://github.com/pivotal/jasmine-gem
For the Jasmine Python Egg:
https://github.com/pivotal/jasmine-py
Support
- Search past discussions: http://groups.google.com/group/jasmine-js
- Send an email to the list: jasmine-js@googlegroups.com
- View the project backlog at Pivotal Tracker: http://www.pivotaltracker.com/projects/10606
- Follow us on Twitter: @JasmineBDD
Maintainers
- Davis W. Frank, Pivotal Labs
- Rajan Agaskar, Pivotal Labs
- Sheel Choksi, Pivotal Labs
Maintainers Emeritus
- Christian Williams, Square
Copyright (c) 2008-2014 Pivotal Labs. This software is licensed under the MIT License.

