use of org.hisp.dhis.dxf2.importsummary.ImportStatus.WARNING in project dhis2-core by dhis2.
the class ProgramRuleIntegrationTest method setUpTest.
@Override
public void setUpTest() throws Exception {
renderService = _renderService;
userService = _userService;
Map<Class<? extends IdentifiableObject>, List<IdentifiableObject>> metadata = renderService.fromMetadata(new ClassPathResource("tracker/simple_metadata.json").getInputStream(), RenderFormat.JSON);
ObjectBundleParams params = new ObjectBundleParams();
params.setObjectBundleMode(ObjectBundleMode.COMMIT);
params.setImportStrategy(ImportStrategy.CREATE);
params.setObjects(metadata);
ObjectBundle bundle = objectBundleService.create(params);
ObjectBundleValidationReport validationReport = objectBundleValidationService.validate(bundle);
assertFalse(validationReport.hasErrorReports());
objectBundleService.commit(bundle);
Program program = bundle.getPreheat().get(PreheatIdentifier.UID, Program.class, "BFcipDERJnf");
Program programWithoutRegistration = bundle.getPreheat().get(PreheatIdentifier.UID, Program.class, "BFcipDERJne");
DataElement dataElement1 = bundle.getPreheat().get(PreheatIdentifier.UID, DataElement.class, "DATAEL00001");
DataElement dataElement2 = bundle.getPreheat().get(PreheatIdentifier.UID, DataElement.class, "DATAEL00002");
ProgramStage programStage = bundle.getPreheat().get(PreheatIdentifier.UID, ProgramStage.class, "NpsdDv6kKSO");
ProgramRuleVariable programRuleVariable = createProgramRuleVariableWithDataElement('A', program, dataElement2);
programRuleVariableService.addProgramRuleVariable(programRuleVariable);
ProgramRule programRuleA = createProgramRule('A', program);
programRuleA.setUid("ProgramRule");
programRuleService.addProgramRule(programRuleA);
ProgramRule programRuleWithoutRegistration = createProgramRule('W', programWithoutRegistration);
programRuleService.addProgramRule(programRuleWithoutRegistration);
ProgramRule programRuleB = createProgramRule('B', program);
programRuleB.setProgramStage(programStage);
programRuleService.addProgramRule(programRuleB);
ProgramRuleAction programRuleActionShowWarning = createProgramRuleAction('A', programRuleA);
programRuleActionShowWarning.setProgramRuleActionType(ProgramRuleActionType.SHOWWARNING);
programRuleActionShowWarning.setContent("WARNING");
programRuleActionService.addProgramRuleAction(programRuleActionShowWarning);
ProgramRuleAction programRuleActionAssign = createProgramRuleAction('C', programRuleA);
programRuleActionAssign.setProgramRuleActionType(ProgramRuleActionType.ASSIGN);
programRuleActionAssign.setData("#{ProgramRuleVariableA}");
programRuleActionAssign.setDataElement(dataElement1);
programRuleActionService.addProgramRuleAction(programRuleActionAssign);
ProgramRuleAction programRuleActionShowWarningForProgramStage = createProgramRuleAction('B', programRuleB);
programRuleActionShowWarningForProgramStage.setProgramRuleActionType(ProgramRuleActionType.SHOWWARNING);
programRuleActionShowWarningForProgramStage.setContent("PROGRAM STAGE WARNING");
programRuleActionService.addProgramRuleAction(programRuleActionShowWarningForProgramStage);
programRuleA.getProgramRuleActions().add(programRuleActionShowWarning);
programRuleA.getProgramRuleActions().add(programRuleActionAssign);
programRuleWithoutRegistration.getProgramRuleActions().add(programRuleActionShowWarning);
programRuleService.updateProgramRule(programRuleWithoutRegistration);
programRuleB.getProgramRuleActions().add(programRuleActionShowWarningForProgramStage);
programRuleService.updateProgramRule(programRuleB);
userA = userService.getUser("M5zQapPyTZI");
injectSecurityContext(userA);
}
Aggregations