public void ResolvingPrimitivesThroughProperties() { MutableConfiguration config = new MutableConfiguration("component"); MutableConfiguration parameters = (MutableConfiguration ) config.Children.Add(new MutableConfiguration("parameters")); parameters.Children.Add(new MutableConfiguration("name", "hammett")); parameters.Children.Add(new MutableConfiguration("address", "something")); parameters.Children.Add(new MutableConfiguration("age", "25")); kernel.ConfigurationStore.AddComponentConfiguration("customer", config); kernel.AddComponent("customer", typeof(ICustomer), typeof(CustomerImpl)); expectedClient = kernel.GetHandler("customer").ComponentModel; expectedModels = new ArrayList(); foreach (PropertySet prop in kernel.GetHandler("customer").ComponentModel.Properties) { expectedModels.Add(prop.Dependency); } ICustomer customer = (ICustomer)kernel["customer"]; Assert.IsNotNull(customer); }
private void AssertEvent(Castle.Model.ComponentModel client, Castle.Model.DependencyModel model, object dependency) { bool ok = false; Assert.AreEqual(expectedClient, client); foreach (DependencyModel expectedModel in expectedModels) { if (expectedModel.Equals(model)) { ok = true; break; } } Assert.IsTrue(ok); Assert.IsNotNull(dependency); }
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); }
public void ResolvingConcreteClassThroughProperties() { kernel.AddComponent("spamservice", typeof(DefaultSpamService)); 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(); foreach (PropertySet prop in kernel.GetHandler("spamservice").ComponentModel.Properties) { expectedModels.Add(prop.Dependency); } DefaultSpamService spamservice = (DefaultSpamService)kernel["spamservice"]; Assert.IsNotNull(spamservice); }