EndpointProfileDto endpointProfileDto = generateEndpointProfileWithGroupIdDto(endpointGroupId); String accessToken = "" + i; endpointProfileDto.setAccessToken(accessToken); endpointService.saveEndpointProfile(endpointProfileDto); accessTokens.add(accessToken);
protected EndpointProfileDto generateEndpointProfileForTestUpdate(String id, byte[] keyHash, List<EndpointGroupStateDto> groupState) { EndpointProfileDto profileDto = new EndpointProfileDto(); profileDto.setId(id); profileDto.setApplicationId(generateStringId()); profileDto.setEndpointKeyHash(keyHash); profileDto.setAccessToken(generateStringId()); profileDto.setGroupState(groupState); profileDto.setSdkToken(UUID.randomUUID().toString()); return profileDto; }
protected EndpointProfileDto generateEndpointProfileForTestUpdate(String id, byte[] keyHash, List<EndpointGroupStateDto> cfGroupState) { EndpointProfileDto profileDto = new EndpointProfileDto(); profileDto.setId(id); profileDto.setEndpointKeyHash(keyHash); profileDto.setApplicationId(generateStringId()); profileDto.setAccessToken(generateStringId()); profileDto.setGroupState(cfGroupState); profileDto.setSdkToken(UUID.randomUUID().toString()); profileDto.setEpsConfigurationHash(EPS_CONFIG_HASH); return profileDto; }
@Override public EndpointProfileDto updateProfile(UpdateProfileRequest request) { LOG.debug("Updating Profile for {}", request.getEndpointKeyHash()); EndpointProfileDto dto = endpointService.findEndpointProfileByKeyHash( request.getEndpointKeyHash().getData()); AppSeqNumber appSeqNumber = cacheService.getAppSeqNumber(request.getApplicationToken()); SdkProfileDto sdkProfile = cacheService.getSdkProfileBySdkToken(request.getSdkToken()); String profileJson = decodeProfile( request.getProfile(), appSeqNumber.getAppToken(), sdkProfile.getProfileSchemaVersion()); Function<EndpointProfileDto, EndpointProfileDto> updateFunction = profile -> { if (request.getAccessToken() != null) { profile.setAccessToken(request.getAccessToken()); } profile.setClientProfileBody(profileJson); profile.setProfileHash(EndpointObjectHash.fromSha1(request.getProfile()).getData()); populateVersionStates(appSeqNumber.getTenantId(), profile, sdkProfile); profile.setGroupState(new ArrayList<>()); profile.setSequenceNumber(0); return profile; }; return updateProfile(updateFunction.apply(dto), (storedProfile, newProfile) -> { return updateFunction.apply(storedProfile); }); }
protected EndpointProfileDto generateEndpointProfileWithEndpointGroupId(String appId) { byte[] keyHash = generateBytes(); if (appId == null) { appId = generateStringId(); } EndpointProfileDto profileDto = new EndpointProfileDto(); profileDto.setApplicationId(appId); profileDto.setEndpointKeyHash(keyHash); profileDto.setAccessToken(generateStringId()); profileDto.setClientProfileBody("test profile"); profileDto.setServerProfileBody("test server-side profile"); profileDto.setEpsConfigurationHash(EPS_CONFIG_HASH); List<EndpointGroupStateDto> groupState = new ArrayList<>(); groupState.add(new EndpointGroupStateDto(TEST_ENDPOINT_GROUP_ID, null, null)); profileDto.setGroupState(groupState); profileDto.setSdkToken(UUID.randomUUID().toString()); return endpointProfileDao.save(new CassandraEndpointProfile(profileDto)).toDto(); }
@Test public void convertToDtoTest() { EndpointProfileDto endpointProfile = generateEndpointProfileDto(null, null); endpointProfile.setAccessToken("Trololo"); endpointProfileDao.save(endpointProfile); Assert.assertNotNull(endpointProfile); MongoEndpointProfile converted = new MongoEndpointProfile(endpointProfile); Assert.assertEquals(endpointProfile, converted.toDto()); }
@Test public void findEndpointProfilesByExternalUserIdTest() { TenantDto tenantDto = generateTenantDto(); EndpointUserDto endpointUserDto = generateEndpointUserDto(tenantDto.getId()); String endpointGroupId = "124"; String accessToken1 = "1111"; String accessToken2 = "2222"; EndpointProfileDto endpointProfileDto1 = generateEndpointProfileWithGroupIdDto(endpointGroupId); endpointProfileDto1.setAccessToken(accessToken1); EndpointProfileDto endpointProfileDto2 = generateEndpointProfileWithGroupIdDto(endpointGroupId); endpointProfileDto2.setAccessToken(accessToken2); endpointProfileDto1 = endpointService.saveEndpointProfile(endpointProfileDto1); endpointProfileDto2 = endpointService.saveEndpointProfile(endpointProfileDto2); endpointService.attachEndpointToUser(endpointUserDto.getId(), accessToken1); endpointService.attachEndpointToUser(endpointUserDto.getId(), accessToken2); List<EndpointProfileDto> endpointProfiles = endpointService.findEndpointProfilesByExternalIdAndTenantId(endpointUserDto.getExternalId(), tenantDto.getId()); Assert.assertEquals(2, endpointProfiles.size()); Comparator<EndpointProfileDto> endpointProfilesComparator = new Comparator<EndpointProfileDto>() { @Override public int compare(EndpointProfileDto o1, EndpointProfileDto o2) { return o1.getId().compareTo(o2.getId()); } }; List<EndpointProfileDto> expected = Arrays.asList(endpointProfileDto1, endpointProfileDto2); Collections.sort(expected, endpointProfilesComparator); Collections.sort(endpointProfiles, endpointProfilesComparator); Assert.assertEquals(expected, endpointProfiles); }
dto.setAccessToken(request.getAccessToken());
@Test public void attachEndpointToUserTest() { TenantDto tenantDto = generateTenantDto(); EndpointUserDto endpointUserDto = generateEndpointUserDto(tenantDto.getId()); String endpointGroupId = "124"; EndpointProfileDto endpointProfileDto = generateEndpointProfileWithGroupIdDto(endpointGroupId); String accessToken = "1111"; endpointProfileDto.setAccessToken(accessToken); endpointService.saveEndpointProfile(endpointProfileDto); endpointService.attachEndpointToUser(endpointUserDto.getId(), accessToken); endpointUserDto = endpointService.findEndpointUserById(endpointUserDto.getId()); List<String> endpointIds = endpointUserDto.getEndpointIds(); Assert.assertNotNull(endpointIds); Assert.assertEquals(1, endpointIds.size()); Assert.assertEquals(endpointProfileDto.getId(), endpointIds.get(0)); }
dto.setEndpointKeyHash(endpointKeyHash); dto.setEndpointUserId(endpointUserId); dto.setAccessToken(accessToken); dto.setClientProfileBody( profile != null
protected EndpointProfileDto generateEndpointProfile(String appId, String sdkToken, String accessToken, List<String> topicIds, CtlDataDto ctlDataDto) { byte[] keyHash = generateBytes(); if (appId == null) { appId = generateStringId(); } if (sdkToken == null) { sdkToken = generateStringId(); } if (accessToken == null) { accessToken = generateStringId(); } EndpointProfileDto profileDto = new EndpointProfileDto(); profileDto.setApplicationId(appId); profileDto.setSdkToken(sdkToken); profileDto.setSubscriptions(topicIds); profileDto.setEndpointKeyHash(keyHash); profileDto.setAccessToken(accessToken); profileDto.setEpsConfigurationHash(EPS_CONFIG_HASH); if (ctlDataDto != null) { profileDto.setServerProfileBody(ctlDataDto.getBody()); profileDto.setServerProfileVersion(ctlDataDto.getServerProfileVersion()); } return endpointProfileDao.save(new CassandraEndpointProfile(profileDto)).toDto(); }
dto.setEndpointKeyHash(getBytes(endpointKeyHash)); dto.setEndpointUserId(endpointUserId); dto.setAccessToken(accessToken); dto.setClientProfileBody(profile); dto.setProfileHash(getBytes(profileHash));