@Override public MongoEndpointUser save(EndpointUserDto dto) { return save(new MongoEndpointUser(dto)); }
@Override public boolean checkAccessToken(String externalId, String tenantId, String accessToken) { MongoEndpointUser endpointUser = findByExternalIdAndTenantId(externalId, tenantId); if (endpointUser == null) { LOG.debug("Can't find user with external id {}", externalId); return false; } else { String realAccessToken = endpointUser.getAccessToken(); return realAccessToken != null && realAccessToken.equals(accessToken); } }
@Override public String generateAccessToken(String externalUid, String tenantId) { MongoEndpointUser endpointUser = findByExternalIdAndTenantId(externalUid, tenantId); String accessToken = UUID.randomUUID().toString(); endpointUser.setAccessToken(accessToken); save(endpointUser); return accessToken; }
@Test public void generateAccessTokenTest() { TenantDto tenant = generateTenantDto(); EndpointUserDto dto = generateEndpointUserDto(tenant.getId()); Assert.assertNotNull(dto); String accessToken = endpointUserDao.generateAccessToken(dto.getExternalId(), dto.getTenantId().toString()); MongoEndpointUser found = endpointUserDao.findById(dto.getId()); Assert.assertEquals(accessToken, found.getAccessToken()); Assert.assertTrue(endpointUserDao.checkAccessToken(found.getExternalId(), found.getTenantId().toString(), accessToken)); Assert.assertFalse(endpointUserDao.checkAccessToken(found.getTenantId().toString(), found.getExternalId(), "invalid")); }
@Test public void convertToDtoTest() { TenantDto tenant = generateTenantDto(); EndpointUserDto dto = generateEndpointUserDto(tenant.getId()); Assert.assertNotNull(dto); MongoEndpointUser user = endpointUserDao.findById(dto.getId()); Assert.assertNotNull(user); dto = user.toDto(); MongoEndpointUser converted = new MongoEndpointUser(dto); Assert.assertEquals(user, converted); } }
@Test public void findByExternalIdTest() { TenantDto tenant = generateTenantDto(); EndpointUserDto dto = generateEndpointUserDto(tenant.getId()); Assert.assertNotNull(dto); MongoEndpointUser foundUser = endpointUserDao.findById(dto.getId()); Assert.assertNotNull(foundUser); MongoEndpointUser found = endpointUserDao.findByExternalIdAndTenantId(foundUser.getExternalId(), foundUser.getTenantId().toString()); Assert.assertEquals(foundUser, found); }
@Test public void removeById() { TenantDto tenant = generateTenantDto(); EndpointUserDto dto = generateEndpointUserDto(tenant.getId()); MongoEndpointUser user = endpointUserDao.findById(dto.getId()); Assert.assertNotNull(user); endpointUserDao.removeById(user.getId()); user = endpointUserDao.findById(user.getId()); Assert.assertNull(user); }
@Test public void findById() { TenantDto tenant = generateTenantDto(); EndpointUserDto dto = generateEndpointUserDto(tenant.getId()); MongoEndpointUser user = endpointUserDao.findById(dto.getId()); Assert.assertNotNull(user); Assert.assertEquals(dto, user.toDto()); }
@Test public void removeByExternalIdTest() { TenantDto tenant = generateTenantDto(); EndpointUserDto dto = generateEndpointUserDto(tenant.getId()); Assert.assertNotNull(dto); MongoEndpointUser found = endpointUserDao.findById(dto.getId()); Assert.assertNotNull(found); endpointUserDao.removeByExternalIdAndTenantId(found.getExternalId(), found.getTenantId()); found = endpointUserDao.findById(dto.getId()); Assert.assertNull(found); }