public void FindMatchProposalsTransform_FindsSingleQueryIntersection() { var ratings = TinyRatingSet.Setup(); FindMatchProposalsTransform.Execute(ratings, k_Intersection); Assert.True(k_Intersection.SetEquals(TinyRatingSet.expectedMatchSet)); }
public void MatchReductionTransform_SingleEntry() { var ratings = TinyRatingSet.Setup(); MatchReductionTransform.Execute(ratings, TinyRatingSet.expectedMatchSet, m_Ratings); Assert.AreEqual(TinyRatingSet.expectedMatchSet.Count, m_Ratings.Count); AssertUtils.MatchRatingsValid(TinyRatingSet.expectedMatchSet, m_Ratings); AssertUtils.MatchRatingsSorted(m_Ratings); }
public void MatchReductionTransform_AllEntries() { var ratings = TinyRatingSet.Setup(); var dataTransform = new MatchReductionTransform() { WorkingIndices = new List <int> { 1 }, Input1 = new [] { ratings, ratings }, Input2 = new [] { TinyRatingSet.expectedMatchSet, TinyRatingSet.expectedMatchSet }, Output = CreateRatingsArray() }; dataTransform.Complete(); Assert.Zero(dataTransform.Output[0].Count); // index 0 wasn't processed, so no matches Assert.AreEqual(dataTransform.Output[1].Count, TinyRatingSet.expectedMatchSet.Count); }
public void FindMatchProposalsTransform_SkipsNonWorkingIndices() { var ratings = TinyRatingSet.Setup(); // this transform should only process index 1 var dataTransform = new FindMatchProposalsTransform() { WorkingIndices = new List <int> { 1 }, Input1 = new List <int>(), Input2 = new [] { ratings, ratings }, Output = new [] { new HashSet <int>(), new HashSet <int>() } }; dataTransform.Complete(); Assert.Zero(dataTransform.Output[0].Count); // index 0 wasn't processed, so no matches Assert.Greater(dataTransform.Output[1].Count, 0); // index 1 was processed, so has matches }