private IReaderStrategy CreateReaderStrategy()
        {
            var result = new ReaderStrategy.Builder();

            result.FromAll();
            result.AllEvents();
            return(result.Build(new RealTimeProvider(), runAs: null));
        }
 protected virtual void When()
 {
     _ef = null;
     try
     {
         _ef = _builder.Build(new RealTimeProvider(), runAs: null).EventFilter;
     }
     catch (Exception ex)
     {
         _exception = ex;
     }
 }
        protected virtual CheckpointStrategy CreateCheckpointStrategy()
        {
            var result        = new CheckpointStrategy.Builder();
            var readerBuilder = new ReaderStrategy.Builder();

            if (_source != null)
            {
                _source(readerBuilder);
                _source(result);
            }
            else
            {
                readerBuilder.FromAll();
                readerBuilder.AllEvents();
                result.FromAll();
                result.AllEvents();
            }
            var config = ProjectionConfig.GetTest();

            return(result.Build(config, null, readerBuilder.Build(new RealTimeProvider(), runAs: null)));
        }