'Does the common setup for tests that want to test the aborting
functionality of the HTTP/2 stack.
@param abortTimeout: The value to use for the abortTimeout. Defaults to
whatever is set on L{H2Connection.abortTimeout}.
@type abortTimeout: L{int} or L{None}
@return: A tuple of the reactor being used for the connection, the
connection itself, and the transport.'

def prepareAbortTest(self, abortTimeout=_DEFAULT):

    if (abortTimeout is self._DEFAULT):
        abortTimeout = H2Connection.abortTimeout
    frameFactory = FrameFactory()
    initialData = frameFactory.clientConnectionPreface()
    (reactor, conn, transport) = self.initiateH2Connection(initialData, requestFactory=DummyHTTPHandler)
    conn.abortTimeout = abortTimeout
    reactor.advance(100)
    self.assertTimedOut(transport.value(), frameCount=2, errorCode=h2.errors.ErrorCodes.NO_ERROR, lastStreamID=0)
    self.assertTrue(transport.disconnecting)
    self.assertFalse(transport.disconnected)
    return (reactor, conn, transport)
