private List <IMutator> LoadCustomMutatorList(List <string> mutatorOperators) { Log.Info("..found mutators in config."); var mutators = new List <IMutator>(); foreach (var mutationOperator in mutatorOperators) { if (Enum.TryParse <MutationOperators>(mutationOperator, true, out var mutationOperatorEnum)) { Log.Info($"Adding '{mutationOperator}' mutator"); mutators.Add(MutationOperatorFactory.GetMutationOperator(mutationOperatorEnum)); continue; } throw new OpenProjectException( $"Could not parse '{mutationOperator}'. Make sure that you use a correct operator."); } return(mutators); }
private IList <IMutator> GetMutators(List <string> mutationOperators) { LogTo.Info("Loading mutators.."); if (mutationOperators == null || !mutationOperators.Any()) { LogTo.Info("..did not find any mutators in config so loading default ones."); return(new List <IMutator> { new MathMutator(), new ConditionalBoundaryMutator(), new NegateConditionalMutator(), new ReturnValueMutator(), new IncrementsMutator(), new NegateTypeCompabilityMutator(), }); } LogTo.Info("..found mutators in config."); var mutators = new List <IMutator>(); foreach (var mutationOperator in mutationOperators) { if (Enum.TryParse <MutationOperators>(mutationOperator, true, out var mutationOperatorEnum)) { LogTo.Info($"Adding '{mutationOperator}' mutator"); mutators.Add(MutationOperatorFactory.GetMutationOperator(mutationOperatorEnum)); continue; } throw new OpenProjectException($"Could not parse '{mutationOperator}'. Make sure that you use a correct operator."); } return(mutators); }