private static void LoadPlugin(PluginDescriptor pluginDescriptor, IGeneratorPluginLoader pluginLoader, GeneratorPluginEvents generatorPluginEvents) { var plugin = pluginLoader.LoadPlugin(pluginDescriptor); var generatorPluginParameters = new GeneratorPluginParameters { Parameters = pluginDescriptor.Parameters }; plugin.Initialize(generatorPluginEvents, generatorPluginParameters); }
private static void LoadPlugins(ObjectContainer container, IGeneratorConfigurationProvider configurationProvider, SpecFlowConfigurationHolder configurationHolder, GeneratorPluginEvents generatorPluginEvents) { // initialize plugins that were registered from code foreach (var generatorPlugin in container.Resolve<IDictionary<string, IGeneratorPlugin>>().Values) { // these plugins cannot have parameters generatorPlugin.Initialize(generatorPluginEvents, new GeneratorPluginParameters()); } var pluginLoader = container.Resolve<IGeneratorPluginLoader>(); foreach (var pluginDescriptor in configurationProvider.GetPlugins(configurationHolder).Where(pd => (pd.Type & PluginType.Generator) != 0)) { LoadPlugin(pluginDescriptor, pluginLoader, generatorPluginEvents); } }
public void Initialize(GeneratorPluginEvents generatorPluginEvents, GeneratorPluginParameters generatorPluginParameters) { generatorPluginEvents.CustomizeDependencies += this.GeneratorPluginEventsOnCustomizeDependencies; }
public void Initialize(GeneratorPluginEvents generatorPluginEvents, GeneratorPluginParameters generatorPluginParameters) { generatorPluginEvents.CustomizeDependencies += (sender, args) => { if (args.SpecFlowProjectConfiguration.RuntimeConfiguration.StopAtFirstError) args.ObjectContainer.RegisterTypeAs<CustomHeaderWriter, ITestHeaderWriter>(); }; }
public void Initialize(GeneratorPluginEvents generatorPluginEvents, GeneratorPluginParameters generatorPluginParameters) { generatorPluginEvents.RegisterDependencies += (sender, args) => args.ObjectContainer.RegisterTypeAs<CustomDependency, ICustomDependency>(); }
public void Initialize(GeneratorPluginEvents generatorPluginEvents, GeneratorPluginParameters generatorPluginParameters) { generatorPluginEvents.ConfigurationDefaults += (sender, args) => { specifyDefaults(args.SpecFlowProjectConfiguration); }; }