public void APropertyReturningMethodInfoReceivesAConcatenationOfInput() { var gen0 = Gen.Int32(); var gen1 = Gen.Int32(); var forAllProperty = Property.ForAll(gen0, gen1, (x, y) => true); var forAllPropertyInput = forAllProperty.Select(x => new object[] { x.Input.Item1, x.Input.Item2 }); var methodInfoProperty = Property.Reflect(GetMethod(nameof(ARecursiveProperty)), this); var methodInfoPropertyInput = methodInfoProperty.Select(x => x.PresentedInput); GenAssert.Equal(forAllPropertyInput, methodInfoPropertyInput, 0, 1); }
public void ABooleanReturningMethodInfoReceivesInputLikeForAll() { var gen0 = Gen.Int32(); var gen1 = Gen.Int32(); var forAllProperty = Property.ForAll(gen0, gen1, (x, y) => true); var forAllPropertyInput = forAllProperty.Select(x => new object[] { x.Input.Item1, x.Input.Item2 }); Func <int, int, bool> f = (x, y) => true; var methodInfoProperty = Property.Reflect(f.Method, null); var methodInfoPropertyInput = methodInfoProperty.Select(x => x.Input); GenAssert.Equal(forAllPropertyInput, methodInfoPropertyInput, 0, 10); }
public void AVoidMethodInfoReceivesInputLikeForAll() { var gen0 = Gen.Int32(); var gen1 = Gen.Int32(); var forAllProperty = Property.ForAll(gen0, gen1, (x, y) => { }); var forAllPropertyInput = forAllProperty.Select(x => new object[] { x.Input.Item1, x.Input.Item2 }); Action <int, int> f = (x, y) => { }; var methodInfoProperty = Property.Reflect(f.Method, null); var methodInfoPropertyInput = methodInfoProperty.Select(x => x.Input); GenAssert.Equal(forAllPropertyInput, methodInfoPropertyInput, 0, 10); }