use of eu.bcvsolutions.idm.core.eav.api.dto.IdmFormDefinitionDto in project CzechIdMng by bcvsolutions.
the class DefaultFormServiceItegrationTest method testFindOwnersByDateAttributeValue.
@Test
public void testFindOwnersByDateAttributeValue() {
FormableEntity owner = createTestOwner("test15");
FormableEntity ownerTwo = createTestOwner("test16");
IdmFormDefinitionDto formDefinition = formService.getDefinition(owner.getClass());
IdmFormAttributeDto attribute = formDefinition.getMappedAttributeByCode(InitDemoData.FORM_ATTRIBUTE_DATETIME);
// save values
DateTime now = new DateTime();
DateTime tomorrow = now.plusDays(1);
formService.saveValues(owner, attribute, Lists.newArrayList(now));
formService.saveValues(ownerTwo, attribute, Lists.newArrayList(tomorrow));
//
Page<? extends Identifiable> owners = formService.findOwners(owner.getClass(), InitDemoData.FORM_ATTRIBUTE_DATETIME, now, null);
//
assertEquals(1, owners.getTotalElements());
assertEquals(owner.getId(), owners.getContent().get(0).getId());
//
owners = formService.findOwners(owner.getClass(), InitDemoData.FORM_ATTRIBUTE_DATETIME, tomorrow, null);
//
assertEquals(1, owners.getTotalElements());
assertEquals(ownerTwo.getId(), owners.getContent().get(0).getId());
//
identityService.deleteById(owner.getId());
identityService.deleteById(ownerTwo.getId());
}
use of eu.bcvsolutions.idm.core.eav.api.dto.IdmFormDefinitionDto in project CzechIdMng by bcvsolutions.
the class DefaultFormServiceItegrationTest method testDeleteDefinitionWithFormValues.
@Test(expected = ResultCodeException.class)
public void testDeleteDefinitionWithFormValues() {
FormableEntity owner = createTestOwner("test7");
IdmFormDefinitionDto formDefinition = formService.getDefinition(IdmIdentity.class);
// save password
IdmFormValueDto value1 = new IdmFormValueDto(formDefinition.getMappedAttributeByCode(InitDemoData.FORM_ATTRIBUTE_PASSWORD));
value1.setValue(FORM_VALUE_ONE);
formService.saveValues(owner, formDefinition, Lists.newArrayList(value1));
List<IdmFormValueDto> savedValues = formService.getValues(owner);
assertEquals(1, savedValues.size());
formDefinitionService.delete(formDefinition);
//
identityService.deleteById(owner.getId());
}
use of eu.bcvsolutions.idm.core.eav.api.dto.IdmFormDefinitionDto in project CzechIdMng by bcvsolutions.
the class DefaultFormServiceItegrationTest method testDeleteSingleAttributeValues.
@Test
public void testDeleteSingleAttributeValues() {
FormableEntity owner = createTestOwner("test10");
IdmFormDefinitionDto formDefinition = formService.getDefinition(IdmIdentity.class);
IdmFormAttributeDto attribute = formDefinition.getMappedAttributeByCode(InitDemoData.FORM_ATTRIBUTE_PHONE);
IdmFormAttributeDto attributeWWW = formDefinition.getMappedAttributeByCode(InitDemoData.FORM_ATTRIBUTE_WWW);
// save value
formService.saveValues(owner, attribute, Lists.newArrayList(FORM_VALUE_ONE));
formService.saveValues(owner, attributeWWW, Lists.newArrayList(FORM_VALUE_ONE, FORM_VALUE_TWO));
//
List<IdmFormValueDto> attributeValues = formService.getValues(owner, attribute);
assertEquals(1, attributeValues.size());
assertEquals(FORM_VALUE_ONE, attributeValues.get(0).getValue());
List<IdmFormValueDto> attributeWWWValues = formService.getValues(owner, formDefinition, InitDemoData.FORM_ATTRIBUTE_WWW);
assertEquals(2, attributeWWWValues.size());
assertEquals(FORM_VALUE_ONE, attributeWWWValues.get(0).getValue());
//
formService.deleteValues(owner, attribute);
//
attributeValues = formService.getValues(owner, attribute);
assertEquals(0, attributeValues.size());
attributeWWWValues = formService.getValues(owner, attributeWWW);
assertEquals(2, attributeWWWValues.size());
assertEquals(FORM_VALUE_ONE, attributeWWWValues.get(0).getValue());
//
identityService.deleteById(owner.getId());
}
use of eu.bcvsolutions.idm.core.eav.api.dto.IdmFormDefinitionDto in project CzechIdMng by bcvsolutions.
the class DefaultFormServiceItegrationTest method findOwnerByCriteria.
@Test
public void findOwnerByCriteria() {
IdmRoleDto owner = helper.createRole();
IdmRoleDto ownerTwo = helper.createRole();
IdmFormDefinitionDto formDefinition = formService.getDefinition(IdmRole.class);
IdmFormAttributeDto attribute = formDefinition.getFormAttributes().get(0);
//
formService.saveValues(owner.getId(), IdmRole.class, attribute, Lists.newArrayList("test"));
formService.saveValues(ownerTwo.getId(), IdmRole.class, attribute, Lists.newArrayList("test2"));
Specification<IdmRole> criteria = new Specification<IdmRole>() {
public Predicate toPredicate(Root<IdmRole> root, CriteriaQuery<?> query, CriteriaBuilder builder) {
Subquery<IdmRoleFormValue> subquery = query.subquery(IdmRoleFormValue.class);
Root<IdmRoleFormValue> subRoot = subquery.from(IdmRoleFormValue.class);
subquery.select(subRoot);
Predicate predicate = builder.and(builder.equal(subRoot.get(IdmRoleFormValue_.owner), root), builder.equal(subRoot.get(IdmRoleFormValue_.formAttribute).get(IdmFormAttribute_.id), attribute.getId()), builder.equal(subRoot.get(IdmRoleFormValue_.stringValue), "test"));
subquery.where(predicate);
//
return query.where(builder.exists(subquery)).getRestriction();
}
};
List<IdmRole> roles = roleRepository.findAll(criteria, (Pageable) null).getContent();
assertEquals(1, roles.size());
assertEquals(owner.getId(), roles.get(0).getId());
}
use of eu.bcvsolutions.idm.core.eav.api.dto.IdmFormDefinitionDto in project CzechIdMng by bcvsolutions.
the class DefaultFormServiceItegrationTest method testReadConfidentialFormValue.
@Test
public void testReadConfidentialFormValue() {
FormableEntity owner = createTestOwner("test6");
IdmFormDefinitionDto formDefinition = formService.getDefinition(IdmIdentity.class);
// save password
IdmFormValueDto value1 = new IdmFormValueDto(formDefinition.getMappedAttributeByCode(InitDemoData.FORM_ATTRIBUTE_PASSWORD));
value1.setValue(FORM_VALUE_ONE);
formService.saveValues(owner, formDefinition, Lists.newArrayList(value1));
IdmFormInstanceDto savedValues = formService.getFormInstance(owner);
assertEquals(1, savedValues.getValues().size());
assertEquals(GuardedString.SECRED_PROXY_STRING, savedValues.toSinglePersistentValue(InitDemoData.FORM_ATTRIBUTE_PASSWORD));
//
identityService.deleteById(owner.getId());
}
Aggregations