@Test public void testAcquireTokenAuthCode_ClientCredential() throws Exception { ctx = PowerMock.createPartialMock( AuthenticationContext.class, new String[] {"acquireTokenCommon"}, TestConfiguration.AAD_TENANT_ENDPOINT, true, service); PowerMock.expectPrivate( ctx, "acquireTokenCommon", EasyMock.isA(AdalAuthorizatonGrant.class), EasyMock.isA(ClientAuthentication.class), EasyMock.isA(ClientDataHttpHeaders.class)) .andReturn( new AuthenticationResult( "bearer", "accessToken", "refreshToken", new Date().getTime(), "idToken", null, false)); PowerMock.replay(ctx); Future<AuthenticationResult> result = ctx.acquireTokenByAuthorizationCode( "auth_code", new URI(TestConfiguration.AAD_DEFAULT_REDIRECT_URI), new ClientCredential("clientId", "clientSecret"), null); AuthenticationResult ar = result.get(); Assert.assertNotNull(ar); PowerMock.verifyAll(); }
@Test( expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = "redirect uri is null") public void testAcquireTokenAuthCode_RedirectUriNull() throws Exception { ctx = new AuthenticationContext(TestConfiguration.AAD_TENANT_ENDPOINT, true, service); ctx.acquireTokenByAuthorizationCode( "auth_code", null, new ClientCredential("clientId", "clientSecret"), null); }
@Test( expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = "authorization code is null or empty") public void testcAquireTokenAuthCode_AuthCodeNull() throws Exception { ctx = new AuthenticationContext(TestConfiguration.AAD_TENANT_ENDPOINT, true, service); ctx.acquireTokenByAuthorizationCode( null, new URI(TestConfiguration.AAD_DEFAULT_REDIRECT_URI), new ClientCredential("clientId", "clientSecret"), null); }
@Test public void testAcquireTokenAuthCode_KeyCredential() throws Exception { ctx = PowerMock.createPartialMock( AuthenticationContext.class, new String[] {"acquireTokenCommon"}, TestConfiguration.AAD_TENANT_ENDPOINT, true, service); PowerMock.expectPrivate( ctx, "acquireTokenCommon", EasyMock.isA(AdalAuthorizatonGrant.class), EasyMock.isA(ClientAuthentication.class), EasyMock.isA(ClientDataHttpHeaders.class)) .andReturn( new AuthenticationResult( "bearer", "accessToken", "refreshToken", new Date().getTime(), "idToken", null, false)); final KeyStore keystore = KeyStore.getInstance("PKCS12", "SunJSSE"); keystore.load( new FileInputStream( this.getClass().getResource(TestConfiguration.AAD_CERTIFICATE_PATH).getFile()), TestConfiguration.AAD_CERTIFICATE_PASSWORD.toCharArray()); final String alias = keystore.aliases().nextElement(); final PrivateKey key = (PrivateKey) keystore.getKey(alias, TestConfiguration.AAD_CERTIFICATE_PASSWORD.toCharArray()); final X509Certificate cert = (X509Certificate) keystore.getCertificate(alias); PowerMock.replay(ctx); Future<AuthenticationResult> result = ctx.acquireTokenByAuthorizationCode( "auth_code", new URI(TestConfiguration.AAD_DEFAULT_REDIRECT_URI), AsymmetricKeyCredential.create(TestConfiguration.AAD_CLIENT_ID, key, cert), null); AuthenticationResult ar = result.get(); Assert.assertNotNull(ar); PowerMock.verifyAll(); PowerMock.resetAll(ctx); }