public void ShouldReturnZeroOnEmpty() { var emptyReviewer = ReviewerBuilder.BuildReviewerWithNoReviews(); var similarReviews = new List<string>(); var sumDifferenceSquares = new SumDifferenceSquares(similarReviews, emptyReviewer.Reviews, emptyReviewer.Reviews).Calculate(); Assert.AreEqual(0.0, sumDifferenceSquares); }
public void ShouldReturnZeroWithNoSimilarReviews() { var highScoreReviewer = ReviewerBuilder.BuildAllMaxScores(); var lowScoreReviewer = ReviewerBuilder.BuildAllMidScores(); var similarReviews = new List<string>(); var sumDifferenceSquares = new SumDifferenceSquares(similarReviews, highScoreReviewer.Reviews, lowScoreReviewer.Reviews).Calculate(); Assert.AreEqual(0.0, sumDifferenceSquares); }
public void ShouldReturnZeroWithIdenticalReviews() { var highScoreReviewer = ReviewerBuilder.BuildOneReviewMax(); var similarReviews = new List<string>(); similarReviews.Add("C# in Depth"); var sumDifferenceSquares = new SumDifferenceSquares(similarReviews, highScoreReviewer.Reviews, highScoreReviewer.Reviews).Calculate(); Assert.AreEqual(0.0, sumDifferenceSquares); }
public void ShouldCalculateTheSumOfTheSquareOfTheDifferenceOfASingleSimilarReview() { var highScoreReviewer = ReviewerBuilder.BuildOneReviewMax(); var lowScoreReviewer = ReviewerBuilder.BuildOneReviewMid(); var similarReviews = new List<string>(); similarReviews.Add("C# in Depth"); var sumDifferenceSquares = new SumDifferenceSquares(similarReviews, highScoreReviewer.Reviews, lowScoreReviewer.Reviews).Calculate(); Assert.AreEqual(4.0, sumDifferenceSquares); }
public void ShouldCalculateTheSumOfTheSquareOfTheDifferenceOfMultipleSimilarReviews() { var highScoreReviewer = ReviewerBuilder.BuildAllMaxScores(); var lowScoreReviewer = ReviewerBuilder.BuildAllMidScores(); var similarReviews = new List<string>(); similarReviews.Add("C# in Depth"); similarReviews.Add("Refactoring"); similarReviews.Add("Clean Code"); var sumDifferenceSquares = new SumDifferenceSquares(similarReviews, highScoreReviewer.Reviews, lowScoreReviewer.Reviews).Calculate(); Assert.AreEqual(12.0, sumDifferenceSquares); }
public double Score() { SimilarReviews = new FindSimilarReviews(R1.Reviews, R2.Reviews).Calculate(); if (ReviewersHaveNoSimilarReviews()) { return 0.0; } var sumDifferenceSquares = new SumDifferenceSquares(SimilarReviews, R1.Reviews, R2.Reviews).Calculate(); return NormalizeAnswer(sumDifferenceSquares); }