public AtemMockServerWrapper(ITestOutputHelper output, AtemServerClientPool pool, Func <Lazy <ImmutableList <ICommand> >, ICommand, IEnumerable <ICommand> > handler, string caseId)
        {
            _output  = output;
            _pool    = pool;
            _handler = handler;

            _case     = _pool.GetCase(caseId);
            SdkClient = _case.SelectSdkClient();
            Server.ActiveConnectionId = SdkClient.Id;

            var resetEvent = new ManualResetEvent(false);

            void TmpHandler(object o) => resetEvent.Set();

            SdkClient.OnSdkStateChange += TmpHandler;
            Server.ResetClient(SdkClient.Id);
            resetEvent.WaitOne(2000); // TODO - monitor result
            SdkClient.OnSdkStateChange -= TmpHandler;

            Helper = new AtemTestHelper(SdkClient, _output, _case.Server, _pool.StateSettings);
        }