@Nonnull @Override public MetricResult measureUser(TestUser user, ResultMap predictions, Context context) { int n = user.getTestRatings().size(); int good = predictions.size(); assert LongUtils.setDifference(LongUtils.asLongSet(predictions.keySet()), user.getTestRatings().keySet()) .isEmpty(); context.addUser(n, good); return new Coverage(n, good); }
@Test public void testEmptySetSubset() { LongSortedArraySet set = emptySet(); LongSortedSet sset = set.headSet(50); assertTrue(sset.isEmpty()); assertEquals(0, sset.size()); assertFalse(set.iterator().hasNext()); assertFalse(set.iterator().hasPrevious()); assertFalse(set.contains(42)); assertFalse(set.contains(Long.valueOf(42))); }
/** * Run a battery of tests on a standard set. Used to test a variety of * construction scenarios with less code duplication. * * @param set The set {2, 5, 6}. */ private void testSetSimple(LongSortedSet set) { assertFalse(set.isEmpty()); assertEquals(3, set.size()); assertEquals(2, set.firstLong()); assertEquals(6, set.lastLong()); assertEquals(Long.valueOf(2), set.first()); assertEquals(Long.valueOf(6), set.last()); assertTrue(set.contains(2)); assertTrue(set.contains(5)); assertTrue(set.contains(6)); assertFalse(set.contains(0)); assertFalse(set.contains(42)); assertFalse(set.iterator().hasPrevious()); long[] items = LongIterators.unwrap(set.iterator()); assertEquals(2, items[0]); assertEquals(5, items[1]); assertEquals(6, items[2]); }
@Nonnull @Override public MetricResult measureUser(TestUser user, ResultMap predictions, Context context) { int n = user.getTestRatings().size(); int good = predictions.size(); assert LongUtils.setDifference(LongUtils.asLongSet(predictions.keySet()), user.getTestRatings().keySet()) .isEmpty(); context.addUser(n, good); return new Coverage(n, good); }