LCF 공통 프레임워크 매핑 규칙 정의 #5

Open
forge-bot wants to merge 3 commits from forge/BAIS-SPRING-ARC-002-attempt-1 into main
3 changed files with 67 additions and 0 deletions

View file

@ -0,0 +1,3 @@
# BAIS-SPRING-ARC-002-attempt-1
Forge 이슈 작업 브랜치 `forge/BAIS-SPRING-ARC-002-attempt-1`.

View file

@ -0,0 +1,40 @@
package com.example.lcf;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.transaction.annotation.Transactional;
public class LcfMappingRules {
private static final Logger logger = LoggerFactory.getLogger(LcfMappingRules.class);
public void lcfTry(Runnable action) {
try {
action.run();
} catch (Exception e) {
lcfSetErr(e);
}
}
public void lcfSetErr(Exception e) {
logger.error("Error occurred: ", e);
// 추가적인 에러 처리 로직
}
public void lcfLog(String message) {
logger.info(message);
}
@Transactional
public void batchCommit(Runnable batchAction) {
try {
batchAction.run();
} catch (Exception e) {
// 롤백 처리
throw e;
}
}
public double performDecimalOperation(double a, double b) {
return a + b; // 예시로 덧셈을 수행
}
}

View file

@ -0,0 +1,24 @@
package com.example.lcf;
import org.junit.jupiter.api.Test;
import static org.mockito.Mockito.*;
import static org.junit.jupiter.api.Assertions.*;
class LcfMappingRulesTest {
@Test
void testLcfTry() {
LcfMappingRules rules = new LcfMappingRules();
Runnable action = mock(Runnable.class);
doThrow(new RuntimeException("Test Exception")).when(action).run();
rules.lcfTry(action);
// 예외가 발생했는지 확인하는 로직 추가
}
@Test
void testPerformDecimalOperation() {
LcfMappingRules rules = new LcfMappingRules();
double result = rules.performDecimalOperation(5.0, 3.0);
assertEquals(8.0, result);
}
}