Book Image

Learning jQuery, Third Edition

Book Image

Learning jQuery, Third Edition

Overview of this book

To build interesting, interactive sites, developers are turning to JavaScript libraries such as jQuery to automate common tasks and simplify complicated ones. Because many web developers have more experience with HTML and CSS than with JavaScript, the library's design lends itself to a quick start for designers with little programming experience. Experienced programmers will also be aided by its conceptual consistency.Learning jQuery Third Edition is revised and updated for version 1.6 of jQuery. You will learn the basics of jQuery for adding interactions and animations to your pages. Even if previous attempts at writing JavaScript have left you baffled, this book will guide you past the pitfalls associated with AJAX, events, effects, and advanced JavaScript language features.Starting with an introduction to jQuery, you will first be shown how to write a functioning jQuery program in just three lines of code. Learn how to add impact to your actions through a set of simple visual effects and to create, copy, reassemble, and embellish content using jQuery's DOM modification methods. The book will step you through many detailed, real-world examples, and even equip you to extend the jQuery library itself with your own plug-ins.
Table of Contents (24 chapters)
Learning jQuery Third Edition
Credits
Foreword
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Organizing tests


QUnit provides two levels of grouping named after their respective function calls: module() and test() . The module is like a general category under which the tests will be run; the test is actually a set of tests that takes a callback in which all of that test's specific unit tests are run. We will group our tests by the chapter topic, placing the code in our test/test.js file:

module('Selecting');

test('Child Selector', function() {
  // tests go here
});

test('Attribute Selectors', function() {
  // tests go here
});

module('Ajax');

It is not necessary to set up the file with the test structure, but it is good to have an overall structure in mind. Notice that our modules and tests do not need to be placed inside a $(document).ready() call because QUnit, by default, waits until the window has loaded before it begins running the tests. With this very simple setup, loading the test HTML results in a page that looks like this:

Note that the module name is light blue and the test name is darker blue. Clicking on either one will expand the results of that set of tests, which are collapsed by default when all pass (or, in this case, when they have no tests). The Ajax module does not appear yet because we haven't written any tests for it.