use of org.pac4j.mongo.profile.MongoProfile in project pac4j by pac4j.
the class MongoProfileServiceIT method testGoodUsernameNoAttribute.
@Test
public void testGoodUsernameNoAttribute() {
final UsernamePasswordCredentials credentials = login(GOOD_USERNAME, PASSWORD, "");
final CommonProfile profile = credentials.getUserProfile();
assertNotNull(profile);
assertTrue(profile instanceof MongoProfile);
final MongoProfile dbProfile = (MongoProfile) profile;
assertEquals(GOOD_USERNAME, dbProfile.getId());
assertNull(dbProfile.getAttribute(FIRSTNAME));
}
use of org.pac4j.mongo.profile.MongoProfile in project pac4j by pac4j.
the class MongoProfileServiceIT method testGoodUsernameAttribute.
@Test
public void testGoodUsernameAttribute() {
final UsernamePasswordCredentials credentials = login(GOOD_USERNAME, PASSWORD, FIRSTNAME);
final CommonProfile profile = credentials.getUserProfile();
assertNotNull(profile);
assertTrue(profile instanceof MongoProfile);
final MongoProfile dbProfile = (MongoProfile) profile;
assertEquals(GOOD_USERNAME, dbProfile.getId());
assertEquals(FIRSTNAME_VALUE, dbProfile.getAttribute(FIRSTNAME));
}
use of org.pac4j.mongo.profile.MongoProfile in project pac4j by pac4j.
the class MongoProfileServiceIT method testCreateUpdateFindDelete.
@Test
public void testCreateUpdateFindDelete() {
final ObjectId objectId = new ObjectId();
final MongoProfile profile = new MongoProfile();
profile.setId(MONGO_ID);
profile.setLinkedId(MONGO_LINKEDID);
profile.addAttribute(USERNAME, MONGO_USER);
profile.addAttribute(FIRSTNAME, objectId);
final MongoProfileService mongoProfileService = new MongoProfileService(getClient());
mongoProfileService.setPasswordEncoder(MongoServer.PASSWORD_ENCODER);
// create
mongoProfileService.create(profile, MONGO_PASS);
// check credentials
final UsernamePasswordCredentials credentials = new UsernamePasswordCredentials(MONGO_USER, MONGO_PASS);
mongoProfileService.validate(credentials, null);
final CommonProfile profile1 = credentials.getUserProfile();
assertNotNull(profile1);
// check data
final List<Map<String, Object>> results = getData(mongoProfileService, MONGO_ID);
assertEquals(1, results.size());
final Map<String, Object> result = results.get(0);
assertEquals(6, result.size());
assertEquals(MONGO_ID, result.get(ID));
assertEquals(MONGO_LINKEDID, result.get(AbstractProfileService.LINKEDID));
assertNotNull(result.get(AbstractProfileService.SERIALIZED_PROFILE));
assertTrue(MongoServer.PASSWORD_ENCODER.matches(MONGO_PASS, (String) result.get(PASSWORD)));
assertEquals(MONGO_USER, result.get(USERNAME));
// findById
final MongoProfile profile2 = mongoProfileService.findByLinkedId(MONGO_LINKEDID);
assertEquals(MONGO_ID, profile2.getId());
assertEquals(MONGO_LINKEDID, profile2.getLinkedId());
assertEquals(MONGO_USER, profile2.getUsername());
assertEquals(objectId, profile2.getAttribute(FIRSTNAME));
assertEquals(2, profile2.getAttributes().size());
// update
profile.setLinkedId(MONGO_LINKEDID2);
mongoProfileService.update(profile, MONGO_PASS2);
final List<Map<String, Object>> results2 = getData(mongoProfileService, MONGO_ID);
assertEquals(1, results2.size());
final Map<String, Object> result2 = results2.get(0);
assertEquals(6, result2.size());
assertEquals(MONGO_ID, result2.get(ID));
assertEquals(MONGO_LINKEDID2, result2.get(AbstractProfileService.LINKEDID));
assertNotNull(result2.get(AbstractProfileService.SERIALIZED_PROFILE));
assertTrue(MongoServer.PASSWORD_ENCODER.matches(MONGO_PASS2, (String) result2.get(PASSWORD)));
assertEquals(MONGO_USER, result2.get(USERNAME));
// remove
mongoProfileService.remove(profile);
final List<Map<String, Object>> results3 = getData(mongoProfileService, MONGO_ID);
assertEquals(0, results3.size());
}
Aggregations