public void TestClosestSets() { var sets1 = new Set<Set<MetricInteger>> { new Set<MetricInteger>{new MetricInteger(1), new MetricInteger(3)}, new Set<MetricInteger>{new MetricInteger(5), new MetricInteger(6)} }; var sets2 = new Set<Set<MetricInteger>> { new Set<MetricInteger>{new MetricInteger(7), new MetricInteger(9)}, new Set<MetricInteger>{new MetricInteger(16), new MetricInteger(19)} }; var closest = sets1.Closest(sets2); var elements = closest.Item1; var distance = closest.Item2; distance.ShouldEqual(1); elements.Item1.ShouldContain(new MetricInteger(5), new MetricInteger(6)); elements.Item2.ShouldContain(new MetricInteger(7), new MetricInteger(9)); }
public void TestClosestElementsOfSet() { var set1 = new Set<MetricInteger> { new MetricInteger(1), new MetricInteger(4), new MetricInteger(6), new MetricInteger(11) }; var set2 = new Set<MetricInteger> { new MetricInteger(7), new MetricInteger(27), new MetricInteger(17), new MetricInteger(-5) }; var closest = set1.Closest(set2); var elements = closest.Item1; var distance = closest.Item2; distance.ShouldEqual(1); elements.Item1.ShouldEqual(new MetricInteger(6)); elements.Item2.ShouldEqual(new MetricInteger(7)); }