package cd.casic.server; import cd.casic.ci.process.dto.req.stage.StageCreateReq; import cd.casic.ci.process.dto.req.task.TaskUpdateReq; import cd.casic.ci.process.process.service.stage.StageService; import cd.casic.ci.process.process.service.task.TaskService; import com.alibaba.fastjson.JSON; import jakarta.annotation.Resource; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.ActiveProfiles; @SpringBootTest(classes = {OpsServerApplication.class}) @ActiveProfiles("local") public class TaskTest { @Resource StageService stageService; @Resource TaskService taskService; // 添加串行任务 @Test public void createStageAndTask1(){ // 传入一级stageid ,传入task所属二级stageId,因为结合sort 创建task String reqStr = "{\n" + " \"stageId\": \"716299524129296385\",\n" + " \"task\": {\n" + " \"taskType\": \"AFL\",\n" + " \"taskSort\": 2,\n" + " \"stageId\": \"716299524129296386\",\n" + " \"taskName\": \"AFL执行\",\n" + " \"taskProperties\": {},\n" + " \"pipelineId\": \"716299522803896320\"\n" + " }\n" + "}"; StageCreateReq req = JSON.parseObject(reqStr,StageCreateReq.class); stageService.createStagesOrTask(req); } // 添加并行任务 @Test public void createStageAndTask2(){ // 因为添加并行任务添加顺序固定,而且需要创建二级stage所以不传二级stageid,且不传sort String reqStr = "{\n" + " \"stageId\": \"716299524129296385\",\n" + " \"task\": {\n" + " \"taskType\": \"AFL\",\n" + " \"taskName\": \"AFL执行\",\n" + " \"taskProperties\": {},\n" + " \"pipelineId\": \"716299522803896320\"\n" + " }\n" + "}"; StageCreateReq req = JSON.parseObject(reqStr,StageCreateReq.class); stageService.createStagesOrTask(req); } // 添加阶段并添加task @Test public void createStageAndTask3(){ // 添加阶段所以一级stageId 不传,改为传stageSort,因为二级stage,task永远是第一个,所以都taskSort,和二级stage的stageSort都不需要传 String reqStr = "{\n" + " \"stageSort\": 4,\n" + " \"task\": {\n" + " \"taskType\": \"AFL\",\n" + " \"taskName\": \"AFL执行\",\n" + " \"taskProperties\": {},\n" + " \"pipelineId\": \"716299522803896320\"\n" + " }\n" + "}"; StageCreateReq req = JSON.parseObject(reqStr,StageCreateReq.class); stageService.createStagesOrTask(req); } @Test public void updateTask(){ String reqStr = "{\n" + " \"id\": \"716299524330622976\",\n" + " \"taskType\": \"TEST_CASE_GENERATION\",\n" + " \"taskName\": \"测试用例生成\",\n" + " \"taskProperties\": {\n" + " \"buildScript\": \"cd /home/casic/706/yunqi/CaseGenerator\\nPYTHONPATH=$PWD/src python3 ./src/CaseGenerator/main.py --work-dir ./testdata/libpng/libpng/ --binary ./testdata/libpng/libpng/pngfix --output-dir ../case --count 100\"\n" + " }\n" + "}"; TaskUpdateReq req = JSON.parseObject(reqStr, TaskUpdateReq.class); taskService.updateTask(req); } }