* BAEL-6207 IDD

* Update pom.xml

* Rename HelpRequestServiceTest.java to HelpRequestServiceUnitTest.java

* Update HelpRequestServiceUnitTest.java
This commit is contained in:
Kilian Schneider
2023-02-28 22:57:57 +01:00
committed by GitHub
parent da08a21266
commit 24d57f0ab6
10 changed files with 162 additions and 1 deletions
@@ -0,0 +1,15 @@
package com.baeldung.idd;
public class CreateHelpRequestDTO {
private final HelpRequestStatus status;
public CreateHelpRequestDTO(HelpRequestStatus status) {
this.status = status;
}
public HelpRequestStatus getStatus() {
return status;
}
}
@@ -0,0 +1,13 @@
package com.baeldung.idd;
public class HelpRequestDTO {
private HelpRequestStatus status;
public HelpRequestStatus getStatus() {
return status;
}
public HelpRequestDTO(HelpRequestStatus status) {
this.status = status;
}
}
@@ -0,0 +1,11 @@
package com.baeldung.idd;
import java.util.List;
public interface HelpRequestService {
HelpRequestDTO createHelpRequest(CreateHelpRequestDTO createHelpRequestDTO);
List<HelpRequestDTO> findAllByStatus(HelpRequestStatus status);
HelpRequestDTO updateHelpRequest(UpdateHelpRequestDTO updateHelpRequestDTO);
}
@@ -0,0 +1,24 @@
package com.baeldung.idd;
import java.util.List;
public class HelpRequestServiceImpl implements HelpRequestService {
@Override
public HelpRequestDTO createHelpRequest(CreateHelpRequestDTO createHelpRequestDTO) {
// here goes the implementation
return new HelpRequestDTO(createHelpRequestDTO.getStatus());
}
@Override
public List<HelpRequestDTO> findAllByStatus(HelpRequestStatus status) {
// here goes the implementation
return List.of(new HelpRequestDTO(status), new HelpRequestDTO(status));
}
@Override
public HelpRequestDTO updateHelpRequest(UpdateHelpRequestDTO updateHelpRequestDTO) {
// here goes the implementation
return new HelpRequestDTO(updateHelpRequestDTO.getStatus());
}
}
@@ -0,0 +1,6 @@
package com.baeldung.idd;
public enum HelpRequestStatus {
OPEN, IN_PROGRESS, CLOSED
}
@@ -0,0 +1,14 @@
package com.baeldung.idd;
public class UpdateHelpRequestDTO {
private final HelpRequestStatus status;
public UpdateHelpRequestDTO(HelpRequestStatus status) {
this.status = status;
}
public HelpRequestStatus getStatus() {
return status;
}
}
@@ -0,0 +1,47 @@
package com.baeldung.idd;
import org.assertj.core.api.Assertions;
import org.junit.Test;
import java.util.List;
public class HelpRequestServiceUnitTest {
HelpRequestService testHelpRequestService = new HelpRequestService() {
@Override
public HelpRequestDTO createHelpRequest(CreateHelpRequestDTO createHelpRequestDTO) {
return new HelpRequestDTO(HelpRequestStatus.OPEN);
}
@Override
public List<HelpRequestDTO> findAllByStatus(HelpRequestStatus status) {
return List.of(new HelpRequestDTO(HelpRequestStatus.OPEN));
}
@Override
public HelpRequestDTO updateHelpRequest(UpdateHelpRequestDTO updateHelpRequestDTO) {
return new HelpRequestDTO(HelpRequestStatus.OPEN);
}
};
@Test
public void givenHelpRequest_whenCreateHelpRequest_thenHelpRequestIsCreated() {
// given
CreateHelpRequestDTO createHelpRequestDTO = new CreateHelpRequestDTO(HelpRequestStatus.OPEN);
// when
HelpRequestDTO helpRequestDTO = testHelpRequestService.createHelpRequest(createHelpRequestDTO);
// then
Assertions.assertThat(helpRequestDTO).isNotNull();
Assertions.assertThat(helpRequestDTO.getStatus()).isEqualTo(HelpRequestStatus.OPEN);
}
@Test
public void givenHelpRequestList_whenFindAllByStatus_shouldContainOnlyStatus() {
HelpRequestService helpRequestService = new HelpRequestServiceImpl();
List<HelpRequestDTO> allByStatusOpen = helpRequestService.findAllByStatus(HelpRequestStatus.OPEN);
Assertions.assertThat(allByStatusOpen).extracting(HelpRequestDTO::getStatus).containsOnly(HelpRequestStatus.OPEN);
}
}