use of org.hisp.dhis.dxf2.datavalueset.DataValueSet in project dhis2-core by dhis2.
the class DataValueSetServiceTest method testImportDataValuesWithOrgUnitOutsideHierarchy.
@Test
void testImportDataValuesWithOrgUnitOutsideHierarchy() throws Exception {
in = new ClassPathResource("datavalueset/dataValueSetE.xml").getInputStream();
ImportSummary summary = dataValueSetService.importDataValueSetXml(in);
assertEquals(ImportStatus.WARNING, summary.getStatus());
assertEquals(2, summary.getConflictCount(), summary.getConflictsDescription());
Collection<DataValue> dataValues = mockDataValueBatchHandler.getInserts();
assertNotNull(dataValues);
assertEquals(1, dataValues.size());
assertTrue(dataValues.contains(new DataValue(deA, peA, ouA, ocDef, ocA)));
}
use of org.hisp.dhis.dxf2.datavalueset.DataValueSet in project dhis2-core by dhis2.
the class DataValueSetServiceTest method testImportValueDataSetWriteFail.
/**
* User does not have data write access for DataSet Expect fail on data
* sharing check
*
* @throws IOException
*/
@Test
void testImportValueDataSetWriteFail() throws IOException {
clearSecurityContext();
List<User> allUsers = userService.getAllUsers();
enableDataSharing(user, dsA, AccessStringHelper.READ);
dataSetService.updateDataSet(dsB);
in = new ClassPathResource("datavalueset/dataValueSetA.xml").getInputStream();
ImportSummary summary = dataValueSetService.importDataValueSetXml(in);
assertNotNull(summary);
assertNotNull(summary.getImportCount());
assertEquals(ImportStatus.ERROR, summary.getStatus());
}
use of org.hisp.dhis.dxf2.datavalueset.DataValueSet in project dhis2-core by dhis2.
the class DataValueSetServiceTest method testImportDataValueWithNewPeriods.
@Test
void testImportDataValueWithNewPeriods() {
Period period200006 = periodService.getPeriod("200006");
Period period200007 = periodService.getPeriod("200007");
Period period200008 = periodService.getPeriod("200008");
assertNull(period200006);
assertNull(period200007);
assertNull(period200008);
String importData = "<dataValueSet xmlns=\"http://dhis2.org/schema/dxf/2.0\" idScheme=\"code\" dataSet=\"DS_A\" orgUnit=\"OU_A\">\n" + " <dataValue dataElement=\"DE_A\" period=\"200006\" value=\"10001\" />\n" + " <dataValue dataElement=\"DE_B\" period=\"200006\" value=\"10002\" />\n" + " <dataValue dataElement=\"DE_C\" period=\"200007\" value=\"10003\" />\n" + " <dataValue dataElement=\"DE_D\" period=\"200007\" value=\"10004\" />\n" + " <dataValue dataElement=\"DE_D\" period=\"200008\" value=\"10005\" />\n" + "</dataValueSet>\n";
in = new ByteArrayInputStream(importData.getBytes(StandardCharsets.UTF_8));
ImportSummary summary = dataValueSetServiceNoMocks.importDataValueSetXml(in);
assertEquals(ImportStatus.SUCCESS, summary.getStatus());
assertEquals(5, summary.getImportCount().getImported());
}
use of org.hisp.dhis.dxf2.datavalueset.DataValueSet in project dhis2-core by dhis2.
the class DataValueSetServiceTest method testImportDataValuesXmlUpdatesOnly.
@Test
void testImportDataValuesXmlUpdatesOnly() throws Exception {
in = new ClassPathResource("datavalueset/dataValueSetB.xml").getInputStream();
ImportOptions importOptions = new ImportOptions().setImportStrategy(ImportStrategy.UPDATES);
IdSchemes idSchemes = new IdSchemes();
idSchemes.setIdScheme("UID");
idSchemes.setDataElementIdScheme("UID");
idSchemes.setOrgUnitIdScheme("UID");
importOptions.setIdSchemes(idSchemes);
ImportSummary summary = dataValueSetService.importDataValueSetXml(in, importOptions);
assertHasNoConflicts(summary);
assertEquals(0, summary.getImportCount().getImported());
assertEquals(0, summary.getImportCount().getUpdated());
assertEquals(0, summary.getImportCount().getDeleted());
assertEquals(12, summary.getImportCount().getIgnored());
assertEquals(ImportStatus.SUCCESS, summary.getStatus());
Collection<DataValue> dataValues = mockDataValueBatchHandler.getInserts();
assertNotNull(dataValues);
assertEquals(0, dataValues.size());
}
use of org.hisp.dhis.dxf2.datavalueset.DataValueSet in project dhis2-core by dhis2.
the class DataValueSetServiceTest method testImportDataValuesXml.
@Test
void testImportDataValuesXml() throws Exception {
in = new ClassPathResource("datavalueset/dataValueSetB.xml").getInputStream();
ImportSummary summary = dataValueSetService.importDataValueSetXml(in);
assertHasNoConflicts(summary);
assertEquals(12, summary.getImportCount().getImported());
assertEquals(0, summary.getImportCount().getUpdated());
assertEquals(0, summary.getImportCount().getDeleted());
assertEquals(0, summary.getImportCount().getIgnored());
assertEquals(ImportStatus.SUCCESS, summary.getStatus());
assertImportDataValues(summary);
}
Aggregations