GroupDAO { public ImmutableSet<Group> getGroups() { List<Group> r = dslContext.selectFrom(GROUPS).fetch().map(groupMapper); return ImmutableSet.copyOf(r); } private  GroupDAO(DSLContext dslContext, GroupMapper groupMapper, ObjectMapper mapper); long createGroup(String name, String creator, String description, ImmutableMap<String, String> metadata); void deleteGroup(Group group); Optional<Group> getGroup(String name); Optional<Group> getGroupById(long id); ImmutableSet<Group> getGroups();  }
@Test public void getGroups() { assertThat(groupDAO.getGroups()).containsOnly(group1, group2); }