[devtools] qunit: use new async testing APIs
http://qunitjs.com/cookbook/#asynchronous-callbacks
QUnit keeps track of all the assert.async() objects created inside the
test functions and expects all done() functions to be called. Failure to
do so will result in the test being failed.
Unlike .start and .stop which were internal APIs, assert.async() is
stricter and fails tests if assert methods are used *after* all done()
functions are called (see "test callback execution order").
Related to #5533333.
About this site
===============
This web application is based on the CubicWeb knowledge management system
from Logilab_. CubicWeb is made of an object database and a web
framework. It allows to develop an application by defining a set of
entities and their relationships, plus a set of views that present the
data selected from the object database using a specific query language.
This application has a precise schema_ and can be considered an
example of a semantic web database, as it can export the data to XML
and others formats and is not limited to publishing HTML.
Supported formats: |microformats|_ - JSON_ - |rss|_ - |dublincore|_
.. |microformats| image:: /data/microformats-button.png
.. _microformats: http://microformats.org
.. _JSON: http://www.json.org/
.. |rss| image:: /data/rss-button.png
.. _rss: http://www.rssboard.org
.. |dublincore| image:: /data/dublincore-button.png
.. _dublincore: http://dublincore.org
.. _Logilab: http://www.logilab.fr/
.. _schema: ../schema