protected void VerifyParse(RenderTargetCallback render)
        {
            // TODO: TBD: verify Expected Target Not Null?
            // TODO: TBD: or what? return>
            Assert.NotNull(ExpectedTarget);

            //if (ExpectedTarget == null)
            //{
            //    return;
            //}

            RenderedTarget = render(ExpectedTarget);

            OutputHelper.WriteLine($"{nameof(RenderedTarget)}: {RenderedTarget}");

            /* Besides all the Verification going on here, we also provide an Error Listener
             * in case of failure to Render properly. That gives us a halfway decent summary
             * as to where to look for the issue. */

            VerifyListener(
                VerifyGiven(RenderedTarget)
                .WalkEvaluatedContext <TSource, TStream, TParser, TContext, TListener>(
                    EvaluateCallback, Construct <DefaultErrorListener>().VerifyNotNull()
                    )
                );
        }
 protected void VerifyParse <TThrownException>(RenderTargetCallback render
                                               , ParseExceptionThrownCallback <TThrownException> callback = null)
     where TThrownException : Exception
 {
     try
     {
         callback?.Invoke(Assert.Throws <TThrownException>(() => VerifyParse(render)));
     }
     finally
     {
         // We must clear the Target Instance afterwards.
         ExpectedTarget = null;
     }
 }