void setUp() override {

        auto scOwned = stdx::make_unique<ServiceContextNoop>();
        auto sc = scOwned.get();
        setGlobalServiceContext(std::move(scOwned));

        sc->setTickSource(stdx::make_unique<TickSourceMock>());
        sc->setFastClockSource(stdx::make_unique<ClockSourceMock>());

        auto sep = stdx::make_unique<MockSEP>();
        _sep = sep.get();
        sc->setServiceEntryPoint(std::move(sep));

        auto tl = stdx::make_unique<MockTL>();
        _tl = tl.get();
        sc->setTransportLayer(std::move(tl));
        _tl->start().transitional_ignore();

        _ssm = ServiceStateMachine::create(getGlobalServiceContext(), _tl->createSession(), true);
        _tl->setSSM(_ssm.get());
    }
std::unique_ptr<ServiceContextNoop> makeTestServiceContext() {
    auto service = stdx::make_unique<ServiceContextNoop>();
    service->setFastClockSource(stdx::make_unique<ClockSourceMock>());
    service->setTickSource(stdx::make_unique<TickSourceMock>());
    return service;
}