GroupTemplate extends AbstractTemplate implements GroupOperations { public GroupMemberships getGroupMemberships() { return restOperations.getForObject(GROUP_MEMBERSHIPS_URL, GroupMemberships.class); } GroupTemplate(RestOperations restOperations); Group getGroupDetails(Integer id); GroupMemberships getGroupMemberships(); GroupMemberships getGroupMemberships(int start, int count); GroupSuggestions getGroupSuggestions(); GroupSuggestions getGroupSuggestions(int start, int count); GroupPosts getPosts(Integer groupId); GroupPosts getPosts(Integer groupId, int start, int count); PostComments getPostComments(String postId); PostComments getPostComments(String postId, int start, int count); void joinGroup(Integer groupId); void leaveGroup(Integer groupId); URI createPost(Integer groupId, String title, String summary); void likePost(String postId); void unlikePost(String postId); void followPost(String postId); void unfollowPost(String postId); void flagPostAsJob(String postId); void flagPostAsPromotion(String postId); void deleteOrFlagPostAsInappropriate(String postId); void addCommentToPost(String postId, String text); void deleteOrFlagCommentAsInappropriate(String commentId); void deleteGroupSuggestion(Integer groupId); static final String BASE_URL; static final String BASE_PEOPLE_URL; static final String GROUP_BASE_URL; static final String GROUP_POSTS_BASE_URL; static final String GROUP_DETAILS_URL; static final String GROUP_JOIN_LEAVE_URL; static final String GROUP_MEMBERSHIPS_URL; static final String GROUP_SUGGESTIONS_URL; static final String GROUP_SUGGESTION_DELETE_URL; static final String GROUP_POSTS_URL; static final String GROUP_POST_COMMENTS_URL; static final String GROUP_CREATE_POST_URL; static final String GROUP_POST_LIKE_URL; static final String GROUP_POST_FOLLOW_URL; static final String GROUP_POST_FLAG_URL; static final String GROUP_POST_DELETE_URL; static final String GROUP_POST_ADD_COMMENT_URL; static final String GROUP_POST_DELETE_COMMENT_URL; }
@Test public void getGroupMemberships() { mockServer.expect(requestTo(GroupTemplate.GROUP_MEMBERSHIPS_URL + "?oauth2_access_token=ACCESS_TOKEN")).andExpect(method(GET)) .andRespond(withSuccess(new ClassPathResource("group_memberships.json", getClass()), MediaType.APPLICATION_JSON)); GroupMemberships memberships = linkedIn.groupOperations().getGroupMemberships(); assertEquals(10, memberships.getCount()); assertEquals(0, memberships.getStart()); assertEquals(30, memberships.getTotal()); assertEquals(10, memberships.getMemberships().size()); GroupSettings s = memberships.getMemberships().get(0); assertEquals(true, s.getAllowMessagesFromMembers()); assertEquals(false, s.getEmailAnnouncementsFromManagers()); assertEquals(EmailDigestFrequency.NONE, s.getEmailDigestFrequency()); assertEquals(MembershipState.MEMBER, s.getMembershipState()); assertEquals(true, s.getShowGroupLogoInProfile()); assertEquals(new Integer(69286), s.getGroup().getId()); assertEquals("Software Architect Network", s.getGroup().getName()); }