public void ReturnsNullIfUnknownType() { var result = new MethodParameterValueProvider(new Dictionary <string, string> { }, () => null).GetValue(typeof(TypeWithParameterMethod <object>).GetMethod("Method").GetParameters().Single()); Assert.Null(result); }
public void SupportsDoubleValue() { var value = 134.235; var result = new MethodParameterValueProvider(new Dictionary <string, string> { ["parameter"] = value.ToString(CultureInfo.InvariantCulture) }, () => null).GetValue(typeof(TypeWithParameterMethod <double>).GetMethod("Method").GetParameters().Single()); Assert.Equal(value, result); }
public void SupportsStringValueCaseInsensitive() { var value = "lorem-ipsum"; var result = new MethodParameterValueProvider(new Dictionary <string, string> { ["ParameteR"] = value }, () => null).GetValue(typeof(TypeWithParameterMethod <string>).GetMethod("Method").GetParameters().Single()); Assert.Equal(value, result); }
public void SupportsJsonValueFromRequestBody() { var value = new MyClass { MyValue = "lorem-ipsum" }; var result = new MethodParameterValueProvider(new Dictionary <string, string> { }, () => JsonConvert.SerializeObject(value)).GetValue(typeof(TypeWithParameterMethodFromRequestBody).GetMethod("Method").GetParameters().Single()); Assert.Equal(JsonConvert.SerializeObject(value), JsonConvert.SerializeObject(result)); }