testSetFailFastAtRetryCount() {
    stubTmpnetwork();

    connect();
    assertEquals(1, numTimingEvents);

    sendMap('foo', 'bar');
    assertNull(browserChannel.forwardChannelTimerId_);
    assertNotNull(browserChannel.forwardChannelRequest_);
    assertEquals(0, browserChannel.forwardChannelRetryCount_);

    // Set fail fast.
    browserChannel.setFailFast(true);
    // Request should still be alive.
    assertNull(browserChannel.forwardChannelTimerId_);
    assertNotNull(browserChannel.forwardChannelRequest_);
    assertEquals(0, browserChannel.forwardChannelRetryCount_);

    // Watchdog timeout. Now we should get an error.
    responseTimeout();
    assertNull(browserChannel.forwardChannelTimerId_);
    assertNull(browserChannel.forwardChannelRequest_);
    assertEquals(0, browserChannel.forwardChannelRetryCount_);

    assertTrue(gotError);
    // We get the error immediately before starting to ping google.com.
    // Simulate that timing out. We should get a network error in addition to
    // the initial failure.
    gotError = false;
    mockClock.tick(tmpnetwork.GOOGLECOM_TIMEOUT);
    assertTrue('No error after tmpnetwork ping timed out.', gotError);

    // Make sure no more retry timers are firing.
    mockClock.tick(ALL_DAY_MS);
    assertNull(browserChannel.forwardChannelTimerId_);
    assertNull(browserChannel.forwardChannelRequest_);
    assertEquals(0, browserChannel.forwardChannelRetryCount_);
    assertEquals(1, numTimingEvents);
  }
Makes sure that setting fail fast while not retrying doesn't cause a
     failure.
@suppress {visibility} suppression added to enable type checking