public void register_with_basic_authentication_disabled() { var registry = new FubuRegistry(); registry.Import<Saml2Extensions>(); registry.Import<ApplyAuthentication>(); var samlCertificateRepository = MockRepository.GenerateMock<ISamlCertificateRepository>(); samlCertificateRepository.Stub(x => x.AllKnownCertificates()).Return(new SamlCertificate[0]); registry.Services(x => { x.SetServiceIfNone<IPrincipalBuilder>(MockRepository.GenerateMock<IPrincipalBuilder>()); x.AddService<ISamlResponseHandler>(MockRepository.GenerateMock<ISamlResponseHandler>()); x.SetServiceIfNone<ISamlCertificateRepository>(samlCertificateRepository); }); registry.AlterSettings<AuthenticationSettings>(x => { x.MembershipEnabled = MembershipStatus.Disabled; }); var container = new Container(); var runtime = FubuApplication.For(registry).StructureMap(container).Bootstrap(); var strategies = container.GetAllInstances<IAuthenticationStrategy>(); strategies.Single().ShouldBeOfType<SamlAuthenticationStrategy>(); }
public void SetUp() { var registry = new FubuRegistry(); registry.Actions.IncludeType<NothingEndpoint>(); // Have to do this to make it an isolated test registry.Import<ApplyAuthentication>(); registry.Import<FormsAuthenticationRegistry>(); theGraphWithBasicAuthentication = BehaviorGraph.BuildFrom(registry); }
protected override void configure(FubuRegistry registry) { registry.Import<SparkEngine>(); registry.Actions.IncludeType<UsesPartialController>(); registry.Actions.IncludeType<HelloPartialController>(); registry.Views.TryToAttachWithDefaultConventions(); }
public void SetUp() { var registry = new FubuRegistry(); registry.Import<WindowsAuthFubuRegistryExtension>(); theGraphWithWindowsAuthentication = BehaviorGraph.BuildFrom(registry); }
public void default_namespaces_are_set_including_anything_from_CommonViewNamespaces() { var registry = new FubuRegistry(); registry.Import<RazorViewFacility>(); registry.AlterSettings<CommonViewNamespaces>(x => { x.Add("Foo"); x.Add("Bar"); }); var graph = BehaviorGraph.BuildFrom(registry); var useNamespaces = graph.Services.DefaultServiceFor<CommonViewNamespaces>().Value.As<CommonViewNamespaces>(); useNamespaces.Namespaces.ShouldHaveTheSameElementsAs(new[] { "System.Web", "System", "FubuCore", "System.Linq", "HtmlTags", "FubuMVC.Core.UI", "FubuMVC.Core.UI.Extensions", "FubuMVC.Razor", "Foo", "Bar" }); }
public void SetUp() { var registry = new FubuRegistry(); registry.Import<YuiCompressionExtensions>(); theServices = BehaviorGraph.BuildFrom(registry).Services; }
public void SetUp() { var registry = new FubuRegistry(); registry.Import<BasicLocalizationSupport>(); graphWithBasicLocalizationAsIs = BehaviorGraph.BuildFrom(registry); }
public void SetUp() { var registry = new FubuRegistry(); registry.Import<ServerSentEventsExtension>(); theGraph = BehaviorGraph.BuildFrom(registry); }
public void Configure(FubuRegistry registry) { registry.Import<HtmlConventionRegistry>(x => { x.Forms.Add(new FormModifier()); }); }
private void configurationIs(Action<DateTimePolicies> action) { container = new Container(); var registry = new FubuRegistry(); registry.Services(x => { x.SetServiceIfNone<ITimeZoneContext>(theTimeZoneContext); }); registry.Import<FubuMVC.Core.UI.FubuHtmlRegistration>(); registry.Import<DateTimePolicies>(action); FubuApplication.For(registry).StructureMap(container).Bootstrap(); _formatter = container.GetInstance<IDisplayFormatter>(); }
public void SetUp() { var registry = new FubuRegistry(); registry.Import<ApplyWindowsAuthentication>(); theGraph = BehaviorGraph.BuildFrom(registry); }
public void Configure(FubuRegistry registry) { // registry // .Import<SassExtension>(); registry .Import<VisualizationFubuRegistry>(DiagnosticsRegistration.DIAGNOSTICS_URL_ROOT); }
public void register_a_non_default_culture_info() { var registry = new FubuRegistry(); registry.Import<BasicLocalizationSupport>(x => x.DefaultCulture = new CultureInfo("en-CA")); BehaviorGraph.BuildFrom(registry).Services.DefaultServiceFor(typeof (CultureInfo)) .Value.ShouldEqual(new CultureInfo("en-CA")); }
public void Configure(FubuRegistry registry) { registry.Import<HtmlConventionRegistry>(x => { x.FieldChrome<BootstrapFieldChrome>(); x.Labels.Add(new BootstrapLabelModifier()); }); }
public void uses_the_specified_OAuthSettings() { var theSettings = new OAuthSettings {ConsumerKey = "blah", ConsumerSecret = "private"}; var registry = new FubuRegistry(); registry.Import<ApplyTwitterAuthentication>(x => x.UseOAuthSettings(theSettings)); var graph = BehaviorGraph.BuildFrom(registry); graph.Services.DefaultServiceFor<OAuthSettings>().Value.ShouldEqual(theSettings); }
public void ensure_namespaces_are_imported() { var registry = new FubuRegistry(); registry.Import<ContentExtensionsRegistration>(); var graph = BehaviorGraph.BuildFrom(registry); var commonViewNamespaces = graph.Services.DefaultServiceFor<CommonViewNamespaces>().Value.As<CommonViewNamespaces>(); commonViewNamespaces.Namespaces.ShouldContain(typeof(ContentExtensionGraph).Namespace); }
public void import_with_strings_instead_of_StringToken() { var registry = new FubuRegistry(); registry.Import<NavigationRegistryExtension>(); registry.Policies.Add<NavigationRegistry>(x => { x.ForMenu("Key1"); x.Add += MenuNode.Node("Key2"); x.Add += MenuNode.Node("Key3"); }); registry.Import<ChildRegistry>(); var graph = BehaviorGraph.BuildFrom(registry).Settings.Get<NavigationGraph>(); graph.MenuFor("Key1").Select(x => x.Key) .ShouldHaveTheSameElementsAs(new NavigationKey("Key2"), new NavigationKey("Key3")); }
public void the_url_prefix_of_a_fubu_package_registry_should_be_respected() { var registry = new FubuRegistry(); registry.Import<FooPackageRegistry>(); var graph = BehaviorGraph.BuildFrom(registry); graph.BehaviorFor<FooEndpointClass>(x => x.get_some_foo()) .GetRoutePattern().ShouldEqual("moar/some/foo"); }
public void SetUp() { var registry = new FubuRegistry(); registry.Import<DiagnosticsRegistration>(); graph = BehaviorGraph.BuildFrom(registry); urls = MockRepository.GenerateMock<IUrlRegistry>(); graph.Behaviors.Any().ShouldBeTrue(); graph.Actions().Each(x => Debug.WriteLine(x.Description)); }
public void should_only_apply_behavior_once() { var hostRegistry = new FubuRegistry(); var packageRegistry = new FubuPackageRegistry(); packageRegistry.Actions.IncludeType<Controller1>(); hostRegistry.Import(packageRegistry, string.Empty); theGraph = BehaviorGraph.BuildFrom(hostRegistry); var chain = chainFor(x => x.BasicContinuation(null)) .Output.Writers.OfType<Writer>().ShouldHaveCount(1); }
void IFubuRegistryExtension.Configure(FubuRegistry registry) { registry.Services<BasicLocalizationServices>(); if(_modifications.Any()) { registry.Services(x => _modifications.Each(modify => modify(x))); } registry.Import<HtmlConventionRegistry>(x => x.Labels.Add(new LabelBuilder())); }
protected override void configure(FubuRegistry registry) { registry.Actions.IncludeType<ClosestController>(); registry.Actions.IncludeType<UsesDefaultController>(); registry.IncludeDiagnostics(true); registry.Import<RazorEngineRegistry>(); registry.Views .TryToAttachWithDefaultConventions(); }
public void should_only_apply_behavior_once() { var hostRegistry = new FubuRegistry(); var packageRegistry = new FubuPackageRegistry(); packageRegistry.Actions.IncludeType<Controller1>(); hostRegistry.Import(packageRegistry, string.Empty); theGraph = hostRegistry.BuildGraph(); chainFor(x => x.BasicContinuation(null)) .Where(x => x is AjaxContinuationNode) .ShouldHaveCount(1); }
public FubuApplication BuildApplication() { var registry = new FubuRegistry(); registry.Import<DiagnosticApplication>(); registry.AlterSettings<TransportSettings>(x => { x.DelayMessagePolling = Int32.MaxValue; x.ListenerCleanupPolling = Int32.MaxValue; }); return FubuApplication.For(registry).StructureMap(); }
protected override void configure(FubuRegistry registry) { registry.Actions.IncludeType<CreateUserEndpoint>(); registry.Import<FubuMvcValidation>(); theUserService = new UserService(); registry.Services(r => r.SetServiceIfNone<IUserService>(theUserService)); var rule = RemoteFieldRule.For(ReflectionHelper.GetAccessor<CreateUser>(x => x.Username), new UniqueUsernameRule()); theField = new ValidateField { Hash = rule.ToHash(), Value = "joel_arnold" }; theUserService.AddUser(theField.Value); }
public void import_navigation_from_child_registry() { var registry = new FubuRegistry(); registry.Import<NavigationRegistryExtension>(); registry.Policies.Add<NavigationRegistry>(x => { x.ForMenu(FakeKeys.Key1); x.Add += MenuNode.Node(FakeKeys.Key2); x.Add += MenuNode.Node(FakeKeys.Key3); }); registry.Import<ChildRegistry>(); var graph = BehaviorGraph.BuildFrom(registry).Settings.Get<NavigationGraph>(); graph.MenuFor(FakeKeys.Key1).Select(x => x.Key) .ShouldHaveTheSameElementsAs(FakeKeys.Key2, FakeKeys.Key3, FakeKeys.Key4, FakeKeys.Key5); graph.MenuFor(FakeKeys.Key6).Select(x => x.Key) .ShouldHaveTheSameElementsAs(FakeKeys.Key7, FakeKeys.Key8); }
public void end_to_end() { var registry = new FubuRegistry(); registry.Import<ServerSentEventsExtension>(); registry.Services(x => x.FillType<IRequestCompletion, RequestCompletion>()); var container = new Container(); FubuApplication.For(registry).StructureMap(container).Bootstrap(); var graph = container.GetInstance<BehaviorGraph>(); var chain = graph.BehaviorFor<ChannelWriter<FakeTopic>>(x => x.Write(null)); container.GetInstance<IActionBehavior>(chain.UniqueId.ToString()); }
public void capture_the_configuration_source_from_imports() { var registry = new FubuRegistry(); registry.Actions.IncludeClassesSuffixedWithController(); registry.Import<FakeRegistry>(); var graph = BehaviorGraph.BuildFrom(registry); var chain = graph.BehaviorFor<FakeThing>(x => x.SayHello()).As<ITracedModel>(); // This is simple chain.AllEvents().OfType<Created>().Single().Source.Provenance.ShouldBeOfType<FakeRegistry>(); chain.AllEvents().OfType<ChainImported>().Single().Source.Action.ShouldBeOfType<RegistryImport>(); graph.Log.AllConfigSources().Where(x => x.Provenance is FakeRegistry).Any().ShouldBeTrue(); }
public void override_the_storage_mechanism() { var registry = new FubuRegistry(); registry.Import<BasicLocalizationSupport>(x => { x.LocalizationStorageIs<InMemoryLocalizationStorage>(); }); var graph = BehaviorGraph.BuildFrom(registry); var list = graph.Services.ServicesFor<IActivator>().Select(x => x.Type).ToList(); list.ShouldNotContain(typeof(RegisterXmlDirectoryLocalizationStorage)); list.ShouldContain(typeof(SpinUpLocalizationCaches)); graph.Services.DefaultServiceFor<ILocalizationStorage>().Type.ShouldEqual( typeof (InMemoryLocalizationStorage)); }
public void has_all_the_chains_we_expect_through_FubuApplication() { var container = new Container(); var registry = new FubuRegistry(); registry.Import<MyFirstTransport>(); using (var runtime = FubuApplication.For(registry).StructureMap(container).Bootstrap()) { var graph = container.GetInstance<BehaviorGraph>(); graph.Behaviors.Count(x => typeof(Foo1) == x.InputType()).ShouldEqual(1); graph.Behaviors.Count(x => typeof(Foo2) == x.InputType()).ShouldEqual(1); graph.Behaviors.Count(x => typeof(Foo3) == x.InputType()).ShouldEqual(1); graph.Behaviors.Count(x => typeof(Foo4) == x.InputType()).ShouldEqual(1); } }
public void Apply(FubuRegistry registry) { registry.Import <T>(); }
public void Apply(FubuRegistry registry, IPackageLog packageLog) { packageLog.Trace("Applying extension " + typeof(T).FullName); registry.Import <T>(); }
public void Apply(FubuRegistry registry) { _log.Trace("Applying extension " + typeof(T).FullName); registry.Import <T>(); }