using System; using System.Collections.Generic; using System.Linq; namespace WireMock.Matchers { /// /// MatchScores /// public static class MatchScores { /// /// The tolerance /// public const double Tolerance = 0.0001; /// /// The default mismatch score /// public const double Mismatch = 0.0; /// /// The default perfect match score /// public const double Perfect = 1.0; /// /// Convert a bool to the score. /// /// if set to true [value]. /// score public static double ToScore(bool value) { return value ? Perfect : Mismatch; } /// /// Calculates the score from multiple funcs. /// /// The values. /// score public static double ToScore(IEnumerable values) { var list = values.Select(ToScore).ToList(); return list.Sum() / list.Count; } /// /// Calculates the score from multiple funcs. /// /// The values. /// score public static double ToScore(IEnumerable values) { var list = values.ToList(); return list.Sum() / list.Count; } } }