use of io.jans.scim.model.scim2.Validations in project atlasmap by atlasmap.
the class AtlasCoreValidationTest method testJsonToJava.
@Test
public void testJsonToJava() throws AtlasException {
assertNotNull(context);
assertNotNull(session);
context.processValidation(session);
Validations validations = session.getValidations();
assertNotNull(validations);
assertNotNull(validations.getValidation());
assertTrue(validations.getValidation().isEmpty());
}
use of io.jans.scim.model.scim2.Validations in project atlasmap by atlasmap.
the class DefaultAtlasContextTest method testProcess.
@Test
public void testProcess() throws AtlasException {
DefaultAtlasSession session = mock(DefaultAtlasSession.class);
when(session.getAtlasContext()).thenReturn(context);
Head head = mock(Head.class);
when(session.head()).thenReturn(head);
when(head.setMapping(any(Mapping.class))).thenReturn(head);
when(head.setLookupTable(any(LookupTable.class))).thenReturn(head);
Field headField = mock(ConstantField.class);
when(head.getSourceField()).thenReturn(headField);
Audits audits = mock(Audits.class);
when(session.getAudits()).thenReturn(audits);
Validations validations = mock(Validations.class);
when(session.getValidations()).thenReturn(validations);
AtlasMapping mapping = mock(AtlasMapping.class);
when(session.getMapping()).thenReturn(mapping);
when(session.hasErrors()).thenReturn(true);
context.process(session);
when(session.hasErrors()).thenReturn(false);
Mappings mappings = mock(Mappings.class);
when(mapping.getMappings()).thenReturn(mappings);
List<BaseMapping> baseMappings = new ArrayList<>();
Collection baseMapping = mock(Collection.class);
when(baseMapping.getMappingType()).thenReturn(MappingType.COLLECTION);
baseMappings.add(baseMapping);
when(mappings.getMapping()).thenReturn(baseMappings);
Mappings subMappings = mock(Mappings.class);
when(baseMapping.getMappings()).thenReturn(subMappings);
List<BaseMapping> baseMappingList = new ArrayList<>();
Mapping mappingElement1 = mock(Mapping.class);
List<Field> sourceFieldList = new ArrayList<>();
ConstantField sourceField = mock(ConstantField.class);
sourceFieldList.add(sourceField);
when(sourceField.getPath()).thenReturn("contact.firstName");
when(mappingElement1.getInputField()).thenReturn(sourceFieldList);
List<Field> outputFieldList = new ArrayList<>();
Field outputField = mock(Field.class);
outputFieldList.add(outputField);
when(outputField.getPath()).thenReturn("contact.firstName");
when(mappingElement1.getOutputField()).thenReturn(outputFieldList);
when(mappingElement1.getMappingType()).thenReturn(MappingType.ALL);
baseMappingList.add(mappingElement1);
when(subMappings.getMapping()).thenReturn(baseMappingList);
Mapping mappingElement2 = mock(Mapping.class);
when(mappingElement2.getMappingType()).thenReturn(MappingType.ALL);
baseMappingList.add(mappingElement2);
List<Field> sourceFieldList2 = new ArrayList<>();
ConstantField sourceField2 = mock(ConstantField.class);
sourceFieldList2.add(sourceField2);
when(sourceField2.getPath()).thenReturn("contact[1]");
when(mappingElement2.getInputField()).thenReturn(sourceFieldList2);
ConstantModule mockConstantModule = mock(ConstantModule.class);
ConstantField clonedField = mock(ConstantField.class);
when(clonedField.getPath()).thenReturn("cloned[1]");
when(mockConstantModule.cloneField(any(Field.class))).thenReturn(clonedField);
List<Field> mockSourceFieldList = new ArrayList<>();
ConstantField mockSourceField = mock(ConstantField.class);
mockSourceFieldList.add(mockSourceField);
when(mockSourceField.getPath()).thenReturn("source[1]");
when(mappingElement2.getInputField()).thenReturn(mockSourceFieldList);
List<Field> mockOutputFieldList = new ArrayList<>();
ConstantField mockOutputField = mock(ConstantField.class);
mockOutputFieldList.add(mockOutputField);
when(mockOutputField.getPath()).thenReturn("output[1]");
when(mappingElement2.getOutputField()).thenReturn(mockOutputFieldList);
context.getSourceModules().put(AtlasConstants.CONSTANTS_DOCUMENT_ID, mockConstantModule);
context.getTargetModules().put(AtlasConstants.DEFAULT_TARGET_DOCUMENT_ID, mockConstantModule);
context.process(session);
}
use of io.jans.scim.model.scim2.Validations in project atlasmap by atlasmap.
the class DefaultAtlasContext method doCreateSession.
private AtlasSession doCreateSession() throws AtlasException {
AtlasSession session = new DefaultAtlasSession(this);
session.setAtlasContext(this);
session.setAudits(new Audits());
session.setValidations(new Validations());
setDefaultSessionProperties(session);
return session;
}
use of io.jans.scim.model.scim2.Validations in project atlasmap by atlasmap.
the class DefaultAtlasSession method initialize.
/**
* Initializes.
*/
protected void initialize() {
sourceProperties = new ConcurrentHashMap<String, Object>();
targetProperties = new ConcurrentHashMap<String, Object>();
validations = new Validations();
audits = new Audits();
sourceMap = new HashMap<>();
targetMap = new HashMap<>();
fieldReaderMap = new HashMap<>();
fieldWriterMap = new HashMap<>();
head.unset();
}
use of io.jans.scim.model.scim2.Validations in project atlasmap by atlasmap.
the class JsonModule method processPreValidation.
@Override
public void processPreValidation(AtlasInternalSession atlasSession) throws AtlasException {
if (atlasSession == null || atlasSession.getMapping() == null) {
throw new AtlasValidationException("Invalid session: Session and AtlasMapping must be specified");
}
Validations validations = atlasSession.getValidations();
JsonValidationService jsonValidationService = new JsonValidationService(getConversionService(), getFieldActionService());
jsonValidationService.setMode(getMode());
jsonValidationService.setDocId(getDocId());
List<Validation> jsonValidations = jsonValidationService.validateMapping(atlasSession.getMapping());
if (jsonValidations != null && !jsonValidations.isEmpty()) {
validations.getValidation().addAll(jsonValidations);
}
if (LOG.isDebugEnabled()) {
LOG.debug("Detected " + jsonValidations.size() + " json validation notices");
}
if (LOG.isDebugEnabled()) {
LOG.debug("{}: processPreValidation completed", getDocId());
}
}
Aggregations