withMockClock({install = true, async = false} = {}) {
    if (!this.hasMockClock() || this.mockClock.isSynchronous() === async) {
      this.mockClock =
          async ? MockClock.createAsyncMockClock() : new MockClock();
      if (install) {
        this.mockClock.install();
      }
    }
    return this;
  }
Create a {@see MockClock} for each test. The clock will be
installed (override i.e. setTimeout) by default. It can be accessed
using `env.mockClock`. If your test has more than one testing
environment, don't call this on more than one of them.
@param {{install: (boolean|undefined), async: (boolean|undefined)}=}
    options Options about the mockClock.
@return {!Environment} For chaining.