private static void writeMembers(JsonWriter json, List<UserMembershipDto> users) { json.name("users").beginArray(); for (UserMembershipDto user : users) { json.beginObject() .prop(FIELD_LOGIN, user.getLogin()) .prop(FIELD_NAME, user.getName()) .prop(FIELD_SELECTED, user.getGroupId() != null) .endObject(); } json.endArray(); }
@Test public void should_be_sorted_by_user_name() { db.users().insertMember(group1, user1); db.users().insertMember(group2, user1); db.users().insertMember(group3, user1); db.users().insertMember(group2, user2); List<UserMembershipDto> result = underTest.selectMembers(db.getSession(), newQuery().groupId(group1.getId()).build(), 0, 10); assertThat(result).hasSize(2); assertThat(result.get(0).getName()).isEqualTo("Admin name"); assertThat(result.get(1).getName()).isEqualTo("Not Admin"); }
@Test public void members_should_be_paginated() { db.users().insertMember(group1, user1); db.users().insertMember(group2, user1); db.users().insertMember(group3, user1); db.users().insertMember(group2, user2); List<UserMembershipDto> result = underTest.selectMembers(db.getSession(), newQuery().groupId(group1.getId()).build(), 0, 2); assertThat(result).hasSize(2); assertThat(result.get(0).getName()).isEqualTo("Admin name"); assertThat(result.get(1).getName()).isEqualTo("Not Admin"); result = underTest.selectMembers(db.getSession(), newQuery().groupId(100).build(), 1, 2); assertThat(result).hasSize(1); assertThat(result.get(0).getName()).isEqualTo("Not Admin"); result = underTest.selectMembers(db.getSession(), newQuery().groupId(100).build(), 2, 1); assertThat(result).isEmpty(); }
private static void writeMembers(JsonWriter json, List<UserMembershipDto> users) { json.name("users").beginArray(); for (UserMembershipDto user : users) { json.beginObject() .prop(FIELD_LOGIN, user.getLogin()) .prop(FIELD_NAME, user.getName()) .prop(FIELD_SELECTED, user.getGroupId() != null) .endObject(); } json.endArray(); }
@Test public void search_by_user_name_or_login() { db.users().insertMember(group1, user1); db.users().insertMember(group2, user1); db.users().insertMember(group3, user1); db.users().insertMember(group2, user2); List<UserMembershipDto> result = underTest.selectMembers(db.getSession(), newQuery().groupId(group1.getId()).memberSearch("admin").build(), 0, 10); assertThat(result).hasSize(2); assertThat(result.get(0).getName()).isEqualTo("Admin name"); assertThat(result.get(1).getName()).isEqualTo("Not Admin"); result = underTest.selectMembers(db.getSession(), newQuery().groupId(group1.getId()).memberSearch("not").build(), 0, 10); assertThat(result).hasSize(1); }