static TransportMessage *
sendUp(TestData *data, TransportMessage *tm_going_down)
{
    PARCEventQueue *out = rtaProtocolStack_GetPutQueue(data->mock->stack, TESTING_UPPER, RTA_DOWN);
    PARCEventQueue *in = rtaProtocolStack_GetPutQueue(data->mock->stack, TESTING_LOWER, RTA_UP);

    rtaComponent_PutMessage(in, tm_going_down);
    // turn the handle enough times, the message will pass all the way out the bottom
    rtaFramework_NonThreadedStepCount(data->mock->framework, 10);
    return rtaComponent_GetMessage(out);
}
PARCEventQueue *
rtaComponent_GetOutputQueue(RtaConnection *conn,
                            RtaComponents component,
                            RtaDirection direction)
{
    RtaProtocolStack *stack;

    assertNotNull(conn, "called with null connection\n");

    stack = rtaConnection_GetStack(conn);
    assertNotNull(stack, "resolved null stack\n");

    return rtaProtocolStack_GetPutQueue(stack, component, direction);
}