public virtual Repository Load() { var repository = new Repository(); foreach (var assemblyPath in _assemblyPaths) { var assembly = Assembly.LoadFrom(assemblyPath); foreach (var type in assembly.GetTypes()) { foreach (var method in type.GetMethods(StepDefinition.MethodFlags)) { if (StepDefinition.IsValidMethod(method)) { repository.StepDefinitions.Add(new StepDefinition(method)); _objectFactory.AddClass(method.ReflectedType); } if (BeforeHook.IsValidMethod(method)) { repository.BeforeHooks.Add(new BeforeHook(method)); _objectFactory.AddClass(method.ReflectedType); } if (AfterHook.IsValidMethod(method)) { repository.AfterHooks.Add(new AfterHook(method)); _objectFactory.AddClass(method.ReflectedType); } } } } return repository; }
public Processor(Loader loader, ObjectFactory objectFactory) { _loader = loader; _objectFactory = objectFactory; _repository = _loader.Load(); // Register TypeConverter for Cuke4Nuke.Framework.Table TypeConverterAttribute attr = new TypeConverterAttribute(typeof(TableConverter)); TypeDescriptor.AddAttributes(typeof(Table), new Attribute[] { attr }); }
public virtual Repository Load() { var repository = new Repository(); foreach (var assemblyPath in _assemblyPaths) { var assembly = Assembly.LoadFrom(assemblyPath); var configPath = assemblyPath + ".config"; if (System.IO.File.Exists(configPath)) { System.Diagnostics.Debug.WriteLine("cuke4nuke loading " + configPath); LoadConfig(configPath); } else { System.Diagnostics.Debug.WriteLine("cuke4nuke could not find " + configPath); } foreach (var type in assembly.GetTypes()) { foreach (var method in type.GetMethods(StepDefinition.MethodFlags)) { if (StepDefinition.IsValidMethod(method)) { repository.StepDefinitions.Add(new StepDefinition(method)); _objectFactory.AddClass(method.ReflectedType); } if (BeforeHook.IsValidMethod(method)) { repository.BeforeHooks.Add(new BeforeHook(method)); _objectFactory.AddClass(method.ReflectedType); } if (AfterHook.IsValidMethod(method)) { repository.AfterHooks.Add(new AfterHook(method)); _objectFactory.AddClass(method.ReflectedType); } } } } return repository; }
public override Repository Load() { var repository = new Repository(StepDefinitions, new List<BeforeHook>(), new List<AfterHook>()); return repository; }
public Processor(Loader loader, ObjectFactory objectFactory) { _loader = loader; _objectFactory = objectFactory; _repository = _loader.Load(); }