diff --git a/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageDetailVo.java b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageDetailVo.java index 2467cd4f6d90ee5be211a27a33e56397ee670089..0e65d43ec4b478bd63c0cdd1808c343d0954090c 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageDetailVo.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageDetailVo.java @@ -7,11 +7,13 @@ import lombok.NoArgsConstructor; @AllArgsConstructor @NoArgsConstructor public class ApplicationPackageDetailVo { - public String description; + private String description; - public String name; + private String id; - public String license; + private String name; + + private String license; private String download; diff --git a/src/main/java/com/easysoftware/application/domainpackage/dto/DomainColumnCondition.java b/src/main/java/com/easysoftware/application/domainpackage/dto/DomainColumnCondition.java index 16a116aae601cd87c8446814b8032635b4ff78f1..1eca9c4aa3c88055fbd25016270a354ac09223bd 100644 --- a/src/main/java/com/easysoftware/application/domainpackage/dto/DomainColumnCondition.java +++ b/src/main/java/com/easysoftware/application/domainpackage/dto/DomainColumnCondition.java @@ -4,6 +4,7 @@ import org.hibernate.validator.constraints.Range; import com.easysoftware.common.constant.PackageConstant; +import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.Size; import lombok.AllArgsConstructor; import lombok.Data; @@ -21,8 +22,10 @@ public class DomainColumnCondition { private Integer pageSize = 10; @Size(max = 50) + @NotBlank private String name; @Size(max = 50) + @NotBlank private String column; } diff --git a/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java b/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java index a3a44eea283f584b9425cabe5dab5b456ae3368e..e09652979266f9a2764264aa78c9d2849f477e2b 100644 --- a/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java +++ b/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java @@ -34,6 +34,9 @@ public class DomainSearchCondition { @Size(max = 50) private String category; + @Size(max = 50) + private String version; + @EnumValue(enumClass = TimeOrderEnum.class, enumMethod = "isValidCategory") private String timeOrder; diff --git a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java index c489fa959bf6625b412e7e936ba4be363caee4cc..64e47b65a3a00f31732b4c1cb8ec70da97b82914 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java @@ -62,7 +62,7 @@ public class EPKGPackageServiceImpl implements EPKGPackageService { @Override public ResponseEntity insertEPKGPkg(InputEPKGPackage inputEPKGPackage) { - inputEPKGPackage = Base64Util.decode(inputEPKGPackage); + // inputEPKGPackage = Base64Util.decode(inputEPKGPackage); if (StringUtils.isNotBlank(inputEPKGPackage.getId())) { return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0002); @@ -101,7 +101,7 @@ public class EPKGPackageServiceImpl implements EPKGPackageService { @Override public ResponseEntity updateEPKGPkg(InputEPKGPackage inputEPKGPackage) { - inputEPKGPackage = Base64Util.decode(inputEPKGPackage); + // inputEPKGPackage = Base64Util.decode(inputEPKGPackage); if (StringUtils.isBlank(inputEPKGPackage.getId())) { return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0002); @@ -126,7 +126,7 @@ public class EPKGPackageServiceImpl implements EPKGPackageService { Map maintainer = ApiUtil.getApiResponse(String.format(repoMaintainerApi, epkgPkg.getName())); epkgPkg.setMaintainerGiteeId(maintainer.get("gitee_id")); epkgPkg.setMaintainerId(maintainer.get("gitee_id")); - epkgPkg.setMaintianerEmail(maintainer.get("email")); + epkgPkg.setMaintainerEmail(maintainer.get("email")); Map info = ApiUtil.getApiResponse(String.format(repoInfoApi, epkgPkg.getName(), "rpm_openeuler")); epkgPkg.setOs(info.get("os")); diff --git a/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java b/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java index 0bc457bfa157d8693efb0edc93a3ba5f84c452d3..287f8bce5cbb09e70d260595187f267fdd36340c 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java @@ -80,8 +80,8 @@ public class InputEPKGPackage { @Size(max = 255, message = "the length of maintainerId can not exceed 255") private String maintainerId; - @Size(max = 255, message = "the length of maintianerEmail can not exceed 255") - private String maintianerEmail; + @Size(max = 255, message = "the length of maintainerEmail can not exceed 255") + private String maintainerEmail; @Size(max = 255, message = "the length of maintainerGiteeId can not exceed 255") private String maintainerGiteeId; diff --git a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java index 347d11adbcc7f98a533b7015138e73751345754d..1809e6da8bf9beb893d3b6dcbcfa9accbd25de20 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java @@ -54,7 +54,7 @@ public class EPKGPackageDetailVo { private String maintainerId; - private String maintianerEmail; + private String maintainerEmail; private String maintainerGiteeId; diff --git a/src/main/java/com/easysoftware/application/externalos/ExternalOsServiceImpl.java b/src/main/java/com/easysoftware/application/externalos/ExternalOsServiceImpl.java index 7b2347a3d7742f9b2d97d8ce22a79ee5e65d0cb3..e562cdf7ea8cb229662720a96a09adeeadbeddb7 100644 --- a/src/main/java/com/easysoftware/application/externalos/ExternalOsServiceImpl.java +++ b/src/main/java/com/easysoftware/application/externalos/ExternalOsServiceImpl.java @@ -57,7 +57,7 @@ public class ExternalOsServiceImpl implements ExternalOsService { @Override public ResponseEntity insertPkgMap(InputExternalOs input) { - input = Base64Util.decode(input); + // input = Base64Util.decode(input); // 若数据库中已经存在该数据,则请求失败 if (StringUtils.isNotBlank(input.getId())) { @@ -76,7 +76,7 @@ public class ExternalOsServiceImpl implements ExternalOsService { @Override public ResponseEntity updatePkgMap(InputExternalOs input) { - input = Base64Util.decode(input); + // input = Base64Util.decode(input); if (StringUtils.isBlank(input.getId())) { return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0002); diff --git a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java index ed15a9cf1623fede28ebeec3a8e316f088e76dc1..50eb22ef2d176491c64e097155a7ac21e09c37c8 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java @@ -68,7 +68,7 @@ public class RPMPackageServiceImpl implements RPMPackageService { @Override public ResponseEntity insertRPMPkg(InputRPMPackage inputrPMPackage) { - inputrPMPackage = Base64Util.decode(inputrPMPackage); + // inputrPMPackage = Base64Util.decode(inputrPMPackage); if (StringUtils.isNotBlank(inputrPMPackage.getId())) { return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0002); @@ -99,7 +99,7 @@ public class RPMPackageServiceImpl implements RPMPackageService { @Override public ResponseEntity updateRPMPkg(InputRPMPackage inputrPMPackage) { - inputrPMPackage = Base64Util.decode(inputrPMPackage); + // inputrPMPackage = Base64Util.decode(inputrPMPackage); if (StringUtils.isBlank(inputrPMPackage.getId())) { return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0002); @@ -124,7 +124,7 @@ public class RPMPackageServiceImpl implements RPMPackageService { Map maintainer = ApiUtil.getApiResponse(String.format(repoMaintainerApi, rPMPkg.getName())); rPMPkg.setMaintainerGiteeId(maintainer.get("gitee_id")); rPMPkg.setMaintainerId(maintainer.get("gitee_id")); - rPMPkg.setMaintianerEmail(maintainer.get("email")); + rPMPkg.setMaintainerEmail(maintainer.get("email")); Map info = ApiUtil.getApiResponse(String.format(repoInfoApi, rPMPkg.getName(), "rpm_openeuler")); rPMPkg.setOs(info.get("os")); diff --git a/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java b/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java index 8c414fab00926f1bed9341c69f4ab22091d80080..29b63c7f129c35a8d58289b4eee43b37a26c1448 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java @@ -79,8 +79,8 @@ public class InputRPMPackage { @Size(max = 255, message = "the length of maintainerId can not exceed 255") private String maintainerId; - @Size(max = 255, message = "the length of maintianerEmail can not exceed 255") - private String maintianerEmail; + @Size(max = 255, message = "the length of maintainerEmail can not exceed 255") + private String maintainerEmail; @Size(max = 255, message = "the length of maintainerGiteeId can not exceed 255") private String maintainerGiteeId; diff --git a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDetailVo.java b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDetailVo.java index f1d7794158e4ecd5009697c6e03da7281fd82085..b6d95880ec8b1cf292ae0e502e3ee7effd76e110 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDetailVo.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDetailVo.java @@ -10,6 +10,8 @@ import lombok.NoArgsConstructor; public class RPMPackageDetailVo { private String name; + private String id; + private String version; private String os; @@ -50,7 +52,7 @@ public class RPMPackageDetailVo { private String maintainerId; - private String maintianerEmail; + private String maintainerEmail; private String maintainerGiteeId; diff --git a/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java b/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java index 8f020fe7c1c0dd14d281a3d4d585c40d3578643e..dfdcf38e754dae380bee68d1f461b98526ecf5ce 100644 --- a/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java +++ b/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java @@ -54,7 +54,7 @@ public class EPKGPackage { private String maintainerId; - private String maintianerEmail; + private String maintainerEmail; private String maintainerGiteeId; diff --git a/src/main/java/com/easysoftware/domain/rpmpackage/RPMPackage.java b/src/main/java/com/easysoftware/domain/rpmpackage/RPMPackage.java index 40ae824b56f9be74c1a831292ee1884e0de936f6..53f20371961a837c0643d87c7062b5b214f675ab 100644 --- a/src/main/java/com/easysoftware/domain/rpmpackage/RPMPackage.java +++ b/src/main/java/com/easysoftware/domain/rpmpackage/RPMPackage.java @@ -54,7 +54,7 @@ public class RPMPackage { private String maintainerId; - private String maintianerEmail; + private String maintainerEmail; private String maintainerGiteeId; diff --git a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java index 6be20daba747e4ef7d04b60f6a01e2d3e5eff008..bccfa24074bcbd55a5a93e3c691efcb9e88994cf 100644 --- a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java @@ -65,7 +65,7 @@ public class EPKGPackageDO { private String maintainerId; - private String maintianerEmail; + private String maintainerEmail; private String maintainerGiteeId; diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java index 1e5f85dd57346d657f54c50fb6887fd7a0abe613..d98960c49ba7a4719137ab3a3ba6e4b5ae99f546 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java @@ -67,7 +67,7 @@ public class RPMPackageDO { private String maintainerId; - private String maintianerEmail; + private String maintainerEmail; private String maintainerGiteeId; diff --git a/src/test/java/com/easysoftware/adapter/execute/RPMPackageExecuteAdapterTest.java b/src/test/java/com/easysoftware/adapter/execute/RPMPackageExecuteAdapterTest.java new file mode 100644 index 0000000000000000000000000000000000000000..aa1387b1a0ef62034f6a58b450ac2df92129d401 --- /dev/null +++ b/src/test/java/com/easysoftware/adapter/execute/RPMPackageExecuteAdapterTest.java @@ -0,0 +1,120 @@ +package com.easysoftware.adapter.execute; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import java.nio.charset.Charset; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.MethodOrderer; +import org.junit.jupiter.api.Order; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestMethodOrder; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.obs.services.internal.io.InterruptableInputStream; + +import lombok.extern.slf4j.Slf4j; + +@SpringBootTest +@AutoConfigureMockMvc +@Slf4j +@TestMethodOrder(MethodOrderer.OrderAnnotation.class) +public class RPMPackageExecuteAdapterTest { + @Autowired + private WebApplicationContext webApplicationContext; + private MockMvc mockMvc; + + @Autowired + private ObjectMapper objectMapper; + + @BeforeEach + public void setUp() throws Exception { + mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); + } + + @Test + @Order(1) + void test_insert_rpmpkg() throws Exception { + String postJson = "{\n" + + "\"name\": \"testtest\",\n" + + "\"version\": \"test\"\n" + + "}"; + + System.out.println(postJson); + + MvcResult result = mockMvc.perform(MockMvcRequestBuilders.post("/rpmpkg") + .contentType(MediaType.APPLICATION_JSON) + .content(postJson) + .accept(MediaType.APPLICATION_JSON)) + .andReturn(); + + String content = result.getResponse().getContentAsString(Charset.defaultCharset()); + Map res = objectMapper.readValue(content, Map.class); + int code = (int) res.get("code"); + assertEquals(code, 200); + } + + Map searchPkg(String name) throws Exception { + MvcResult result = mockMvc.perform(MockMvcRequestBuilders.get("/rpmpkg") + .param("name", name) + .accept(MediaType.APPLICATION_JSON)) + .andReturn(); + + String content = result.getResponse().getContentAsString(Charset.defaultCharset()); + Map res = objectMapper.readValue(content, Map.class); + + Map data = (Map) res.get("data"); + List list = (List) data.get("list"); + if (list.size() == 0) { + return new HashMap(); + } + Map pkg = (Map) list.get(0); + return pkg; + } + + @Test + @Order(2) + void test_update_rpmpkg() throws Exception { + Map pkg = searchPkg("testtest"); + String id = pkg.get("id"); + String name = pkg.get("name"); + + MvcResult putResult = mockMvc.perform(MockMvcRequestBuilders.put("/rpmpkg") + .contentType(MediaType.APPLICATION_JSON) + .content(String.format("{\n" + + " \"id\": \"%s\",\n" + + " \"name\": \"%s\",\n" + + " \"version\": \"update version\"\n" + + "}", id, name)) + .accept(MediaType.APPLICATION_JSON)) + .andReturn(); + + Map updatePkg = searchPkg("testtest"); + String version = updatePkg.get("version"); + assertEquals(version, "update version"); + } + + @Test + @Order(3) + void test_delete_rpmpkg() throws Exception { + Map pkg = searchPkg("testtest"); + String id = pkg.get("id"); + + MvcResult result = mockMvc.perform(MockMvcRequestBuilders.delete("/rpmpkg/{ids}", id) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON)) + .andReturn(); + + Map stillPkg = searchPkg("testtest"); + assertEquals(stillPkg.size(), 0); + } +} diff --git a/src/test/java/com/easysoftware/adapter/query/DomainPackageQueryAdapterTest.java b/src/test/java/com/easysoftware/adapter/query/DomainPackageQueryAdapterTest.java index c398db4db94a4f45eb188ebdd00dcd8bc9a9c0fc..af30f330a3153b9daf334b511a8b724792a1ab94 100644 --- a/src/test/java/com/easysoftware/adapter/query/DomainPackageQueryAdapterTest.java +++ b/src/test/java/com/easysoftware/adapter/query/DomainPackageQueryAdapterTest.java @@ -35,6 +35,7 @@ public class DomainPackageQueryAdapterTest { @Autowired private WebApplicationContext webApplicationContext; + private MockMvc mockMvc; @Autowired @@ -66,7 +67,45 @@ public class DomainPackageQueryAdapterTest { log.debug("name: {}, column: {}, data: {}", name, column, res); } } + } - + @Test + void test_domain_search() throws Exception { + List names = List.of("epkgpkg", "rpmpkg"); + List verisons = List.of("1.4.3.36-3"); + List oses = List.of("openEuler-22.03"); + List arches = List.of("aarch,"); + List categories = List.of("Unspecified"); + List tiemOrders = List.of("asc", "desc"); + + for (String version : verisons) { + for (String name : names) { + for (String os : oses) { + for (String arch : arches) { + for (String category : categories) { + for (String timeOrder : tiemOrders) { + MvcResult result = mockMvc.perform(MockMvcRequestBuilders.get("/domain") + .param("name", name) + .param("os", os) + .param("arch", arch) + .param("version", version) + .param("category", category) + .param("timeOrder", timeOrder) + .accept(MediaType.APPLICATION_JSON)) + .andReturn(); + + String content = result.getResponse().getContentAsString(Charset.defaultCharset()); + Map res = objectMapper.readValue(content, Map.class); + int code = (int) res.get("code"); + assertEquals(code, 200); + log.debug("name: {}, os: {}, arch: {}, category: {}, timeOrder: {}, res: {}", name, os, + arch, category, timeOrder, res); + } + } + } + } + } + } } } + diff --git a/src/test/java/com/easysoftware/adapter/query/RPMPackageQueryAdapterTest.java b/src/test/java/com/easysoftware/adapter/query/RPMPackageQueryAdapterTest.java new file mode 100644 index 0000000000000000000000000000000000000000..b539feda3393043bc91777a653074da22061bb67 --- /dev/null +++ b/src/test/java/com/easysoftware/adapter/query/RPMPackageQueryAdapterTest.java @@ -0,0 +1,48 @@ +package com.easysoftware.adapter.query; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import java.nio.charset.Charset; +import java.util.Map; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; +import com.fasterxml.jackson.databind.ObjectMapper; +import lombok.extern.slf4j.Slf4j; + +@SpringBootTest +@AutoConfigureMockMvc +@Slf4j +public class RPMPackageQueryAdapterTest { + @Autowired + private WebApplicationContext webApplicationContext; + private MockMvc mockMvc; + + @Autowired + private ObjectMapper objectMapper; + + @BeforeEach + public void setUp() throws Exception { + mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); + } + + @Test + public void test_rpmpkg() throws Exception { + MvcResult result = mockMvc.perform(MockMvcRequestBuilders.get("/rpmpkg") + .param("name", "test") + .accept(MediaType.APPLICATION_JSON)) + .andReturn(); + + String content = result.getResponse().getContentAsString(Charset.defaultCharset()); + Map res = objectMapper.readValue(content, Map.class); + int code = (int) res.get("code"); + assertEquals(code, 200); + } +}