public void SetUp() { var registry = new FubuRegistry(); registry.Actions.IncludeType <RestController1>(); // TODO -- this really needs to be done with a Bottle var typePool = new TypePool(); typePool.AddAssembly(Assembly.GetExecutingAssembly()); registry.Policies.Add(new ConnegAttachmentPolicy(typePool)); registry.Services <ResourcesServiceRegistry>(); registry.Policies.Add(x => { x.Where.AnyActionMatches( call => call.HandlerType == typeof(RestController1) && !call.Method.Name.StartsWith("Not")); x.Conneg.ApplyConneg(); }); theBehaviorGraph = BehaviorGraph.BuildFrom(registry); theConnegGraph = new ConnegGraph(theBehaviorGraph); }
public void Setup() { var types = new TypePool(); types.AddAssembly(GetType().Assembly); _runner = new ViewEngines(); }
public void SetUp() { var pool = new TypePool(null); pool.AddAssembly(Assembly.GetExecutingAssembly()); views = new WebFormViewFacility().FindViews(pool, new BehaviorGraph()); }
private TypePool typePool() { var pool = new TypePool(); pool.AddAssembly(GetType().Assembly); pool.AddType(generateType("namespace FubuMVC.Razor.Tests.RazorModel.Binding{public class Bar{}}", "FubuMVC.Razor.Tests.RazorModel.Binding.Bar")); pool.AddType <Bar>(); pool.AddType <Baz>(); pool.AddType <Generic <Baz> >(); pool.AddType <Generic <Baz, Bar> >(); return(pool); }
internal void Apply(SettingRegistry registry, BehaviorGraph graph) { var typePool = new TypePool(); if (_useApplicationAssembly) { typePool.AddAssembly(graph.ApplicationAssembly); } typePool.AddAssemblies(_assemblies); typePool.TypesMatching(_filter) .Where(type => graph.Services.DefaultServiceFor(type) == null) .Each(type => registry.AddSettingType(type)); }
internal TypePool BuildPool(Assembly applicationAssembly) { var types = new TypePool(); if (_typePoolConfigurations.Any()) { _typePoolConfigurations.Each(x => x(types)); } else { types.AddAssembly(applicationAssembly); } return(types); }
IEnumerable <HandlerCall> IHandlerSource.FindCalls() { var types = new TypePool(); if (_assemblies.Any()) { types.AddAssemblies(_assemblies); } else { types.AddAssembly(FubuTransportRegistry.FindTheCallingAssembly()); } return(types.TypesMatching(_typeFilters.Matches).SelectMany(actionsFromType)); }
private static TypePool getTypes() { var types = new TypePool(); types.AddAssembly(TypePool.FindTheCallingAssembly()); var filter = new CompositeFilter <Assembly>(); filter.Excludes.Add(a => a.IsDynamic); filter.Excludes.Add(a => types.HasAssembly(a)); filter.Includes += (t => true); types.AddSource(() => AppDomain.CurrentDomain.GetAssemblies().Where(filter.MatchesAll)); return(types); }
public void conneg_attachement_policy_finds_and_applies_resource_configuration() { var registry = new FubuRegistry(); var typePool = new TypePool(); typePool.AddAssembly(Assembly.GetExecutingAssembly()); registry.Policies.Add(x => { x.Conneg.ApplyConneg(); }); registry.Policies.Add(new ConnegAttachmentPolicy(typePool)); registry.Services <ResourcesServiceRegistry>(); registry.Actions.IncludeType <RestController1>(); var graph = BehaviorGraph.BuildFrom(registry); var connegOutput = graph .BehaviorFor <RestController1>(x => x.Find(null)) .Output; var writerNode = connegOutput.Writers.Single().As <MediaWriterNode>(); // Assert the xml media var objectDef = writerNode.As <IContainerModel>().ToObjectDef() .FindDependencyDefinitionFor <IMediaWriter <Address> >(); var document = objectDef.DependencyFor <IMediaDocument>().ShouldBeOfType <ConfiguredDependency>(); document.DependencyType.ShouldEqual(typeof(IMediaDocument)); document.Definition.Type.ShouldEqual(typeof(XmlMediaDocument)); document.Definition.DependencyFor <XmlMediaOptions>().ShouldBeOfType <ValueDependency>() .Value.ShouldBeOfType <XmlMediaOptions>().Namespace.ShouldEqual("something.xsd"); objectDef.DependencyFor <ILinkSource <Address> >().ShouldBeOfType <ValueDependency>() .Value.ShouldNotBeNull(); objectDef.DependencyFor <IProjection <Address> >().ShouldBeOfType <ValueDependency>() .Value.ShouldBeOfType <Projection <Address> >(); }
private TypePool typePool() { var pool = new TypePool(); pool.AddAssembly(GetType().Assembly); var externalAssemblyDuplicatedType = generateType("namespace FubuMVC.Spark.Tests.SparkModel.Binding{public class DuplicatedGeneric<T>{}}", "FubuMVC.Spark.Tests.SparkModel.Binding.DuplicatedGeneric`1"); pool.AddType <Bar>(); pool.AddType <Baz>(); pool.AddType <Generic <Baz> >(); pool.AddType <Generic <Bar> >(); pool.AddType <Generic <Baz, Bar> >(); pool.AddType <DuplicatedGeneric <Bar> >(); pool.AddSource(() => new[] { externalAssemblyDuplicatedType.Assembly, GetType().Assembly }); pool.AddType(externalAssemblyDuplicatedType); return(pool); }
public void SetUp() { var registry = new FubuRegistry(); registry.Actions.IncludeType <Controller1>(); registry.Policies.Add(x => { x.Conneg.ApplyConneg(); }); var typePool = new TypePool(); typePool.AddAssembly(Assembly.GetExecutingAssembly()); registry.Policies.Add(new ConnegAttachmentPolicy(typePool)); theGraph = BehaviorGraph.BuildFrom(registry); }
public AppliesToExpression ToAssembly(Assembly assembly) { _pool.AddAssembly(assembly); return(this); }
public TemplateComposerTester() { _types = new TypePool(); _types.AddAssembly(GetType().Assembly); }