예제 #1
0
        public override async Task <StatementProofResult> Eval <TArg1, TResult>(
            IStatementMetadata <TArg1, TResult> statement)
        {
            var statementDataGenerator = DataGeneratorFactory.For(statement.Argument1.Predicate);

            for (var i = 0; i < _timesToRun; i++)
            {
                var trueData = await statementDataGenerator.NextTrue();

                if (!await statement.Result.Predicate.Eval(statement.Method(trueData)))
                {
                    return(StatementProofResult.Failed($"Failed on {trueData}."));
                }
            }

            return(StatementProofResult.Successful());
        }
예제 #2
0
 public abstract Task <StatementProofResult> Eval <TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TArg8, TResult>(
     IStatementMetadata <TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TArg8, TResult> statement);
예제 #3
0
 public abstract Task <StatementProofResult> Eval <TArg1, TResult>(
     IStatementMetadata <TArg1, TResult> statement);
예제 #4
0
 public override Task <StatementProofResult> Eval <TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TArg8, TResult>(
     IStatementMetadata <TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TArg8, TResult> statement)
 {
     throw new NotImplementedException();
 }