public static SpecFlowProjectConfiguration LoadConfiguration(this IGeneratorConfigurationProvider configurationProvider, SpecFlowConfigurationHolder configurationHolder)
        {
            SpecFlowProjectConfiguration configuration = new SpecFlowProjectConfiguration();

            configurationProvider.LoadConfiguration(configurationHolder, configuration);
            return(configuration);
        }
        private static IGeneratorPlugin[] LoadPlugins(ObjectContainer container, IGeneratorConfigurationProvider configurationProvider, SpecFlowConfigurationHolder configurationHolder)
        {
            var plugins = container.Resolve<IDictionary<string, IGeneratorPlugin>>().Values.AsEnumerable();

            var pluginLoader = container.Resolve<IGeneratorPluginLoader>();
            plugins = plugins.Concat(configurationProvider.GetPlugins(configurationHolder).Where(pd => (pd.Type & PluginType.Generator) != 0).Select(pd => LoadPlugin(pluginLoader, pd)));

            return plugins.ToArray();
        }
        private static IGeneratorPlugin[] LoadPlugins(ObjectContainer container, IGeneratorConfigurationProvider configurationProvider, SpecFlowConfigurationHolder configurationHolder)
        {
            var plugins = container.Resolve <IDictionary <string, IGeneratorPlugin> >().Values.AsEnumerable();

            var pluginLoader = container.Resolve <IGeneratorPluginLoader>();

            plugins = plugins.Concat(configurationProvider.GetPlugins(configurationHolder).Where(pd => (pd.Type & PluginType.Generator) != 0).Select(pd => LoadPlugin(pluginLoader, pd)));

            return(plugins.ToArray());
        }
        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);
            }
        }
        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);
            }
        }
        private static void LoadPlugins(ObjectContainer container, IGeneratorConfigurationProvider configurationProvider, SpecFlowConfigurationHolder configurationHolder,
                                        GeneratorPluginEvents generatorPluginEvents, SpecFlowProjectConfiguration specFlowConfiguration, UnitTestProviderConfiguration unitTestProviderConfigration,
                                        IEnumerable <string> generatorPlugins)
        {
            // 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(), unitTestProviderConfigration);
            }
            var pluginLoader = container.Resolve <IGeneratorPluginLoader>();

            foreach (var generatorPlugin in generatorPlugins)
            {
                //todo: should set the parameters, and do not pass empty
                var pluginDescriptor = new PluginDescriptor(Path.GetFileNameWithoutExtension(generatorPlugin), generatorPlugin, PluginType.Generator, string.Empty);
                LoadPlugin(pluginDescriptor, pluginLoader, generatorPluginEvents, unitTestProviderConfigration);
            }
        }
Example #7
0
 public MsBuildProjectReader(IGeneratorConfigurationProvider configurationLoader)
 {
     this.configurationLoader = configurationLoader;
 }
Example #8
0
 public MsBuildProjectReader(IGeneratorConfigurationProvider configurationLoader)
 {
     this.configurationLoader = configurationLoader;
 }
 public MsBuildProjectReader(IGeneratorConfigurationProvider configurationLoader, IMSBuildRelativePathParser msBuildRelativePathParser)
 {
     _configurationLoader       = configurationLoader;
     _msBuildRelativePathParser = msBuildRelativePathParser;
 }
 public ProjectReader(IGeneratorConfigurationProvider configurationLoader, ProjectLanguageReader languageReader)
 {
     _configurationLoader = configurationLoader;
     _languageReader      = languageReader;
 }