queueWrapperFn = function(fn) {
    'use strict';
    return function() {
      'use strict';
      var self = /** @type {?} */ (this);  // T this is expected
      var queue = new goog.testing.JsTdAsyncWrapper.Queue(self);
      fn.call(self, queue);
      return queue.startExecuting();
    };
  }
Wraps an object's methods by passing in a Queue that is based on the JSTD
async API. The queue exposes a promise that resolves when the queue
completes. This promise can be used in JsUnit tests.

@template T
@param {T} original The original JSTD test object. The object should
    contain methods such as testXyz or setUp.
@return {T} A object that has all test methods wrapped in a fake
    testing queue.