@Test public void adaptedAsyncServerAuthContextShouldAdaptSuccessfulCleanSubjectCall() throws AuthException { // Given ServerAuthContext authContext = mock(ServerAuthContext.class); MessageContext messageContext = mock(MessageContext.class); Subject clientSubject = new Subject(); // When AsyncServerAuthContext asyncAuthContext = JaspiAdapters.adapt(authContext); Promise<Void, AuthenticationException> promise = asyncAuthContext.cleanSubject(messageContext, clientSubject); // Then assertThat(promise).succeeded().withObject().isNull(); verify(authContext).cleanSubject(any(MessageInfo.class), eq(clientSubject)); }
@Test public void adaptedAsyncServerAuthContextShouldAdaptSuccessfulSecureResponseCall() throws AuthException { // Given ServerAuthContext authContext = mock(ServerAuthContext.class); MessageContext messageContext = mock(MessageContext.class); Subject serviceSubject = new Subject(); given(authContext.secureResponse(any(MessageInfo.class), eq(serviceSubject))) .willReturn(AuthStatus.SEND_SUCCESS); // When AsyncServerAuthContext asyncAuthContext = JaspiAdapters.adapt(authContext); Promise<AuthStatus, AuthenticationException> promise = asyncAuthContext.secureResponse(messageContext, serviceSubject); // Then assertThat(promise).succeeded().withObject().isEqualTo(AuthStatus.SEND_SUCCESS); }
@Test public void adaptedAsyncServerAuthContextShouldAdaptFailedCleanSubjectCall() throws AuthException { // Given ServerAuthContext authContext = mock(ServerAuthContext.class); MessageContext messageContext = mock(MessageContext.class); Subject clientSubject = new Subject(); doThrow(AuthException.class) .when(authContext) .cleanSubject(any(MessageInfo.class), eq(clientSubject)); // When AsyncServerAuthContext asyncAuthContext = JaspiAdapters.adapt(authContext); Promise<Void, AuthenticationException> promise = asyncAuthContext.cleanSubject(messageContext, clientSubject); // Then assertThat(promise).failedWithException().isInstanceOf(AuthenticationException.class); }
@Test public void adaptedAsyncServerAuthContextShouldAdaptFailedSecureResponseCall() throws AuthException { // Given ServerAuthContext authContext = mock(ServerAuthContext.class); MessageContext messageContext = mock(MessageContext.class); Subject serviceSubject = new Subject(); doThrow(AuthException.class) .when(authContext) .secureResponse(any(MessageInfo.class), eq(serviceSubject)); // When AsyncServerAuthContext asyncAuthContext = JaspiAdapters.adapt(authContext); Promise<AuthStatus, AuthenticationException> promise = asyncAuthContext.secureResponse(messageContext, serviceSubject); // Then assertThat(promise).failedWithException().isInstanceOf(AuthenticationException.class); }