테스트 케이스 추가

This commit is contained in:
cho
2026-01-15 09:45:41 +09:00
parent 6b55b51ad6
commit 3ebd36d776
9 changed files with 148 additions and 3888 deletions
@@ -425,15 +425,25 @@ public class Transformer {
errors.add(targetMessage.toString()); errors.add(targetMessage.toString());
return; return;
} }
String type = targetMessage.getLayout().getLayoutType().getName();
//변환에서 src->target으로 값이 맵핑된적이 있나? Grid to Group 같은 경우에는 첫그리드 index 항목에서 맵핑후,
if ( resultItem.getValue() != null ) { //같은 path의 Group 항목에 중첩될것이니 flag는 true. 그렇다면 PASS 왜냐하면 고객요건이 Grid to Group에서 Grid 첫번째 항목만 맵핑되었으면 함.
if ( !( resultItem.getValue() instanceof byte[] && ((byte[])resultItem.getValue()).length == 0 ) ) { //해당 로직없으면 계속 덮어씌기가 되며 맨 마지막 index 항목이 맵핑됨.
return; if ( resultItem.isMappingFlag() ) {
} return;
} }
resultItem.mapped();
// if (resultItem.getValue() != null) {
// if (!(resultItem.getValue() instanceof byte[] && ((byte[]) resultItem.getValue()).length == 0)) {
// return;
// }
//
// }
/** /**
* *
@@ -58,6 +58,16 @@ abstract public class Item implements Serializable, Cloneable {
protected String multiLang = ""; // multi language 관련 protected String multiLang = ""; // multi language 관련
boolean mappingFlag = false;
public boolean isMappingFlag() {
return mappingFlag;
}
public void mapped() {
mappingFlag = true;
}
/** /**
* reference item * reference item
*/ */
@@ -194,7 +194,8 @@ public abstract class Leaf extends Item {
public Object clone() { public Object clone() {
Item clone = (Item) super.clone(); Item clone = (Item) super.clone();
clone.initDefaultValue(); clone.initDefaultValue();
clone.setMappedValue(false); clone.setMappedValue(false); //반복횟수 참조변수가 맵핑 되었는지
clone.mappingFlag = false; //SRC->TGT 전문으로 값이 맵핑된적이 있는지에 대한 플래그 위에 flag(mappedValue)랑 헷갈리면 안됨.
return clone; return clone;
} }
@@ -74,7 +74,14 @@ class TransformManagerTest {
+ "}\r\n" + "}\r\n"
+ ""; + "";
Message source = MessageFactory.getFactory().getMessage("TST_TOSSTEST2_SRS"); // String data = "{ \"cino\" : \"cino\",\r\n"
// + " \"list\" : \r\n"
// + " { \"str\" : \"11111\", \"num\" : 11111 },\r\n"
// + " \"data\" : 1234\r\n"
// + "}\r\n"
// + "";
Message source = MessageFactory.getFactory().getMessage("TST_TOSSTEST2_SRC");
String rootItemName = ((JSONMessage) source).getLayout().getRootItem().getName(); String rootItemName = ((JSONMessage) source).getLayout().getRootItem().getName();
@@ -1,9 +1,8 @@
INSERT INTO tseaitr01 (cnvsnname,cnvsndesc,lastamndhms,eaisevrdstcd,modfimgtstusdstcd,useyn,verinfo,author) VALUES INSERT INTO tseaitr01 (cnvsnname,cnvsndesc,lastamndhms,eaisevrdstcd,modfimgtstusdstcd,useyn,verinfo,author) VALUES
('TRANSFORM_TST_ETSTTST00000002S1_REQ','BASIC_TEST_001','20220810165406 ','E',' ','1','00000',NULL), ('TRANSFORM_TST_TEST1_REQ', 'grid-to-grid', '20241226104652 ','E',' ','1','0',NULL),
('TRANSFORM_TST_ETSTTST00000002S1_RES','BASIC_TEST_001','20220810165406 ','E',' ','1','00000',NULL), ('TRANSFORM_TST_TEST2_REQ', 'grid-to-group', '20241226104652 ','E',' ','1','0',NULL),
('TRANSFORM_TST_BASICTEST002_RES','BASIC_TEST_002','20230522163339 ','E',' ','1','0',NULL), ('TRANSFORM_TST_TEST3_REQ', 'grid-to-group(byte)', '20241226104652 ','E',' ','1','0',NULL),
('TRANSFORM_TST_BASICTEST002_REQ','BASIC_TEST_002','20230522163528 ','E',' ','1','0',NULL), ('TRANSFORM_TST_TEST4_REQ', 'group-to-group 기본값', '20241226104652 ','E',' ','1','0',NULL),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', '변환맵핑 bigdecimal 테스트', '20241226104652 ','E',' ','1','0',NULL), ('TRANSFORM_TST_TEST5_REQ', 'group-to-group(byte) 기본값', '20241226104652 ','E',' ','1','0',NULL)
('TRANSFORM_TST_TEST2_REQ', 'grid-to-group', '20241226104652 ','E',' ','1','0',NULL)
; ;
@@ -1,14 +1,12 @@
INSERT INTO tseaitr02 (cnvsnname,loutname,sourcrsultdstcd) VALUES INSERT INTO tseaitr02 (cnvsnname,loutname,sourcrsultdstcd) VALUES
('TRANSFORM_TST_ETSTTST00000002S1_REQ','TST_STST00000002_REQ','SRC_LAYOUT'), ('TRANSFORM_TST_TEST1_REQ', 'TST_TOSSTEST1_TGT', 'TGT_LAYOUT'),
('TRANSFORM_TST_ETSTTST00000002S1_REQ','TST_TTST00000002_REQ','TGT_LAYOUT'), ('TRANSFORM_TST_TEST1_REQ', 'TST_TOSSTEST1_SRC', 'SRC_LAYOUT'),
('TRANSFORM_TST_ETSTTST00000002S1_RES','TST_STST00000002_RES','TGT_LAYOUT'), ('TRANSFORM_TST_TEST2_REQ', 'TST_TOSSTEST2_TGT', 'TGT_LAYOUT'),
('TRANSFORM_TST_ETSTTST00000002S1_RES','TST_TTST00000002_RES','SRC_LAYOUT'), ('TRANSFORM_TST_TEST2_REQ', 'TST_TOSSTEST2_SRC', 'SRC_LAYOUT'),
('TRANSFORM_TST_BASICTEST002_RES','TST_TTST10000003_RES','SRC_LAYOUT'), ('TRANSFORM_TST_TEST3_REQ', 'TST_TOSSTEST2_TGT', 'TGT_LAYOUT'),
('TRANSFORM_TST_BASICTEST002_RES','TST_STST10000003_RES','TGT_LAYOUT'), ('TRANSFORM_TST_TEST3_REQ', 'TST_TOSSTEST2_SRC', 'SRC_LAYOUT'),
('TRANSFORM_TST_BASICTEST002_REQ','TST_STST10000003_REQ','SRC_LAYOUT'), ('TRANSFORM_TST_TEST4_REQ', 'TST_TOSSTEST4_TGT', 'TGT_LAYOUT'),
('TRANSFORM_TST_BASICTEST002_REQ','TST_TTST10000003_REQ','TGT_LAYOUT'), ('TRANSFORM_TST_TEST4_REQ', 'TST_TOSSTEST4_SRC', 'SRC_LAYOUT'),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', 'ANS_TOSSTEST_TGT', 'TGT_LAYOUT'), ('TRANSFORM_TST_TEST5_REQ', 'TST_TOSSTEST5_TGT', 'TGT_LAYOUT'),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', 'ANS_TOSSTEST_SRS', 'SRC_LAYOUT'), ('TRANSFORM_TST_TEST5_REQ', 'TST_TOSSTEST4_SRC', 'SRC_LAYOUT')
('TRANSFORM_TST_TEST2_REQ', 'TST_TOSSTEST3_TGT', 'TGT_LAYOUT'),
('TRANSFORM_TST_TEST2_REQ', 'TST_TOSSTEST2_SRS', 'SRC_LAYOUT')
; ;
File diff suppressed because it is too large Load Diff
@@ -1,16 +1,10 @@
INSERT INTO tseaitr07 (loutname,loutptrnname,loutdesc,lastamndhms,eaibzwkdstcd,uapplname,sysintfacname,eaisevrdstcd,modfimgtstusdstcd,useyn,verinfo,author) VALUES INSERT INTO tseaitr07 (loutname,loutptrnname,loutdesc,lastamndhms,eaibzwkdstcd,uapplname,sysintfacname,eaisevrdstcd,modfimgtstusdstcd,useyn,verinfo,author) VALUES
('STD_HNCPHEADER_REQ','BYTES','하나캐피탈_HEADER','2022081016492819','IIA',' ',' ','E',' ','1','00001','SI210210'), ('TST_TOSSTEST1_SRC', 'JSON', 'bigInteger 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'),
('TST_STST00000002_REQ','BYTES','BASIC_TEST_001','2022081016540565','TST',' ',' ','E',' ','1','00002','admin'), ('TST_TOSSTEST1_TGT', 'BYTES', 'bigInteger 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'),
('TST_STST00000002_RES','BYTES','BASIC_TEST_001','2022081016540567','TST',' ',' ','E',' ','1','00002','admin'), ('TST_TOSSTEST2_SRC', 'JSON', '토스 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'),
('TST_TTST00000002_REQ','JSON','BASIC_TEST_001','2022081016540569','TST',' ',' ','E',' ','1','00002','admin'),
('TST_TTST00000002_RES','JSON','BASIC_TEST_001','2022081016540570','TST',' ',' ','E',' ','1','00002','admin'),
('TST_STST10000003_RES','BYTES','BASIC_TEST_001','2023051815523876','TST',' ',' ','E',' ','1','00002','admin'),
('TST_TTST10000003_REQ','JSON','BASIC_TEST_001','2023051815524814','TST',' ',' ','E',' ','1','00002','admin'),
('TST_TTST10000003_RES','JSON','BASIC_TEST_001','2023051815525581','TST',' ',' ','E',' ','1','00002','admin'),
('TST_STST10000003_REQ','BYTES','BASIC_TEST_001','2023052210512676','TST',' ',' ','E',' ','1','00002','admin'),
('ANS_TOSSTEST_SRS', 'JSON', '토스 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'),
('ANS_TOSSTEST_TGT', 'BYTES', '토스 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'),
('TST_TOSSTEST2_SRS', 'JSON', '토스 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'),
('TST_TOSSTEST2_TGT', 'JSON', '토스 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'), ('TST_TOSSTEST2_TGT', 'JSON', '토스 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'),
('TST_TOSSTEST3_TGT', 'BYTES', '토스 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin') ('TST_TOSSTEST3_TGT', 'BYTES', '토스 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'),
('TST_TOSSTEST4_SRC', 'JSON', '기본값 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'),
('TST_TOSSTEST4_TGT', 'JSON', '기본값 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin'),
('TST_TOSSTEST5_TGT', 'BYTES', '기본값 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin')
; ;
File diff suppressed because it is too large Load Diff