public void ConstructorAppliesConfigurationsInOrderDefinedbyAttribute() { var configA = new ConfigA(); var configB = new ConfigB(); var settings = new CassetteSettings(new IConfiguration <CassetteSettings>[] { configB, configA }); // Each config appends a letter to Version so we can test the order that they were called. settings.Version.ShouldEqual("AB"); }
public void ConstructorAppliesConfigurations() { var configA = new ConfigA(); var configB = new ConfigB(); var settings = new CassetteSettings(new IConfiguration <CassetteSettings>[] { configA, configB }); configA.AssertWasCalled(settings); configB.AssertWasCalled(settings); }
public void ConfigurationSectionTest() { UnityContainer unityContainer = (UnityContainer)ServiceLocator.Current.GetInstance <IUnityContainer>(); IAppConfig appConfig = Substitute.For <IAppConfig>(); appConfig.GetString(null).ReturnsForAnyArgs(ci => { switch (ci.Arg <string>().ToLower()) { case "configa:maxvalue": return("10"); case "configb:maxvalue": return("20"); } return(null); }); unityContainer.RegisterInstance(appConfig); ApplicationContext applicationContext = new ApplicationContext() { Container = unityContainer }; ConfigurationService configurationService = new ConfigurationService(new IConfigurationSection[2] { new ConfigA(applicationContext), new ConfigB(applicationContext) }); ConfigA configA = (ConfigA)configurationService["configA"]; ConfigB configB = (ConfigB)configurationService["configB"]; configA.Initialize(); configB.Initialize(); ushort maxValueA = configA.MaxValue; ushort maxValueB = configB.MaxValue; Assert.Equal(10, maxValueA); Assert.Equal(20, maxValueB); }