use of io.gravitee.am.model.common.Page in project gravitee-access-management by gravitee-io.
the class GroupsResourceTest method shouldGetGroups.
@Test
public void shouldGetGroups() {
final String domainId = "domain-1";
final Domain mockDomain = new Domain();
mockDomain.setId(domainId);
final Group mockGroup = new Group();
mockGroup.setId("group-id-1");
mockGroup.setReferenceId(domainId);
final Group mockGroup2 = new Group();
mockGroup2.setId("group-id-2");
mockGroup2.setReferenceId(domainId);
final List<Group> groups = Arrays.asList(mockGroup, mockGroup2);
final Page<User> pagedUsers = new Page(groups, 0, 2);
doReturn(Maybe.just(mockDomain)).when(domainService).findById(domainId);
doReturn(Single.just(pagedUsers)).when(groupService).findByDomain(domainId, 0, 10);
final Response response = target("domains").path(domainId).path("groups").queryParam("page", 0).queryParam("size", 10).request().get();
assertEquals(HttpStatusCode.OK_200, response.getStatus());
final Map entity = readEntity(response, Map.class);
assertTrue(((List) entity.get("data")).size() == 2);
}
use of io.gravitee.am.model.common.Page in project gravitee-access-management by gravitee-io.
the class JdbcAuditReporterTest method testReporter_searchTypes.
@Test
public void testReporter_searchTypes() {
int loop = 10;
List<String> types = new ArrayList<>();
for (int i = 0; i < loop; ++i) {
Audit reportable = buildRandomAudit(ReferenceType.DOMAIN, "testReporter_searchUser");
if (i % 2 == 0) {
types.add(reportable.getType());
}
auditReporter.report(reportable);
}
waitBulkLoadFlush();
AuditReportableCriteria criteria = new AuditReportableCriteria.Builder().types(types).build();
TestObserver<Page<Audit>> test = auditReporter.search(ReferenceType.DOMAIN, "testReporter_searchUser", criteria, 0, 20).test();
test.awaitTerminalEvent();
test.assertNoErrors();
test.assertValue(page -> page.getTotalCount() == types.size());
test.assertValue(page -> page.getCurrentPage() == 0);
test.assertValue(page -> page.getData() != null && page.getData().size() == types.size());
test.assertValue(page -> page.getData().stream().map(Audit::getId).distinct().count() == types.size());
test.assertValue(page -> page.getData().stream().map(Audit::getType).collect(Collectors.toList()).containsAll(types));
}
use of io.gravitee.am.model.common.Page in project gravitee-access-management by gravitee-io.
the class DefaultOrganizationUpgraderTest method shouldCreateSystemRoles_setOwnerRoleToExistingUsers.
@Test
public void shouldCreateSystemRoles_setOwnerRoleToExistingUsers() {
int totalUsers = 22;
User user = new User();
user.setId("user-1");
Role adminRole = new Role();
adminRole.setId("role-1");
Organization organization = new Organization();
organization.setId("orga-id");
List<User> users = Stream.iterate(0, i -> i++).limit(10).map(i -> user).collect(Collectors.toList());
when(organizationService.createDefault()).thenReturn(Maybe.just(organization));
when(organizationService.update(any(), any(), any())).thenReturn(Single.just(organization));
when(domainService.findById("admin")).thenReturn(Maybe.just(new Domain()));
when(domainService.delete("admin")).thenReturn(Completable.complete());
when(roleService.findDefaultRole(Organization.DEFAULT, DefaultRole.ORGANIZATION_OWNER, ReferenceType.ORGANIZATION)).thenReturn(// Role has been created.
Maybe.just(adminRole));
when(userService.findAll(eq(ReferenceType.ORGANIZATION), eq(Organization.DEFAULT), eq(0), anyInt())).thenReturn(Single.just(new Page<>(users, 0, totalUsers)));
when(userService.findAll(eq(ReferenceType.ORGANIZATION), eq(Organization.DEFAULT), eq(1), anyInt())).thenReturn(Single.just(new Page<>(users, 1, totalUsers)));
when(userService.findAll(eq(ReferenceType.ORGANIZATION), eq(Organization.DEFAULT), eq(2), anyInt())).thenReturn(Single.just(new Page<>(Arrays.asList(user, user), 2, totalUsers)));
doNothing().when(membershipHelper).setOrganizationRole(eq(user), eq(adminRole));
when(organizationService.findById(Organization.DEFAULT)).thenReturn(Single.just(organization));
when(identityProviderService.findAll(ReferenceType.ORGANIZATION, Organization.DEFAULT)).thenReturn(Flowable.empty());
cut.upgrade();
verify(membershipHelper, times(totalUsers)).setOrganizationRole(eq(user), eq(adminRole));
verify(membershipHelper, times(1)).setPlatformAdminRole();
}
use of io.gravitee.am.model.common.Page in project gravitee-access-management by gravitee-io.
the class ScopeRepositoryTest method testFindByDomain.
@Test
public void testFindByDomain() {
// create scope
Scope scope = new Scope();
scope.setName("testName");
scope.setDomain("testDomain");
scope.setClaims(Arrays.asList("claim1", "claim2"));
scopeRepository.create(scope).blockingGet();
// fetch scopes
TestObserver<Page<Scope>> testObserver = scopeRepository.findByDomain("testDomain", 0, Integer.MAX_VALUE).test();
testObserver.awaitTerminalEvent();
testObserver.assertComplete();
testObserver.assertNoErrors();
testObserver.assertValue(scopes -> scopes.getData().size() == 1);
testObserver.assertValue(scopes -> scopes.getData().iterator().next().getClaims().size() == 2);
}
use of io.gravitee.am.model.common.Page in project gravitee-access-management by gravitee-io.
the class ScopeRepositoryTest method testSearch_wildcard.
@Test
public void testSearch_wildcard() {
String scopeName = "testName";
Scope scope = new Scope();
scope.setDomain("mydomain");
scope.setName("testName");
scope.setKey("testName");
scope.setClaims(Arrays.asList("claim1", "claim2"));
Scope scopeCreated = scopeRepository.create(scope).blockingGet();
TestObserver<Page<Scope>> testObserver = scopeRepository.search(scopeCreated.getDomain(), "*" + scopeName + "*", 0, Integer.MAX_VALUE).test();
testObserver.awaitTerminalEvent();
testObserver.assertComplete();
testObserver.assertNoErrors();
testObserver.assertValue(s -> s.getData().size() == 1);
testObserver.assertValue(scopes -> scopes.getData().iterator().next().getClaims().size() == 2);
}
Aggregations