public void ConstructorFromExpression_InstanceProperty_Ok() { Argument <int> argument = ArgumentFactory.FromExpression(() => PrivateTestProperty); Assert.Equal(nameof(PrivateTestProperty), argument.Name); Assert.Equal(PrivateTestProperty, argument.Value); }
public void ConstructorFromExpression_Constant_Ok() { Argument <int> argument = ArgumentFactory.FromExpression(() => 1); Assert.Equal("Static value", argument.Name); Assert.Equal(1, argument.Value); }
public void ConstructorFromExpression_Constructor_Ok() { int value = 1; Argument <int?> argument = ArgumentFactory.FromExpression(() => new int?(value)); Assert.Equal("Static value", argument.Name); Assert.Equal(new int?(value), argument.Value); }
public void ConstructorFromExpression_Variable_Ok() { int variableName = 1; Argument <int> argument = ArgumentFactory.FromExpression(() => variableName); Assert.Equal(nameof(variableName), argument.Name); Assert.Equal(variableName, argument.Value); }
public void ConstructorFromExpression_ObjectProperty_Ok() { ArgumentFactoryTest objWithProperty = new ArgumentFactoryTest(); Argument <int> argument = ArgumentFactory.FromExpression(() => objWithProperty.PrivateTestProperty); Assert.Equal(nameof(PrivateTestProperty), argument.Name); Assert.Equal(PrivateTestProperty, argument.Value); }
/// <summary> /// Start validaton for an argument. /// WARNING. /// </summary> /// <typeparam name="T">Any type</typeparam> /// <param name="value">Validated argument</param> /// <returns>An object on which to call validation methods</returns> public static Argument <T> Validate <T>(Expression <Func <T> > value) { return(ArgumentFactory.FromExpression(value)); }