use of org.opendaylight.yang.gen.v1.urn.sal.restconf.event.subscription.rev140708.CreateDataChangeEventSubscriptionInput1.Scope in project gravitee-access-management by gravitee-io.
the class ScopeServiceTest method shouldNotCreate_technicalException.
@Test
public void shouldNotCreate_technicalException() {
NewScope newScope = Mockito.mock(NewScope.class);
when(newScope.getKey()).thenReturn("my-scope");
when(scopeRepository.findByDomainAndKey(DOMAIN, "my-scope")).thenReturn(Maybe.error(TechnicalException::new));
TestObserver testObserver = new TestObserver();
scopeService.create(DOMAIN, newScope).subscribe(testObserver);
testObserver.assertError(TechnicalManagementException.class);
testObserver.assertNotComplete();
verify(scopeRepository, never()).create(any(Scope.class));
}
use of org.opendaylight.yang.gen.v1.urn.sal.restconf.event.subscription.rev140708.CreateDataChangeEventSubscriptionInput1.Scope in project gravitee-access-management by gravitee-io.
the class ScopeServiceTest method shouldCreate_keyUpperCase.
@Test
public void shouldCreate_keyUpperCase() {
NewScope newScope = Mockito.mock(NewScope.class);
when(newScope.getKey()).thenReturn("MY-SCOPE");
when(scopeRepository.findByDomainAndKey(DOMAIN, "MY-SCOPE")).thenReturn(Maybe.empty());
when(scopeRepository.create(any(Scope.class))).thenReturn(Single.just(new Scope()));
when(eventService.create(any())).thenReturn(Single.just(new Event()));
TestObserver testObserver = scopeService.create(DOMAIN, newScope).test();
testObserver.awaitTerminalEvent();
testObserver.assertComplete();
testObserver.assertNoErrors();
verify(scopeRepository, times(1)).create(any(Scope.class));
verify(scopeRepository, times(1)).create(argThat(new ArgumentMatcher<Scope>() {
@Override
public boolean matches(Scope scope) {
return scope.getKey().equals("MY-SCOPE");
}
}));
verify(eventService, times(1)).create(any());
}
use of org.opendaylight.yang.gen.v1.urn.sal.restconf.event.subscription.rev140708.CreateDataChangeEventSubscriptionInput1.Scope in project gravitee-access-management by gravitee-io.
the class ScopeServiceTest method shouldNotPatch_scopeNotFound.
@Test
public void shouldNotPatch_scopeNotFound() {
PatchScope patchScope = new PatchScope();
when(scopeRepository.findById("my-scope")).thenReturn(Maybe.empty());
TestObserver testObserver = new TestObserver();
scopeService.patch(DOMAIN, "my-scope", patchScope).subscribe(testObserver);
testObserver.assertError(ScopeNotFoundException.class);
testObserver.assertNotComplete();
verify(scopeRepository, times(1)).findById("my-scope");
verify(scopeRepository, never()).update(any(Scope.class));
}
use of org.opendaylight.yang.gen.v1.urn.sal.restconf.event.subscription.rev140708.CreateDataChangeEventSubscriptionInput1.Scope in project gravitee-access-management by gravitee-io.
the class ResourceServiceTest method setUp.
@Before
public void setUp() {
when(repository.findByDomainAndClientAndUser(DOMAIN_ID, CLIENT_ID, USER_ID)).thenReturn(Flowable.just(new Resource().setId(RESOURCE_ID)));
when(repository.findByDomainAndClientAndUserAndResource(DOMAIN_ID, CLIENT_ID, USER_ID, RESOURCE_ID)).thenReturn(Maybe.just(new Resource().setId(RESOURCE_ID)));
when(scopeService.findByDomainAndKeys(DOMAIN_ID, Arrays.asList("scope"))).thenReturn(Single.just(Arrays.asList(new Scope("scope"))));
}
use of org.opendaylight.yang.gen.v1.urn.sal.restconf.event.subscription.rev140708.CreateDataChangeEventSubscriptionInput1.Scope in project gravitee-access-management by gravitee-io.
the class UserConsentEndpoint method handle.
@Override
public void handle(RoutingContext routingContext) {
final Client client = routingContext.get(ConstantKeys.CLIENT_CONTEXT_KEY);
final io.gravitee.am.model.User user = routingContext.user() != null ? ((User) routingContext.user().getDelegate()).getUser() : null;
final String action = UriBuilderRequest.resolveProxyRequest(routingContext.request(), routingContext.request().uri());
final AuthorizationRequest authorizationRequest = routingContext.get(ConstantKeys.AUTHORIZATION_REQUEST_CONTEXT_KEY);
final boolean prompt = authorizationRequest.getPrompts().contains("consent");
// fetch scope information (name + description)
fetchConsentInformation(authorizationRequest.getScopes(), prompt, client, user, h -> {
if (h.failed()) {
routingContext.fail(h.cause());
return;
}
List<Scope> requestedScopes = h.result();
routingContext.put(ConstantKeys.SCOPES_CONTEXT_KEY, requestedScopes);
routingContext.put(ConstantKeys.ACTION_KEY, action);
engine.render(generateData(routingContext, domain, client), getTemplateFileName(client), res -> {
if (res.succeeded()) {
routingContext.response().putHeader(HttpHeaders.CONTENT_TYPE, MediaType.TEXT_HTML);
routingContext.response().end(res.result());
} else {
logger.error("Unable to render user consent page", res.cause());
routingContext.fail(res.cause());
}
});
});
}
Aggregations