feat: move Onnba MCI request conversion to use case
All checks were successful
Deploy to OCIWP / deploy (push) Successful in 6m1s
All checks were successful
Deploy to OCIWP / deploy (push) Successful in 6m1s
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
package io.shinhanlife.dap.mcc.biz.oth.converter;
|
||||
|
||||
import io.shinhanlife.dap.mcc.biz.oth.dto.Onnba3011Request;
|
||||
import io.shinhanlife.dap.mcc.infra.itrf.mci.cfp.a.io.CLCNNB00001_I;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
/**
|
||||
* @package io.shinhanlife.dap.mcc.infra.itrf.mci.cfp.a.converter
|
||||
* @className Onnba3011Converter
|
||||
* @description Converts ONNBA tool input into the CLCNNB00001 MCI payload
|
||||
* @author 0986406
|
||||
* @create 2026.07.27
|
||||
* <pre>
|
||||
* ---------- revision history ----------
|
||||
* date author description
|
||||
* ---------- --------- ---------------------------
|
||||
* 2026.07.27 0986406 initial creation
|
||||
* </pre>
|
||||
*/
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface Onnba3011Converter {
|
||||
|
||||
CLCNNB00001_I toMciRequest(Onnba3011Request source);
|
||||
|
||||
CLCNNB00001_I.UnfcPrbuIrcoAdduDto toUnfcPrbuIrcoAddu(
|
||||
Onnba3011Request.UnfcPrbuIrcoAdduDto source);
|
||||
|
||||
CLCNNB00001_I.SucoIspaBasDto toSucoIspaBas(Onnba3011Request.SucoIspaBasDto source);
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package io.shinhanlife.dap.mcc.biz.oth.usecase.impl;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import io.shinhanlife.dap.mcc.biz.oth.converter.Onnba3011Converter;
|
||||
import io.shinhanlife.dap.mcc.biz.oth.dto.Onnba3011Request;
|
||||
import io.shinhanlife.dap.mcc.infra.itrf.mci.cfp.a.MciCfpaClient;
|
||||
import io.shinhanlife.dap.mcc.infra.itrf.mci.cfp.a.io.CLCNNB00001_I;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.mockito.Mockito;
|
||||
|
||||
/**
|
||||
* @package io.shinhanlife.dap.mcc.biz.oth.usecase.impl
|
||||
* @className OnnbaMciToolUseCaseImplTest
|
||||
* @description ONNBA MCI tool use case test
|
||||
* @author 0986406
|
||||
* @create 2026.07.27
|
||||
* <pre>
|
||||
* ---------- revision history ----------
|
||||
* date author description
|
||||
* ---------- --------- ---------------------------
|
||||
* 2026.07.27 0986406 initial creation
|
||||
* </pre>
|
||||
*/
|
||||
class OnnbaMciToolUseCaseImplTest {
|
||||
|
||||
@Test
|
||||
void convertsToolRequestBeforeCallingMciClient() throws Exception {
|
||||
MciCfpaClient mciCfpaClient = Mockito.mock(MciCfpaClient.class);
|
||||
Onnba3011Converter converter = Mockito.mock(Onnba3011Converter.class);
|
||||
OnnbaMciToolUseCaseImpl useCase = new OnnbaMciToolUseCaseImpl(mciCfpaClient, converter);
|
||||
Onnba3011Request request = new Onnba3011Request();
|
||||
CLCNNB00001_I mciRequest = new CLCNNB00001_I();
|
||||
|
||||
when(converter.toMciRequest(request)).thenReturn(mciRequest);
|
||||
when(mciCfpaClient.callCfpa0001(mciRequest)).thenReturn("success");
|
||||
|
||||
Object result = useCase.callOnnba3011(request);
|
||||
|
||||
assertEquals("success", result);
|
||||
verify(converter).toMciRequest(request);
|
||||
verify(mciCfpaClient).callCfpa0001(mciRequest);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package io.shinhanlife.dap.mcc.infra.itrf.mci.cfp.a.converter;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertNotNull;
|
||||
|
||||
import io.shinhanlife.dap.mcc.biz.oth.converter.Onnba3011Converter;
|
||||
import io.shinhanlife.dap.mcc.biz.oth.dto.Onnba3011Request;
|
||||
import io.shinhanlife.dap.mcc.infra.itrf.mci.cfp.a.io.CLCNNB00001_I;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
|
||||
/**
|
||||
* @package io.shinhanlife.dap.mcc.infra.itrf.mci.cfp.a.converter
|
||||
* @className Onnba3011MciRequestConverterTest
|
||||
* @description ONNBA 3011 request converter test
|
||||
* @author 0986406
|
||||
* @create 2026.07.27
|
||||
* <pre>
|
||||
* ---------- revision history ----------
|
||||
* date author description
|
||||
* ---------- --------- ---------------------------
|
||||
* 2026.07.27 0986406 initial creation
|
||||
* </pre>
|
||||
*/
|
||||
class Onnba3011MciRequestConverterTest {
|
||||
|
||||
private final Onnba3011Converter converter = Mappers.getMapper(Onnba3011Converter.class);
|
||||
|
||||
@Test
|
||||
void mapsRootAndNestedRequestFieldsToMciPayload() {
|
||||
Onnba3011Request source = request();
|
||||
|
||||
CLCNNB00001_I result = converter.toMciRequest(source);
|
||||
|
||||
assertEquals("A", result.getDalScCd());
|
||||
assertEquals("123456", result.getCsNo());
|
||||
assertNotNull(result.getUnfcPrbuIrcoAddu());
|
||||
assertNotNull(result.getSucoIspaBasDto());
|
||||
assertEquals("01", result.getSucoIspaBasDto().getCcnDalTypCd());
|
||||
assertEquals("20260727", result.getSucoIspaBasDto().getSucoYmd());
|
||||
}
|
||||
|
||||
private Onnba3011Request request() {
|
||||
Onnba3011Request request = new Onnba3011Request();
|
||||
request.setDalScCd("A");
|
||||
request.setCsNo("123456");
|
||||
request.setUnfcPrbuIrcoAddu(new Onnba3011Request.UnfcPrbuIrcoAdduDto());
|
||||
|
||||
Onnba3011Request.SucoIspaBasDto suco = new Onnba3011Request.SucoIspaBasDto();
|
||||
suco.setCcnDalTypCd("01");
|
||||
suco.setSucoYmd("20260727");
|
||||
request.setSucoIspaBasDto(suco);
|
||||
return request;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user