public void ResolvingConcreteClassThroughConstructor() { kernel.AddComponent("spamservice", typeof(DefaultSpamServiceWithConstructor)); kernel.AddComponent("mailsender", typeof(DefaultMailSenderService)); kernel.AddComponent("templateengine", typeof(DefaultTemplateEngine)); DefaultSpamServiceWithConstructor spamservice = (DefaultSpamServiceWithConstructor)kernel["spamservice"]; Assert.IsNotNull(spamservice); Assert.IsNotNull(spamservice.MailSender); Assert.IsNotNull(spamservice.TemplateEngine); }
public void DependenciesSatisfiedAmongContainersUsingEvents() { IKernel subkernel = new DefaultKernel(); subkernel.AddComponent("spamservice", typeof(DefaultSpamServiceWithConstructor)); kernel.AddComponent("mailsender", typeof(DefaultMailSenderService)); kernel.AddComponent("templateengine", typeof(DefaultTemplateEngine)); kernel.AddChildKernel(subkernel); DefaultSpamServiceWithConstructor spamservice = (DefaultSpamServiceWithConstructor)subkernel["spamservice"]; Assert.IsNotNull(spamservice); Assert.IsNotNull(spamservice.MailSender); Assert.IsNotNull(spamservice.TemplateEngine); }
public void FactoryPattern() { kernel.AddComponent("spamservice", typeof(DefaultSpamServiceWithConstructor)); kernel.AddComponent("mailsender", typeof(DefaultMailSenderService)); kernel.AddComponent("templateengine", typeof(DefaultTemplateEngine)); kernel.AddComponent("factory", typeof(ComponentFactory)); ComponentFactory factory = (ComponentFactory)kernel["factory"]; Assert.IsNotNull(factory); DefaultSpamServiceWithConstructor spamservice = (DefaultSpamServiceWithConstructor)factory.Create("spamservice"); Assert.IsNotNull(spamservice); Assert.IsNotNull(spamservice.MailSender); Assert.IsNotNull(spamservice.TemplateEngine); }
public void ResolvingConcreteClassThroughConstructor() { kernel.AddComponent("spamservice", typeof(DefaultSpamServiceWithConstructor)); kernel.AddComponent("mailsender", typeof(DefaultMailSenderService)); kernel.AddComponent("templateengine", typeof(DefaultTemplateEngine)); DefaultMailSenderService mailservice = (DefaultMailSenderService)kernel["mailsender"]; DefaultTemplateEngine templateengine = (DefaultTemplateEngine)kernel["templateengine"]; Assert.IsNotNull(mailservice); Assert.IsNotNull(templateengine); expectedClient = kernel.GetHandler("spamservice").ComponentModel; expectedModels = new ArrayList(kernel.GetHandler("spamservice").ComponentModel.Constructors.FewerArgumentsCandidate.Dependencies); DefaultSpamServiceWithConstructor spamservice = (DefaultSpamServiceWithConstructor)kernel["spamservice"]; Assert.IsNotNull(spamservice); }