public static string ValueProviderToString(IValueProvider provider) { Contract.Assert(provider != null); CompositeValueProvider composite = provider as CompositeValueProvider; if (composite == null) { return(provider.GetType().Name); } string providerList = string.Join(", ", composite.Select <IValueProvider, string>(ValueProviderToString)); return(provider.GetType().Name + "(" + providerList + ")"); }
public void GetValueProviderReturnsChildActionValue() { // Arrange ChildActionValueProviderFactory factory = new ChildActionValueProviderFactory(); ControllerContext controllerContext = new ControllerContext(); controllerContext.RouteData = new RouteData(); string conflictingKey = "conflictingKey"; controllerContext.RouteData.Values["conflictingKey"] = 43; DictionaryValueProvider <object> explictValueDictionary = new DictionaryValueProvider <object>(new RouteValueDictionary { { conflictingKey, 42 } }, CultureInfo.InvariantCulture); controllerContext.RouteData.Values[ChildActionValueProvider.ChildActionValuesKey] = explictValueDictionary; // Act IValueProvider valueProvider = factory.GetValueProvider(controllerContext); // Assert Assert.Equal(typeof(ChildActionValueProvider), valueProvider.GetType()); ValueProviderResult vpResult = valueProvider.GetValue(conflictingKey); Assert.NotNull(vpResult); Assert.Equal(42, vpResult.RawValue); Assert.Equal("42", vpResult.AttemptedValue); Assert.Equal(CultureInfo.InvariantCulture, vpResult.Culture); }
public void GetValueProviderReturnsNullIfKeyIsNotInChildActionDictionary() { // Arrange ChildActionValueProviderFactory factory = new ChildActionValueProviderFactory(); ControllerContext controllerContext = new ControllerContext(); controllerContext.RouteData = new RouteData(); controllerContext.RouteData.Values["forty-two"] = 42; DictionaryValueProvider <object> explictValueDictionary = new DictionaryValueProvider <object>(new RouteValueDictionary { { "forty-three", 42 } }, CultureInfo.CurrentUICulture); controllerContext.RouteData.Values[ChildActionValueProvider.ChildActionValuesKey] = explictValueDictionary; // Act IValueProvider valueProvider = factory.GetValueProvider(controllerContext); // Assert Assert.Equal(typeof(ChildActionValueProvider), valueProvider.GetType()); ValueProviderResult vpResult = valueProvider.GetValue("forty-two"); Assert.Null(vpResult); }
public void GetValueProvider() { // Arrange Mock <MockableUnvalidatedRequestValues> mockUnvalidatedValues = new Mock <MockableUnvalidatedRequestValues>(); QueryStringValueProviderFactory factory = new QueryStringValueProviderFactory( _ => mockUnvalidatedValues.Object ); Mock <ControllerContext> mockControllerContext = new Mock <ControllerContext>(); mockControllerContext .Setup(o => o.HttpContext.Request.QueryString) .Returns(_backingStore); // Act IValueProvider valueProvider = factory.GetValueProvider(mockControllerContext.Object); // Assert Assert.Equal(typeof(QueryStringValueProvider), valueProvider.GetType()); ValueProviderResult vpResult = valueProvider.GetValue("foo"); Assert.NotNull(vpResult); Assert.Equal("fooValue", vpResult.AttemptedValue); Assert.Equal(CultureInfo.InvariantCulture, vpResult.Culture); }
public void GetValueProvider() { // Arrange HttpFileCollectionValueProviderFactory factory = new HttpFileCollectionValueProviderFactory(); Mock <ControllerContext> mockControllerContext = new Mock <ControllerContext>(); mockControllerContext.Expect(o => o.HttpContext.Request.Files.Count).Returns(0); // Act IValueProvider valueProvider = factory.GetValueProvider(mockControllerContext.Object); // Assert Assert.AreEqual(typeof(HttpFileCollectionValueProvider), valueProvider.GetType()); }
public async Task ValidOutputParameter_Returns_CorrectValueProvider(ParameterInfo parameter, Type expectedBindingType) { // Note: this test is mostly testing the GenericBinder scenarios that EasyTable uses for output bindings. // It should eventually make its way to those unit tests. // Arrange var provider = new EasyTableAttributeBindingProvider(_jobConfig, _easyTableConfig, _jobConfig.NameResolver); var context = new BindingProviderContext(parameter, null, CancellationToken.None); IBinding binding = await provider.TryCreateAsync(context); // Act IValueProvider valueProvider = await binding.BindAsync(null, null); // Assert Assert.Equal(expectedBindingType, valueProvider.GetType()); }
public void GetValueProviderReturnsNullIfNoChildActionDictionary() { // Arrange ChildActionValueProviderFactory factory = new ChildActionValueProviderFactory(); ControllerContext controllerContext = new ControllerContext(); controllerContext.RouteData = new RouteData(); controllerContext.RouteData.Values["forty-two"] = 42; // Act IValueProvider valueProvider = factory.GetValueProvider(controllerContext); // Assert Assert.Equal(typeof(ChildActionValueProvider), valueProvider.GetType()); ValueProviderResult vpResult = valueProvider.GetValue("forty-two"); Assert.Null(vpResult); }
public void GetValueProvider() { // Arrange QueryStringValueProviderFactory factory = new QueryStringValueProviderFactory(); Mock <ControllerContext> mockControllerContext = new Mock <ControllerContext>(); mockControllerContext.Expect(o => o.HttpContext.Request.QueryString).Returns(_backingStore); // Act IValueProvider valueProvider = factory.GetValueProvider(mockControllerContext.Object); // Assert Assert.AreEqual(typeof(QueryStringValueProvider), valueProvider.GetType()); ValueProviderResult vpResult = valueProvider.GetValue("foo"); Assert.IsNotNull(vpResult, "Should have contained a value for key 'foo'."); Assert.AreEqual("fooValue", vpResult.AttemptedValue); Assert.AreEqual(CultureInfo.InvariantCulture, vpResult.Culture); }
public void GetValueProvider() { // Arrange Mock <MockableUnvalidatedRequestValues> mockUnvalidatedValues = new Mock <MockableUnvalidatedRequestValues>(); FormValueProviderFactory factory = new FormValueProviderFactory(_ => mockUnvalidatedValues.Object); Mock <ControllerContext> mockControllerContext = new Mock <ControllerContext>(); mockControllerContext.Setup(o => o.HttpContext.Request.Form).Returns(_backingStore); // Act IValueProvider valueProvider = factory.GetValueProvider(mockControllerContext.Object); // Assert Assert.AreEqual(typeof(FormValueProvider), valueProvider.GetType()); ValueProviderResult vpResult = valueProvider.GetValue("foo"); Assert.IsNotNull(vpResult, "Should have contained a value for key 'foo'."); Assert.AreEqual("fooValue", vpResult.AttemptedValue); Assert.AreEqual(CultureInfo.CurrentCulture, vpResult.Culture); }
public void GetValueProvider() { // Arrange RouteDataValueProviderFactory factory = new RouteDataValueProviderFactory(); ControllerContext controllerContext = new ControllerContext(); controllerContext.RouteData = new RouteData(); controllerContext.RouteData.Values["forty-two"] = 42; // Act IValueProvider valueProvider = factory.GetValueProvider(controllerContext); // Assert Assert.AreEqual(typeof(RouteDataValueProvider), valueProvider.GetType()); ValueProviderResult vpResult = valueProvider.GetValue("forty-two"); Assert.IsNotNull(vpResult, "Should have contained a value for key 'forty-two'."); Assert.AreEqual(42, vpResult.RawValue); Assert.AreEqual("42", vpResult.AttemptedValue); Assert.AreEqual(CultureInfo.InvariantCulture, vpResult.Culture); }
public static string ValueProviderToString(IValueProvider provider) { Contract.Assert(provider != null); CompositeValueProvider composite = provider as CompositeValueProvider; if (composite == null) { return provider.GetType().Name; } string providerList = String.Join(", ", composite.Select<IValueProvider, string>(ValueProviderToString)); return provider.GetType().Name + "(" + providerList + ")"; }