@Test public void deserializeTest() { UserInfoResponse response = JsonUtils.readValue(json, UserInfoResponse.class); assertEquals("olds@vmware.com", response.getEmail()); assertEquals("Dale", response.getGivenName()); assertEquals("Olds", response.getFamilyName()); assertEquals("Dale Olds", response.getFullName()); assertEquals("8505551234", response.getPhoneNumber()); assertEquals("12345", response.getUserId()); assertEquals("12345", response.getSub()); assertEquals("olds", response.getUserName()); assertEquals(true, response.isEmailVerified()); response.getUserAttributes().get("Key 1"), hasItems(CoreMatchers.is("Val 11"), CoreMatchers.is("Val 12")) ); assertThat( response.getUserAttributes().get("Key 2"), hasItems(CoreMatchers.is("Val 21"), CoreMatchers.is("Val 22")) ); response.getRoles(), hasItems( CoreMatchers.is("role12"),
@Test public void testSunnyDay() { UaaUser user = userDatabase.retrieveUserByName("olds", OriginKeys.UAA); UaaAuthentication authentication = UaaAuthenticationTestFactory.getAuthentication(user.getId(), "olds", "olds@vmware.com", new HashSet<>(Arrays.asList("openid"))); UserInfoResponse userInfoResponse = endpoint.loginInfo(new OAuth2Authentication(createOauthRequest(Arrays.asList("openid")), authentication)); assertEquals("olds", userInfoResponse.getUserName()); assertEquals("Dale Olds", userInfoResponse.getFullName()); assertEquals("olds@vmware.com", userInfoResponse.getEmail()); assertEquals("8505551234", userInfoResponse.getPhoneNumber()); assertFalse(userInfoResponse.isEmailVerified()); assertEquals(1000, (long) userInfoResponse.getPreviousLogonSuccess()); assertEquals(user.getId(), userInfoResponse.getSub()); assertNull(userInfoResponse.getUserAttributes()); }
@Test void attributesWithNoExtraScopes() throws Exception { UserInfoResponse userInfo = getUserInfo("openid"); assertNull(userInfo.getUserAttributes()); assertNull(userInfo.getRoles()); }
@Test void testGetUserInfo() throws Exception { UserInfoResponse userInfoResponse = getUserInfo("openid"); assertEquals(user.getUserName(), userInfoResponse.getUserName()); assertEquals(user.getFamilyName(), userInfoResponse.getFamilyName()); assertEquals(user.getGivenName(), userInfoResponse.getGivenName()); assertEquals(user.isVerified(), userInfoResponse.isEmailVerified()); String userId = userInfoResponse.getUserId(); assertNotNull(userId); Long dbPreviousLogonTime = webApplicationContext.getBean(UaaUserDatabase.class).retrieveUserById(userId).getPreviousLogonTime(); assertEquals(dbPreviousLogonTime, userInfoResponse.getPreviousLogonSuccess()); }
@Test public void testVerifiedUser() { UaaUser user = userDatabase.retrieveUserByName("somename", OriginKeys.UAA); UaaAuthentication authentication = UaaAuthenticationTestFactory.getAuthentication(user.getId(), "somename", "comr@dstal.in", new HashSet<>(Arrays.asList("openid"))); UserInfoResponse userInfoResponse = endpoint.loginInfo(new OAuth2Authentication(createOauthRequest(Arrays.asList("openid")), authentication)); assertEquals("somename", userInfoResponse.getUserName()); assertTrue(userInfoResponse.isEmailVerified()); }
Map<String, List<String>> userAttributeMap = userInfo.getUserAttributes(); assertNotNull(userAttributeMap); List<String> clientIds = userAttributeMap.get("the_client_id");
@Test public void testSunnyDay_whenLastLogonNull_displaysNull() { user.setPreviousLogonTime(null); UaaUser user = userDatabase.retrieveUserByName("olds", OriginKeys.UAA); UaaAuthentication authentication = UaaAuthenticationTestFactory.getAuthentication(user.getId(), "olds", "olds@vmware.com", new HashSet<>(Arrays.asList("openid"))); UserInfoResponse map = endpoint.loginInfo(new OAuth2Authentication(createOauthRequest(Arrays.asList("openid")), authentication)); assertNull(map.getPreviousLogonSuccess()); }
@Test void attributesWithRolesAndUserAttributes() throws Exception { UserInfoResponse userInfo = getUserInfo("openid user_attributes roles"); Map<String, List<String>> uas = userInfo.getUserAttributes(); assertNotNull(uas); assertEquals(userAttributes, uas); Object r = userInfo.getRoles(); assertNotNull(r); assertEquals(roles, r); }
Map<String,List<String>> userAttributeMap = userInfo.getUserAttributes(); List<String> costCenterData = userAttributeMap.get(COST_CENTERS); List<String> managerData = userAttributeMap.get(MANAGERS);
private Long getPreviousLogonTime(String accessToken) throws Exception { UserInfoResponse userInfo; String userInfoResponse = mockMvc.perform( get("/userinfo") .header("Authorization", "bearer " + accessToken) .accept(APPLICATION_JSON) ).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); assertNotNull(userInfoResponse); userInfo = JsonUtils.readValue(userInfoResponse, UserInfoResponse.class); return userInfo.getPreviousLogonSuccess(); }
request = createOauthRequest(Arrays.asList(USER_ATTRIBUTES, "openid", ROLES)); UserInfoResponse map = endpoint.loginInfo(new OAuth2Authentication(request, authentication)); assertEquals("olds", map.getUserName()); assertEquals("Dale Olds", map.getFullName()); assertEquals("olds@vmware.com", map.getEmail()); assertEquals("8505551234", map.getPhoneNumber()); assertEquals(user.getId(), map.getSub()); assertEquals(user.getGivenName(), map.getGivenName()); assertEquals(user.getFamilyName(), map.getFamilyName()); assertNotNull(map.getUserAttributes()); Map<String, List<String>> userAttributes = map.getUserAttributes(); assertEquals(info.getUserAttributes().get(MULTI_VALUE), userAttributes.get(MULTI_VALUE)); assertEquals(info.getUserAttributes().get(SINGLE_VALUE), userAttributes.get(SINGLE_VALUE)); assertNull(map.getUserAttributes()); assertNull(map.getRoles());