public void Test_GetConfigurationForTargets_ReturnsProperConfiguration() { var targetProvider = new Mock <IConfigTargetProvider>(); var integerProp = 123; var dateTimeProp = new DateTime(2015, 3, 21, 9, 9, 11); var timeSpanProp = new TimeSpan(1, 2, 23, 1, 100); var devStringProp = "str1"; var devBooleanProp = true; var devDecimalProp = 12.356m; var configProvider = new ConfigProvider(targetProvider.Object); var config = configProvider.GetConfigurationForTargets <SimpleFlatConfiguration>(new[] { "prod", "dev" }); Assert.AreEqual(devStringProp, config.StringProp); Assert.AreEqual(devBooleanProp, config.BooleanProp); Assert.AreEqual(integerProp, config.IntegerProp); Assert.AreEqual(dateTimeProp, config.DateTimeProp); Assert.AreEqual(timeSpanProp, config.TimeSpanProp); Assert.AreEqual(devDecimalProp, config.DecimalProp); }