diff --git a/CHANGELOG.md b/CHANGELOG.md index 09737af6..5159c2bd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## 2.6.1 [TODO] +### Fixed +- Fixed V1 schedules endpoint returning an empty list when V1 schedules have a null `partitionId`. + ## 2.6.0 [2026-04-29] ### Fixed - Prevent missing contextual external or previous files from clearing existing contextual data. diff --git a/src/main/java/fr/insee/genesis/domain/model/context/DataProcessingContextModel.java b/src/main/java/fr/insee/genesis/domain/model/context/DataProcessingContextModel.java index ce5b6c70..10b27850 100644 --- a/src/main/java/fr/insee/genesis/domain/model/context/DataProcessingContextModel.java +++ b/src/main/java/fr/insee/genesis/domain/model/context/DataProcessingContextModel.java @@ -13,6 +13,7 @@ import java.time.LocalDateTime; import java.util.List; +import java.util.Objects; @Data @Builder @@ -38,9 +39,9 @@ public List toScheduleV1ResponseDtos() { } return kraftwerkExecutionScheduleList.stream() - .filter(schedule -> schedule != null && schedule.getPartitionId() != null) + .filter(Objects::nonNull) .map(schedule -> ScheduleResponseDto.builder() - .collectionInstrumentId(schedule.getPartitionId()) + .collectionInstrumentId(collectionInstrumentId) .lastExecution(lastExecution) .frequency(schedule.getFrequency()) .scheduleBeginDate(schedule.getScheduleBeginDate()) diff --git a/src/test/java/fr/insee/genesis/domain/model/context/DataProcessingContextModelTest.java b/src/test/java/fr/insee/genesis/domain/model/context/DataProcessingContextModelTest.java index 8b43d210..5139c0df 100644 --- a/src/test/java/fr/insee/genesis/domain/model/context/DataProcessingContextModelTest.java +++ b/src/test/java/fr/insee/genesis/domain/model/context/DataProcessingContextModelTest.java @@ -194,7 +194,7 @@ void toScheduleV1ResponseDtos_null_schedule_ignored_test() { } @Test - void toScheduleV1ResponseDtos_no_partitionId_schedule_ignored_test() { + void toScheduleV1ResponseDtos_no_partitionId_schedule_not_ignored_test() { //GIVEN String collectionInstrumentId = "test"; String frequency = "0 0 0 0 0 0"; @@ -231,7 +231,7 @@ void toScheduleV1ResponseDtos_no_partitionId_schedule_ignored_test() { List scheduleResponseDtoList = dataProcessingContextModel.toScheduleV1ResponseDtos(); //THEN - Assertions.assertThat(scheduleResponseDtoList).hasSize(1); + Assertions.assertThat(scheduleResponseDtoList).hasSize(2); } } diff --git a/src/test/java/fr/insee/genesis/domain/service/context/DataProcessingContextServiceTest.java b/src/test/java/fr/insee/genesis/domain/service/context/DataProcessingContextServiceTest.java index 89a0ae92..c5f553db 100644 --- a/src/test/java/fr/insee/genesis/domain/service/context/DataProcessingContextServiceTest.java +++ b/src/test/java/fr/insee/genesis/domain/service/context/DataProcessingContextServiceTest.java @@ -263,6 +263,7 @@ void getSchedulesV1_test() { DataProcessingContextDocument dataProcessingContextDocument = new DataProcessingContextDocument(); dataProcessingContextDocument.setPartitionId(collectionInstrumentId); + dataProcessingContextDocument.setCollectionInstrumentId(collectionInstrumentId); dataProcessingContextDocument.setKraftwerkExecutionScheduleList(kraftwerkExecutionScheduleList); when(dataProcessingContextPersistancePort.findAll()).thenReturn(List.of(dataProcessingContextDocument));