@GetMapping("/configs")
    public Result<List<ConfigInfo>> getConfigList(ConfigInfo configInfo) {
        if (StringUtils.isEmpty(configInfo.getPluginType())) {
            return new Result<>(ResultCodeType.MISS_PARAM.getCode(), ResultCodeType.MISS_PARAM.getMessage());
        }
        Optional<PluginType> optionalPluginType = PluginType.getPluginType(configInfo.getPluginType());
        if (!optionalPluginType.isPresent()) {
            return new Result<>(ResultCodeType.FAIL.getCode(), "Invalid plugin name.");
        }
        PluginType pluginType = optionalPluginType.get();
        boolean exactMatchFlag = false;
        if (pluginType == PluginType.OTHER) {
            if (StringUtils.isEmpty(configInfo.getGroup())) {
                return new Result<>(ResultCodeType.MISS_PARAM.getCode(), ResultCodeType.MISS_PARAM.getMessage());
            }
            exactMatchFlag = true;
        }
        return configService.getConfigList(configInfo, pluginType, exactMatchFlag);
    }
@Test
    public void getConfigList() {
        Result<List<ConfigInfo>> result = configController.getConfigList(configInfo);
        Assert.assertTrue(result.isSuccess());
        Assert.assertNotNull(result.getData());
        Assert.assertEquals(1, result.getData().size());
        ConfigInfo info = result.getData().get(0);
        Assert.assertEquals(info.getKey(), KEY);
        Assert.assertEquals(info.getGroup(), GROUP);
        Assert.assertEquals(info.getServiceName(), SERVICE_NAME);
        Result<List<ConfigInfo>> newResult = configController.getConfigList(new ConfigInfo());
        Assert.assertFalse(newResult.isSuccess());
        Assert.assertNull(newResult.getData());
    }