With practically everything else in place, we finally turn to writing test specifications. Mocha BDD specifications are declared using the it()
function with the following function signature:
it(description, callback);
The description string, by convention, is a statement of the expected behavior under test, and the callback function executes the tests. For example, assuming we have an empty this.notes
collection variable, a test of the default values in App.Collections.Notes
can be as simple as the following:
it("has default values", function () { expect(this.notes).to.be.ok; expect(this.notes).to.have.length(0); });
Although basic test specifications are quite simple, flow control complications arise when testing asynchronous application code. Given that the Backbone.js application's behavior is quite often asynchronous/event-driven, we need to have a solid and straightforward test approach.
Fortunately, Mocha provides an...