public void GetSingle_France_GetsCompanyATax() { //Arange var ioc = new IOC(); ioc.Register<ICalculateTax>("CompanyATax", "UK"); ioc.Register<ICalculateTax>("CompanyATax", "France"); ioc.Register<ICalculateTax>("CompanyATax", "USA"); //Act var item = ioc.GetSingleByCountry<ICalculateTax>("France"); //Asert Assert.IsInstanceOfType(item, typeof(CompanyATax)); }
public void GetSingle_UK_GetsCompanyBUKTax_Value() { //Arange var ioc = new IOC(); ioc.Register<ICalculateTax>("CompanyBUKTax", "UK"); ioc.Register<ICalculateTax>("FranceTax", "France"); ioc.Register<ICalculateTax>("USATax", "USA"); //Act var item = ioc.GetSingleByCountry<ICalculateTax>("UK"); item.Pay = 100; var value = item.CalculateTax(); //Asert Assert.AreEqual(value, 90); }