테스트케이스

This commit is contained in:
cho
2026-01-10 13:48:36 +09:00
parent d954388c5a
commit a37fd7c8bd
6 changed files with 145 additions and 18 deletions
@@ -1,5 +1,7 @@
package com.eactive.eai.transformer.transform;
import org.json.simple.JSONObject;
import org.json.simple.JSONValue;
import org.junit.Assert;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
@@ -8,9 +10,14 @@ import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.jdbc.Sql;
import com.eactive.eai.common.lifecycle.LifecycleException;
import com.eactive.eai.transformer.engine.TransformEngine;
import com.eactive.eai.transformer.engine.Transformer;
import com.eactive.eai.transformer.function.jpa.TransformJPATestConfiguration;
import com.eactive.eai.transformer.layout.LayoutManager;
import com.eactive.eai.transformer.layout.LayoutTypeManager;
import com.eactive.eai.transformer.message.JSONMessage;
import com.eactive.eai.transformer.message.Message;
import com.eactive.eai.transformer.message.MessageFactory;
@DataJpaTest
@ContextConfiguration(classes = { TransformJPATestConfiguration.class })
@@ -27,6 +34,7 @@ class TransformManagerTest {
@Autowired
LayoutTypeManager layoutTypeManager;
@Test
void testReload() throws LifecycleException {
@@ -36,24 +44,58 @@ class TransformManagerTest {
// when
transformManager.reload();
TransformEngine engine = TransformEngine.getInstance();
// then
Assert.assertTrue(transformManager.getAllTransformName().length > 0);
for (String transformName : transformManager.getAllTransformName()) {
System.out.println("====================================================================================");
System.out.println(transformName);
Transform transform = transformManager.getTransform(transformName);
System.out.print("Source Layouts : ");
transform.getSourceLayouts().forEachRemaining(System.out::print);
System.out.println();
// String data ="{\r\n"
// + " \"data\" : {\r\n"
// + " \"cino\" : \"cino_src\",\r\n"
// + " \"code\" : \"code\",\r\n"
// + " \"listCount\" : 1,\r\n"
// + " \"list\" : [\r\n"
// + " { \"item1\" : \"1111\", \"item2\" : \"2222\" , \"item3\" : \"3333\"},\r\n"
// + " { \"item1\" : \"1111\", \"item2\" : \"2222\" , \"item3\" : \"3333\"},\r\n"
// + " { \"item1\" : \"1111\", \"item2\" : \"2222\" , \"item3\" : \"3333\"}\r\n"
// + " ]\r\n"
// + " }\r\n"
// + " \r\n"
// + "}\r\n"
// + "";
String data = "{ \"cino\" : \"cino\",\r\n"
+ " \"list\" : [\r\n"
+ " { \"str\" : \"11111\", \"num\" : 11111 },\r\n"
+ " { \"str\" : \"22222\", \"num\" : 22222 },\r\n"
+ " { \"str\" : \"33333\", \"num\" : 33333 }\r\n"
+ " ],\r\n"
+ " \"data\" : 1234\r\n"
+ "}\r\n"
+ "";
Message source = MessageFactory.getFactory().getMessage("TST_TOSSTEST2_SRS");
String rootItemName = ((JSONMessage) source).getLayout().getRootItem().getName();
System.out.println("Target Layout : " + transform.getTargetLayout());
transform.getTransformItemList().forEach(System.out::println);
System.out.println("====================================================================================");
// then
Assert.assertTrue(transformManager.getTransform(transformName).getTransformItemList().size() > 0);
}
JSONObject value = (JSONObject) JSONValue.parse(data);
JSONObject root = new JSONObject();
root.put(rootItemName, value);
data = root.toJSONString();
System.out.println(data);
source.setData(data);
System.out.println(source.getData());
//----------------------------------------------------------------------
// 변환 방식 1
//----------------------------------------------------------------------
Transformer transformer = engine.getTransformer();
// Message target = transformer.transform("TRANSFORM_TST_TESTBIGDECIMALS1_REQ", new Message[] { source });
Message target = transformer.transform("TRANSFORM_TST_TEST2_REQ", new Message[] { source });
System.out.println(target.toString());
}
}
@@ -2,4 +2,8 @@ INSERT INTO tseaitr01 (cnvsnname,cnvsndesc,lastamndhms,eaisevrdstcd,modfimgtstus
('TRANSFORM_TST_ETSTTST00000002S1_REQ','BASIC_TEST_001','20220810165406 ','E',' ','1','00000',NULL),
('TRANSFORM_TST_ETSTTST00000002S1_RES','BASIC_TEST_001','20220810165406 ','E',' ','1','00000',NULL),
('TRANSFORM_TST_BASICTEST002_RES','BASIC_TEST_002','20230522163339 ','E',' ','1','0',NULL),
('TRANSFORM_TST_BASICTEST002_REQ','BASIC_TEST_002','20230522163528 ','E',' ','1','0',NULL);
('TRANSFORM_TST_BASICTEST002_REQ','BASIC_TEST_002','20230522163528 ','E',' ','1','0',NULL),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', '변환맵핑 bigdecimal 테스트', '20241226104652 ','E',' ','1','0',NULL),
('TRANSFORM_TST_TEST2_REQ', 'grid-to-group', '20241226104652 ','E',' ','1','0',NULL)
;
@@ -6,4 +6,9 @@ INSERT INTO tseaitr02 (cnvsnname,loutname,sourcrsultdstcd) VALUES
('TRANSFORM_TST_BASICTEST002_RES','TST_TTST10000003_RES','SRC_LAYOUT'),
('TRANSFORM_TST_BASICTEST002_RES','TST_STST10000003_RES','TGT_LAYOUT'),
('TRANSFORM_TST_BASICTEST002_REQ','TST_STST10000003_REQ','SRC_LAYOUT'),
('TRANSFORM_TST_BASICTEST002_REQ','TST_TTST10000003_REQ','TGT_LAYOUT');
('TRANSFORM_TST_BASICTEST002_REQ','TST_TTST10000003_REQ','TGT_LAYOUT'),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', 'ANS_TOSSTEST_TGT', 'TGT_LAYOUT'),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', 'ANS_TOSSTEST_SRS', 'SRC_LAYOUT'),
('TRANSFORM_TST_TEST2_REQ', 'TST_TOSSTEST3_TGT', 'TGT_LAYOUT'),
('TRANSFORM_TST_TEST2_REQ', 'TST_TOSSTEST2_SRS', 'SRC_LAYOUT')
;
@@ -1251,3 +1251,24 @@ INSERT INTO tseaitr03 (cnvsnname,cnvsnrsultitempathname,cnvsncmdname,cnvsnitemba
('TRANSFORM_TST_BASICTEST002_REQ','TST_TTST10000003_REQ.DATA_GROUP[*].DATAFIELD8','TST_STST10000003_REQ.DATA_GROUP[*].DATAFIELD8','',14),
('TRANSFORM_TST_BASICTEST002_REQ','TST_TTST10000003_REQ.DATA_GROUP[*].DATAFIELD9','TST_STST10000003_REQ.DATA_GROUP[*].DATAFIELD9','',15),
('TRANSFORM_TST_BASICTEST002_REQ','TST_TTST10000003_REQ.DATA_GROUP[*].DATAFIELD0','TST_STST10000003_REQ.DATA_GROUP[*].DATAFIELD0','',16);
INSERT INTO tseaitr03 (cnvsnname,cnvsnrsultitempathname,cnvsncmdname,cnvsnitembascval,cnvsnitemserno) VALUES
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', 'ANS_TOSSTEST_TGT.cino' , 'ANS_TOSSTEST_SRS.data.cino', '', 1),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', 'ANS_TOSSTEST_TGT.code' , 'ANS_TOSSTEST_SRS.data.code', '', 2),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', 'ANS_TOSSTEST_TGT.listCount' , 'ANS_TOSSTEST_SRS.data.listCount', '', 3),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', 'ANS_TOSSTEST_TGT.list[*].item1' , 'ANS_TOSSTEST_SRS.data.list[*].item1', '', 4),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', 'ANS_TOSSTEST_TGT.list[*].item2' , 'ANS_TOSSTEST_SRS.data.list[*].item2', '', 5),
('TRANSFORM_TST_TESTBIGDECIMALS1_REQ', 'ANS_TOSSTEST_TGT.list[*].item4' , 'ANS_TOSSTEST_SRS.data.list[*].item3', '', 6)
;
INSERT INTO tseaitr03 (cnvsnname,cnvsnrsultitempathname,cnvsncmdname,cnvsnitembascval,cnvsnitemserno) VALUES
('TRANSFORM_TST_TEST2_REQ', 'TST_TOSSTEST3_TGT.data' , 'TST_TOSSTEST2_SRS.data', '', 1),
('TRANSFORM_TST_TEST2_REQ', 'TST_TOSSTEST3_TGT.list.str' , 'TST_TOSSTEST2_SRS.list[*].str', '', 2),
('TRANSFORM_TST_TEST2_REQ', 'TST_TOSSTEST3_TGT.list.num' , 'TST_TOSSTEST2_SRS.list[*].num', '', 3),
('TRANSFORM_TST_TEST2_REQ', 'TST_TOSSTEST3_TGT.cino' , 'TST_TOSSTEST2_SRS.cino', '', 4)
;
@@ -7,4 +7,10 @@ INSERT INTO tseaitr07 (loutname,loutptrnname,loutdesc,lastamndhms,eaibzwkdstcd,u
('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');
('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_TOSSTEST3_TGT', 'BYTES', '토스 테스트', '2026011010051131', 'TST', ' ', ' ', 'E', ' ', '1', '00002', 'admin')
;
@@ -2555,3 +2555,52 @@ INSERT INTO tseaitr08 (loutname,loutitemname,loutitemserno,loutitemidname,parntl
('TST_TTST10000003_RES','DATA_GROUP',6,1006,1000,'DATA_GROUP',2202,2100,NULL,0,NULL,'DATA_CNT','*',-1,0,'','N',2,0,'',0,NULL,NULL),
('TST_STST10000003_REQ','DATA_GROUP',6,1006,1000,'DATA_GROUP',2202,2113,NULL,0,NULL,'DATA_CNT','*',-1,0,'','N',2,0,'',0,NULL,NULL),
('TST_TTST10000003_REQ','DATA_GROUP',6,1006,1000,'DATA_GROUP',2202,2100,NULL,0,NULL,'DATA_CNT','*',-1,0,'','N',2,0,'',0,NULL,NULL);
INSERT INTO TSEAITR08 (loutname,loutitemname,loutitemserno,loutitemidname,parntloutitemidname,loutitemdesc,loutitemnodeptrnidname,loutitemptrnidname,loutitempathname,loutitemlencnt,loutitemrefinfo,loutitemrefinfo2,loutitemoccurptrndstcd,loutitemmaxoccurnoitm,loutitemminoccurnoitm,loutitembascval,loutitemmskyn,loutdptcnt,decptlencnt,loutitemrefptrnidname,loutitemmasklength,multilang,loutitemmaskoffset) VALUES
('ANS_TOSSTEST_TGT', 'ANS_TOSSTEST_TGT', 0, 1000, 0, '토스 테스트', 2201, 2100, NULL, 0, NULL, NULL, NULL, 0, 0, NULL, NULL, 1, 0, NULL, NULL, NULL, NULL),
('ANS_TOSSTEST_TGT', 'cino', 1, 1001, 1000, 'cino', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, 'String', 0, NULL, NULL),
('ANS_TOSSTEST_TGT', 'code', 2, 1002, 1000, 'code', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, 'String', 0, NULL, NULL),
('ANS_TOSSTEST_TGT', 'listCount', 3, 1003, 1000, 'listCount', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, 'BigDecimal', 0, NULL, NULL),
('ANS_TOSSTEST_TGT', 'list', 4, 1004, 1000, 'list', 2202, 2113, NULL, 0, NULL, 'listCount', '*', -1, 0, NULL, 'N', 2, 0, NULL, 0, NULL, NULL),
('ANS_TOSSTEST_TGT', 'item1', 5, 1005, 1004, 'item1', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'String', 0, NULL, NULL),
('ANS_TOSSTEST_TGT', 'item2', 6, 1006, 1004, 'item2', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'String', 0, NULL, NULL),
('ANS_TOSSTEST_TGT', 'item3', 7, 1007, 1004, 'item3', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'String', 0, NULL, NULL),
('ANS_TOSSTEST_TGT', 'item4', 8, 1008, 1004, 'item4', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'String', 0, NULL, NULL);
INSERT INTO TSEAITR08 (loutname,loutitemname,loutitemserno,loutitemidname,parntloutitemidname,loutitemdesc,loutitemnodeptrnidname,loutitemptrnidname,loutitempathname,loutitemlencnt,loutitemrefinfo,loutitemrefinfo2,loutitemoccurptrndstcd,loutitemmaxoccurnoitm,loutitemminoccurnoitm,loutitembascval,loutitemmskyn,loutdptcnt,decptlencnt,loutitemrefptrnidname,loutitemmasklength,multilang,loutitemmaskoffset) VALUES
('ANS_TOSSTEST_SRS', 'ANS_TOSSTEST_SRS', 0, 1000, 0, '토스 테스트', 2201, 2100, NULL, 0, NULL, NULL, NULL, 0, 0, NULL, NULL, 1, 0, NULL, NULL, NULL, NULL),
('ANS_TOSSTEST_SRS', 'data', 1, 1001, 1000, 'data', 2202, 2100, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, NULL, 0, NULL, NULL),
('ANS_TOSSTEST_SRS', 'cino', 2, 1002, 1001, 'cino', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'String', 0, NULL, NULL),
('ANS_TOSSTEST_SRS', 'code', 3, 1003, 1001, 'code', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'String', 0, NULL, NULL),
('ANS_TOSSTEST_SRS', 'listCount', 4, 1004, 1001, 'listCount', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'String', 0, NULL, NULL),
('ANS_TOSSTEST_SRS', 'list', 5, 1005, 1001, 'list', 2202, 2100, NULL, 0, NULL, NULL, '*', -1, 0, NULL, 'N', 3, 0, NULL, 0, NULL, NULL),
('ANS_TOSSTEST_SRS', 'item1', 6, 1006, 1005, 'item1', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 4, 0, 'String', 0, NULL, NULL),
('ANS_TOSSTEST_SRS', 'item2', 7, 1007, 1005, 'item2', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 4, 0, 'String', 0, NULL, NULL),
('ANS_TOSSTEST_SRS', 'item3', 8, 1008, 1005, 'item3', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 4, 0, 'String', 0, NULL, NULL);
INSERT INTO TSEAITR08 (loutname,loutitemname,loutitemserno,loutitemidname,parntloutitemidname,loutitemdesc,loutitemnodeptrnidname,loutitemptrnidname,loutitempathname,loutitemlencnt,loutitemrefinfo,loutitemrefinfo2,loutitemoccurptrndstcd,loutitemmaxoccurnoitm,loutitemminoccurnoitm,loutitembascval,loutitemmskyn,loutdptcnt,decptlencnt,loutitemrefptrnidname,loutitemmasklength,multilang,loutitemmaskoffset) VALUES
('TST_TOSSTEST2_SRS', 'TST_TOSSTEST2_SRS', 0, 1000, 0, '토스 테스트', 2201, 2100, NULL, 0, NULL, NULL, NULL, 0, 0, NULL, NULL, 1, 0, NULL, NULL, NULL, NULL),
('TST_TOSSTEST2_SRS', 'data', 1, 1001, 1000, 'data', 2203, 2118, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, 'BigDecimal', 0, NULL, NULL),
('TST_TOSSTEST2_SRS', 'list', 2, 1002, 1000, 'list', 2202, 2100, NULL, 0, NULL, NULL, '*', -1, 0, NULL, 'N', 2, 0, NULL, 0, NULL, NULL),
('TST_TOSSTEST2_SRS', 'str', 3, 1003, 1002, 'str', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'String', 0, NULL, NULL),
('TST_TOSSTEST2_SRS', 'num', 4, 1004, 1002, 'num', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'BigDecimal', 0, NULL, NULL),
('TST_TOSSTEST2_SRS', 'cino', 5, 1005, 1000, 'cino', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, 'String', 0, NULL, NULL);
INSERT INTO TSEAITR08 (loutname,loutitemname,loutitemserno,loutitemidname,parntloutitemidname,loutitemdesc,loutitemnodeptrnidname,loutitemptrnidname,loutitempathname,loutitemlencnt,loutitemrefinfo,loutitemrefinfo2,loutitemoccurptrndstcd,loutitemmaxoccurnoitm,loutitemminoccurnoitm,loutitembascval,loutitemmskyn,loutdptcnt,decptlencnt,loutitemrefptrnidname,loutitemmasklength,multilang,loutitemmaskoffset) VALUES
('TST_TOSSTEST2_TGT', 'TST_TOSSTEST2_TGT', 0, 1000, 0, '토스 테스트', 2201, 2100, NULL, 0, NULL, NULL, NULL, 0, 0, NULL, NULL, 1, 0, NULL, NULL, NULL, NULL),
('TST_TOSSTEST2_TGT', 'data', 1, 1001, 1000, 'data', 2203, 2118, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, 'BigDecimal', 0, NULL, NULL),
('TST_TOSSTEST2_TGT', 'list', 2, 1002, 1000, 'list', 2202, 2100, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, NULL, 0, NULL, NULL),
('TST_TOSSTEST2_TGT', 'str', 3, 1003, 1002, 'str', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'String', 0, NULL, NULL),
('TST_TOSSTEST2_TGT', 'num', 4, 1004, 1002, 'num', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'BigDecimal', 0, NULL, NULL),
('TST_TOSSTEST2_TGT', 'cino', 5, 1005, 1000, 'cino', 2203, 2101, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, 'String', 0, NULL, NULL);
INSERT INTO TSEAITR08 (loutname,loutitemname,loutitemserno,loutitemidname,parntloutitemidname,loutitemdesc,loutitemnodeptrnidname,loutitemptrnidname,loutitempathname,loutitemlencnt,loutitemrefinfo,loutitemrefinfo2,loutitemoccurptrndstcd,loutitemmaxoccurnoitm,loutitemminoccurnoitm,loutitembascval,loutitemmskyn,loutdptcnt,decptlencnt,loutitemrefptrnidname,loutitemmasklength,multilang,loutitemmaskoffset) VALUES
('TST_TOSSTEST3_TGT', 'TST_TOSSTEST3_TGT', 0, 1000, 0, '토스 테스트', 2201, 2100, NULL, 0, NULL, NULL, NULL, 0, 0, NULL, NULL, 1, 0, NULL, NULL, NULL, NULL),
('TST_TOSSTEST3_TGT', 'data', 1, 1001, 1000, 'data', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, 'BigDecimal', 0, NULL, NULL),
('TST_TOSSTEST3_TGT', 'list', 2, 1002, 1000, 'list', 2202, 2100, NULL, 0, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, NULL, 0, NULL, NULL),
('TST_TOSSTEST3_TGT', 'str', 3, 1003, 1002, 'str', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'String', 0, NULL, NULL),
('TST_TOSSTEST3_TGT', 'num', 4, 1004, 1002, 'num', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 3, 0, 'BigDecimal', 0, NULL, NULL),
('TST_TOSSTEST3_TGT', 'cino', 5, 1005, 1000, 'cino', 2203, 2113, NULL, 5, NULL, NULL, NULL, 1, 1, NULL, 'N', 2, 0, 'String', 0, NULL, NULL);