public static void SetDefaultCollectionProcessorFactory( this SpecFlowContext context, CollectionProcessorFactory factory) { AddDefaultCollectionProcessorFactories(context); context.Set(factory, "__defaultCollectionProcessorFactory__"); }
public static void AddCollectionProcessorFactory( this SpecFlowContext context, CollectionProcessorFactory factory) { AddDefaultCollectionProcessorFactories(context); Dictionary <string, CollectionProcessorFactory> lookup = GetCollectionProcessorFactoryLookup(context); factory.CollectionKindNames.ForEach(n => lookup[n] = factory); }
public ITypeProcessor GetCollectionProcessorFor(string collectionKind, IValueProcessor processor) { if (processor == null) { return(null); } CollectionProcessorFactory factory = !string.IsNullOrEmpty(collectionKind) ? _context.GetCollectionProcessorFactory(collectionKind) : _context.GetDefaultCollectionProcessorFactory(); //Console.WriteLine($"***** Got processor factory: {factory?.GetType().Name}"); if (factory == null) { throw new Exception($"No registered CollectionProcessor for: {collectionKind}."); } return(factory.Create(processor)); }