public Rating rating(long uid, long iid, double rating) { return Rating.newBuilder() .setId(++entityId) .setUserId(uid) .setItemId(iid) .setRating(rating) .build(); }
public Rating rating(long uid, long iid, double rating, long timestamp) { return Rating.newBuilder() .setId(++entityId) .setUserId(uid) .setItemId(iid) .setRating(rating) .setTimestamp(timestamp) .build(); }
@Override public Rating next() { long id = ids.next(); while (usedIds.contains(id)) { id = ids.next(); } usedIds.add(id); RatingBuilder rb = Rating.newBuilder() .setId(id) .setUserId(userIds.next()) .setItemId(itemIds.next()) .setRating(values.next()); if (timestamps != null) { rb.setTimestamp(timestamps.next()); } return rb.build(); } }
@Test public void testWithMissingAttribute() { Rating r = Rating.newBuilder() .setId(42) .setUserId(100) .setItemId(50) .setRating(3.5) .build(); EntityCollection ec = EntityCollection.newBuilder(CommonTypes.RATING, Rating.ATTRIBUTES) .add(r) .build(); assertThat(ec, contains(r)); } }
@Test public void testAddEntityLayout() { EntityCollectionDAOBuilder b = EntityCollectionDAO.newBuilder(); b.addEntityLayout(Rating.ENTITY_TYPE, Rating.ATTRIBUTES); Rating r = Rating.newBuilder() .setId(42) .setUserId(100) .setItemId(50) .setRating(3.5) .setTimestamp(1034801) .build(); b.addEntity(r); EntityCollectionDAO dao = b.build(); assertThat(dao.getEntityIds(CommonTypes.RATING), contains(42L)); assertThat(dao.streamEntities(CommonTypes.RATING) .collect(Collectors.toList()), contains(r)); assertThat(dao.query(Rating.class) .get(), contains(r)); }
public Rating rating(long uid, long iid, double rating) { return Rating.newBuilder() .setId(++entityId) .setUserId(uid) .setItemId(iid) .setRating(rating) .build(); }
public Rating rating(long uid, long iid, double rating, long timestamp) { return Rating.newBuilder() .setId(++entityId) .setUserId(uid) .setItemId(iid) .setRating(rating) .setTimestamp(timestamp) .build(); } }
@Override public Rating next() { long id = ids.next(); while (usedIds.contains(id)) { id = ids.next(); } usedIds.add(id); RatingBuilder rb = Rating.newBuilder() .setId(id) .setUserId(userIds.next()) .setItemId(itemIds.next()) .setRating(values.next()); if (timestamps != null) { rb.setTimestamp(timestamps.next()); } return rb.build(); } }