@PostMapping("")
    @RequiresPermissions("system:api:add")
    public ShenyuAdminResult createApi(@Valid @RequestBody final ApiDTO apiDTO) {
        return ShenyuAdminResult.success(apiService.createOrUpdate(apiDTO));
    }
@Test
    public void testCreateApi() throws Exception {
        ApiDTO apiDTO = new ApiDTO();
        apiDTO.setContextPath("string");
        apiDTO.setApiPath("string");
        apiDTO.setHttpMethod(0);
        apiDTO.setConsume("string");
        apiDTO.setProduce("string");
        apiDTO.setVersion("string");
        apiDTO.setRpcType("/dubbo");
        apiDTO.setState(0);
        apiDTO.setApiOwner("string");
        apiDTO.setApiDesc("string");
        apiDTO.setApiSource(0);
        apiDTO.setDocument("document");
        apiDTO.setExt("ext");
        given(this.apiService.createOrUpdate(apiDTO)).willReturn(ShenyuResultMessage.CREATE_SUCCESS);
        this.mockMvc.perform(MockMvcRequestBuilders.post("/api")
                        .contentType(MediaType.APPLICATION_JSON)
                        .content(GsonUtils.getInstance().toJson(apiDTO)))
                .andExpect(status().isOk())
                .andExpect(jsonPath("$.message", is(ShenyuResultMessage.CREATE_SUCCESS)))
                .andReturn();
    }