code: function done() {
    	var storage = config.storage;
  
    	ProcessingQueue.finished = true;
  
    	var runtime = now() - config.started;
    	var passed = config.stats.all - config.stats.bad;
  
    	emit("runEnd", globalSuite.end(true));
    	runLoggingCallbacks("done", {
    		passed: passed,
    		failed: config.stats.bad,
    		total: config.stats.all,
    		runtime: runtime
    	});
  
    	// Clear own storage items if all tests passed
    	if (storage && config.stats.bad === 0) {
    		for (var i = storage.length - 1; i >= 0; i--) {
    			var key = storage.key(i);
  
    			if (key.indexOf("qunit-test-") === 0) {
    				storage.removeItem(key);
    			}
    		}
    	}
    }
docs: This function is called when the ProcessingQueue is done processing all
  items. It handles emitting the final run events.