Search in sources :

Example 16 with DataSetContext

use of org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext in project dhis2-core by dhis2.

the class DataValueSetImportValidatorTest method testCheckDataValueAttrOptionCombo.

@Test
void testCheckDataValueAttrOptionCombo() {
    DataValue dataValue = createRandomDataValue();
    dataValue.setAttributeOptionCombo(null);
    DataValueContext valueContext = createDataValueContext(dataValue).build();
    DataSetContext dataSetContext = createMinimalDataSetContext().build();
    ImportContext context = createMinimalImportContext(valueContext).requireAttrOptionCombo(true).build();
    assertTrue(validator.skipDataValue(dataValue, context, dataSetContext, valueContext));
    assertConflict(ErrorCode.E7631, "Attribute option combo is required but is not specified", context);
}
Also used : DataValue(org.hisp.dhis.dxf2.datavalue.DataValue) DataSetContext(org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext) DataValueContext(org.hisp.dhis.dxf2.datavalueset.ImportContext.DataValueContext) Test(org.junit.jupiter.api.Test)

Example 17 with DataSetContext

use of org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext in project dhis2-core by dhis2.

the class DataValueSetImportValidatorTest method testCheckDataValueStrictCategoryOptionCombos.

@Test
void testCheckDataValueStrictCategoryOptionCombos() {
    DataValue dataValue = createRandomDataValue();
    DataValueContext valueContext = createDataValueContext(dataValue).build();
    valueContext.getDataElement().setCategoryCombo(new CategoryCombo());
    DataSetContext dataSetContext = createMinimalDataSetContext().build();
    ImportContext context = createMinimalImportContext(valueContext).strictCategoryOptionCombos(true).build();
    assertTrue(validator.skipDataValue(dataValue, context, dataSetContext, valueContext));
    assertConflict(ErrorCode.E7634, "Category option combo: `<object1>` must be part of category combo of data element: `<object2>`", context, dataValue.getCategoryOptionCombo(), dataValue.getDataElement());
}
Also used : DataValue(org.hisp.dhis.dxf2.datavalue.DataValue) CategoryCombo(org.hisp.dhis.category.CategoryCombo) DataSetContext(org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext) DataValueContext(org.hisp.dhis.dxf2.datavalueset.ImportContext.DataValueContext) Test(org.junit.jupiter.api.Test)

Example 18 with DataSetContext

use of org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext in project dhis2-core by dhis2.

the class DataValueSetImportValidatorTest method testValidateDataValueDataElementExists.

/*
     * Data Value validation (should the entry be skipped)
     */
@Test
void testValidateDataValueDataElementExists() {
    DataValue dataValue = createRandomDataValue();
    DataValueContext valueContext = DataValueContext.builder().build();
    DataSetContext dataSetContext = createMinimalDataSetContext().build();
    ImportContext context = createMinimalImportContext(valueContext).build();
    assertTrue(validator.skipDataValue(dataValue, context, dataSetContext, valueContext));
    assertConflict(ErrorCode.E7610, "Data element not found or not accessible: `<object1>`", context, dataValue.getDataElement());
}
Also used : DataValue(org.hisp.dhis.dxf2.datavalue.DataValue) DataSetContext(org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext) DataValueContext(org.hisp.dhis.dxf2.datavalueset.ImportContext.DataValueContext) Test(org.junit.jupiter.api.Test)

Example 19 with DataSetContext

use of org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext in project dhis2-core by dhis2.

the class DataValueSetImportValidatorTest method testValidateDataSetOrgUnitExists.

@Test
void testValidateDataSetOrgUnitExists() {
    when(aclService.canDataRead(any(), any())).thenReturn(true);
    DataValueSet dataValueSet = new DataValueSet();
    dataValueSet.setOrgUnit(CodeGenerator.generateUid());
    ImportContext context = createMinimalImportContext(null).build();
    DataSetContext dataSetContext = createMinimalDataSetContext().build();
    assertTrue(validator.abortDataSetImport(dataValueSet, context, dataSetContext));
    assertConflict(ErrorCode.E7603, "Org unit not found or not accessible: `<object1>`", context, dataValueSet.getOrgUnit(), dataValueSet.getDataSet());
}
Also used : DataSetContext(org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext) Test(org.junit.jupiter.api.Test)

Example 20 with DataSetContext

use of org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext in project dhis2-core by dhis2.

the class DataValueSetImportValidatorTest method testCheckDataValueCategoryOptionCombo.

/*
     * DataValue Constraints
     */
@Test
void testCheckDataValueCategoryOptionCombo() {
    DataValue dataValue = createRandomDataValue();
    dataValue.setCategoryOptionCombo(null);
    DataValueContext valueContext = createDataValueContext(dataValue).build();
    DataSetContext dataSetContext = createMinimalDataSetContext().build();
    ImportContext context = createMinimalImportContext(valueContext).requireCategoryOptionCombo(true).build();
    assertTrue(validator.skipDataValue(dataValue, context, dataSetContext, valueContext));
    assertConflict(ErrorCode.E7630, "Category option combo is required but is not specified", context);
}
Also used : DataValue(org.hisp.dhis.dxf2.datavalue.DataValue) DataSetContext(org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext) DataValueContext(org.hisp.dhis.dxf2.datavalueset.ImportContext.DataValueContext) Test(org.junit.jupiter.api.Test)

Aggregations

DataSetContext (org.hisp.dhis.dxf2.datavalueset.ImportContext.DataSetContext)34 Test (org.junit.jupiter.api.Test)33 DataValue (org.hisp.dhis.dxf2.datavalue.DataValue)28 DataValueContext (org.hisp.dhis.dxf2.datavalueset.ImportContext.DataValueContext)28 ArgumentMatchers.anyString (org.mockito.ArgumentMatchers.anyString)8 Date (java.util.Date)2 DataInputPeriod (org.hisp.dhis.dataset.DataInputPeriod)2 CategoryCombo (org.hisp.dhis.category.CategoryCombo)1 CategoryOptionCombo (org.hisp.dhis.category.CategoryOptionCombo)1 DateRange (org.hisp.dhis.common.DateRange)1 DataApprovalWorkflow (org.hisp.dhis.dataapproval.DataApprovalWorkflow)1 DataElement (org.hisp.dhis.dataelement.DataElement)1 ImportCount (org.hisp.dhis.dxf2.importsummary.ImportCount)1 ImportSummary (org.hisp.dhis.dxf2.importsummary.ImportSummary)1 OptionSet (org.hisp.dhis.option.OptionSet)1 OrganisationUnit (org.hisp.dhis.organisationunit.OrganisationUnit)1 Period (org.hisp.dhis.period.Period)1 NotificationLevel (org.hisp.dhis.system.notification.NotificationLevel)1 Clock (org.hisp.dhis.system.util.Clock)1 DateUtils.parseDate (org.hisp.dhis.util.DateUtils.parseDate)1