public async Task Can_advance_without_sending()
    {
        using (var conn = CreateConnection())
        {
            await conn.OpenAsync().ConfigureAwait(false);

            Task Dispatch(OutgoingMessage operation)
            {
                Console.WriteLine(operation.MessageId);
                return(Task.CompletedTask);
            }

            await persister.Initialize(Dispatch, conn);

            await persister.TryAdvance(Dispatch, conn);

            await persister.TryAdvance(Dispatch, conn);

            var linkState = await persister.TryAdvance(Dispatch, conn);

            Assert.AreEqual(4, linkState.Epoch);
        }
    }