public ObjectDef AddPolicy <TModel, TRule>() where TRule : IAuthorizationRule <TModel> where TModel : class { var topDef = _policies.AddType(typeof(AuthorizationPolicy <TModel>)); var ruleObjectDef = new ObjectDef(typeof(TRule)); topDef.Dependencies.Add(new ConfiguredDependency() { DependencyType = typeof(IAuthorizationRule <TModel>), Definition = ruleObjectDef }); return(ruleObjectDef); }
private void buildPolicy(FubuContinuation continuation) { var policy = _policies.AddType(typeof(FubuContinuationFailurePolicy)); policy.DependencyByValue(typeof(Func <Type, bool>), _predicate); policy.DependencyByValue(typeof(FubuContinuation), continuation); }
public void add_type() { var dependency = new ListDependency(typeof(ISomethingDoer[])); dependency.AddType(typeof(ASomethingDoer)).Type.ShouldEqual(typeof(ASomethingDoer)); dependency.Items.Count.ShouldEqual(1); }
public void build_an_object_with_a_list_dependency() { var def = new ObjectDef(typeof(ClassWithSomethings)); var listDependency = new ListDependency(typeof(IList <ISomething>)); listDependency.AddType(typeof(SomethingA)); listDependency.AddType(typeof(SomethingB)); listDependency.AddValue(new SomethingC()); def.Dependencies.Add(listDependency); var instance = new ObjectDefInstance(def); var container = new Container(); var @object = container.GetInstance <ClassWithSomethings>(instance); @object.Somethings[0].ShouldBeOfType <SomethingA>(); @object.Somethings[1].ShouldBeOfType <SomethingB>(); @object.Somethings[2].ShouldBeOfType <SomethingC>(); }
public void Should_satisfy_dependency() { var def = new ObjectDef(typeof(NeedListOfDoers)); var doer1 = new ASomethingDoer(); var doers = new ListDependency(typeof(IEnumerable <ISomethingDoer>)); doers.AddValue(doer1); doers.AddType(typeof(BSomethingDoer)); def.Dependency(doers); def.Dependencies.ShouldHaveCount(1); }
public BottleConfigurationDef AddRule <T>() where T : IBottleConfigurationRule { _rules.AddType(typeof(T)); return(this); }