GroupsResource extends Resource { public CallSpec<List<Post>, HttpError> getAllPostsOfGroup(String groupId) { return Resource.<List<Post>, HttpError>newGetSpec(api, "/v1/groups/{group_id}/posts") .responseAs(list(Post.class, "posts", "items")) .pathParam("group_id", groupId) .build(); } GroupsResource(XingApi api); CallSpec<List<Group>, HttpError> getUsersGroups(String userId); CallSpec<List<Group>, HttpError> getOwnGroups(); @Experimental CallSpec<List<Group>, HttpError> findGroupByKeyword(String keywords); CallSpec<List<Forum>, HttpError> getForumsOfGroup(String groupId); CallSpec<List<Post>, HttpError> getPostsOfForum(String forumId); CallSpec<Post, HttpError> getPostInGroup(String postId); CallSpec<List<Post>, HttpError> getAllPostsOfGroup(String groupId); CallSpec<List<XingUser>, HttpError> getLikersOfPost(String postId); CallSpec<Void, HttpError> likePost(String postId); CallSpec<Void, HttpError> unlikePost(String postId); CallSpec<List<Comment>, HttpError> getCommentsOfPost(String postId); CallSpec<Void, HttpError> addCommentToPost(String content, String postId); CallSpec<Void, HttpError> deleteCommentOfPost(String commentId); CallSpec<List<XingUser>, HttpError> getLikersOfComment(String commentId); CallSpec<Void, HttpError> likeComment(String commentId); CallSpec<Void, HttpError> unlikeComment(String commentId); CallSpec<Void, HttpError> markAllPostsAsRead(String groupId); CallSpec<Membership, HttpError> joinGroup(String groupId); CallSpec<Post, HttpError> createPost(String title, String content, String forumId); CallSpec<Void, HttpError> deletePost(String postId); CallSpec<Void, HttpError> leaveGroup(String groupId); CallSpec<MediaPreview, HttpError> createMediaPreview(String url);  }
@Test public void getAllPostsOfGroup() throws Exception { server.enqueue(new MockResponse().setBody(file("groups/posts_of_group.json"))); Response<List<Post>, HttpError> response = resource.getAllPostsOfGroup("1234123").execute(); assertThat(response.body()).isNotNull(); assertThat(response.body().size()).isEqualTo(10); Post firstPost = response.body().get(0); assertThat(firstPost).isNotNull(); assertThat(firstPost.title()).isEqualTo("Android-Entwickler (M/W) - Region Oldenburg (Oldb) - Hamburg"); assertThat(firstPost.content()).isEqualTo( "Android Entwickler (M/W) - Oldenburg (Oldb) oder Hamburg\n" + "\n" + "Nur wenn man etwas wirklich gern macht, macht man es auch wirklich gut. Wir legen daher großen " + "Wert auf eine angenehme Atmosphäre, die es unseren Entwicklern und Beratern erlaubt, das " + "auszuleben, was sie bei all ihrer Vielfalt verbindet: ihre Leidenschaft für Technik, Computer und " + "Programme. Wir bieten eine anspruchsvolle Position mit viel Abwechslung in den Aufgabenstellungen " + "und Kundenprojekten. Für die tägliche Arbeit bekommst Du den nötigen Freiraum, den Du brauchst - " + "und auch interne Verantwortung für Deine eigenen Projekte. Wir arbeiten in einem jungen, " + "aufgeschlossenen Team und modernem Arbeitsumfeld.\n" + "\n" + "Unsere gemeinsamen Aufgaben:\n" + "- Software-Entwicklung für Smartphone- und Tablet-Plattformen\n" + "(iPhone, iPad, Android, Windows-Phone)\n" + "- Programmierung plattformunabhängiger Software\n" + "- Portal- und Website-Entwicklung\n" + "- Technologie-Consulting\n" + "- UI / UX Design\n" + "\n" + "Deine Qualitäten:\n" + "- Erfolgreich abgeschlossenes Studium der Informatik/Wirtschaftsinformatik oder vergleichbare " + "Ausbildung mit entsprechendem Hintergrund\n" + "- Kenntnisse als Entwickler in Android ab Version 4 sowie den gängigen Tools (Android SDK)\n" + "- Erfahrungen im Testen, Releasen und Deployen von Android Apps\n" + "- idealer weise bereits Umgang mit agiler Projektmethode (SCRUM)\n" + "\n" + "Wir sind ein Softwareentwicklungshaus mit Hauptsitz in Oldenburg (Oldb) und einer Niederlassung in" + " Hamburg. Unser Team von 15 Mitmachern entwickelt individuelle Softwareapplikationen, z.B. mobile " + "Anwendungen für iPhone und Android. Viele zufriedene Kunden - insbesondere ein großes regionales " + "Energieunternehmen - profitieren von unserer mehrjährigen Erfahrung. Aufgrund unserer " + "hervorragenden Auftragslage wollen wir weiter wachsen.\n" + "\n" + "Kontaktaufnahme: \n" + "\n" + "Markus Kunle, Personalberater \n" + "expertum GmbH \n" + "01752626532\n" + "markus.kunle@expertum-gruppe.de"); assertThat(firstPost.likeCount()).isEqualTo(0); assertThat(firstPost.commentCount()).isEqualTo(0); }