private static IPandaContainer CreateAndRegisterContainerWithCredentials(string baseUrl, string userName, string password) { var container = new PandaContainer(); container.RegisterPandaModules(() => AuthenticateWithCredentials(container, baseUrl, userName, password)); return(container); }
public void MultipleInstanceTypeOfRegistrationTest() { var container = new PandaContainer(); container.RegisterType <IRegistrationTest>(typeof(RegistrationTest)); var instance = container .Resolve(typeof(IRegistrationTest)) .ShouldBeOfType <RegistrationTest>(); instance.Name.ShouldBeNull(); instance.Value.ShouldBeNull(); }
public void MultipleInstanceCustomFactoryRegistrationTest() { var container = new PandaContainer(); container.RegisterType <IRegistrationTest>(() => new RegistrationTest { Name = "CustomName", Value = "CustomValue" }); var instance = container.Resolve <IRegistrationTest>(); instance.Name.ShouldBe("CustomName"); instance.Value.ShouldBe("CustomValue"); }
private static IPandaContainer CreateAndRegisterContainerWithOAuth( string baseUrl, string consumerKey, string consumerSecret, string oAuthAccessToken, string oAuthTokenSecret) { var container = new PandaContainer(); container.RegisterPandaModules(() => AuthenticateWithOAuth(container, baseUrl, consumerKey, consumerSecret, oAuthAccessToken, oAuthTokenSecret)); return(container); }
public void ParameterizedConstructorRegistrationTest() { var container = new PandaContainer(); container.RegisterType <IRegistrationTest>(() => new RegistrationTest { Name = "42" }); container.RegisterType <ParameterizedConstructorTest, ParameterizedConstructorTest>(); var instance = container.Resolve <ParameterizedConstructorTest>(); instance.Container.ShouldBeSameAs(container); instance.TestProperty.ShouldNotBeNull(); instance.TestProperty.Name.ShouldBe("42"); }
public void RegistrationErrorHandlingTest() { var container = new PandaContainer(); Should.Throw <InvalidOperationException>(() => container.Resolve <IRegistrationTest>()); container.RegisterType <NoPublicConstructorTest, NoPublicConstructorTest>(); Should.Throw <InvalidOperationException>(() => container.Resolve <NoPublicConstructorTest>()); Should.Throw <InvalidOperationException>(() => container.RegisterType <NoPublicConstructorTest, NoPublicConstructorTest>()); Should.Throw <InvalidOperationException>(() => container.RegisterSingletonType <NoPublicConstructorTest, NoPublicConstructorTest>()); container.RegisterType <ParameterizedConstructorTest, ParameterizedConstructorTest>(); Should.Throw <InvalidOperationException>(() => container.Resolve <ParameterizedConstructorTest>()); }
public void SingleInstanceRegistrationTest() { var container = new PandaContainer(); container.RegisterSingletonType <IRegistrationTest, RegistrationTest>(); var instance = container.Resolve <IRegistrationTest>(); instance.Name.ShouldBeNull(); instance.Value.ShouldBeNull(); var anotherInstance = container.Resolve <IRegistrationTest>( new InjectProperty("Test", "Name"), new InjectProperty("Value", "Value")); anotherInstance.ShouldBeSameAs(instance); }
public void SingleInstanceCustomFactoryRegistrationTest() { var container = new PandaContainer(); container.RegisterSingletonType <IRegistrationTest>(() => new RegistrationTest { Name = "CustomName", Value = "CustomValue" }); var instance = container.Resolve <IRegistrationTest>(); instance.Name.ShouldBe("CustomName"); instance.Value.ShouldBe("CustomValue"); var anotherInstance = container.Resolve <IRegistrationTest>(); anotherInstance.ShouldBeSameAs(instance); }