refactor: 添加xpath测试用例
This commit is contained in:
parent
7ddb5f51a3
commit
f023b9c602
|
@ -3,6 +3,7 @@ package io.metersphere.controller;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import io.metersphere.base.domain.User;
|
import io.metersphere.base.domain.User;
|
||||||
import io.metersphere.commons.utils.SessionUtils;
|
import io.metersphere.commons.utils.SessionUtils;
|
||||||
|
import io.metersphere.controller.handler.annotation.NoResultHolder;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
@ -34,6 +35,26 @@ public class TestController {
|
||||||
return jsonObject;
|
return jsonObject;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@NoResultHolder
|
||||||
|
@GetMapping(value = "/xml")
|
||||||
|
public String getXmlString() {
|
||||||
|
return "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n" +
|
||||||
|
"\n" +
|
||||||
|
"<bookstore>\n" +
|
||||||
|
"\n" +
|
||||||
|
"<book>\n" +
|
||||||
|
" <title lang=\"eng\">Harry Potter</title>\n" +
|
||||||
|
" <price>29.99</price>\n" +
|
||||||
|
"</book>\n" +
|
||||||
|
"\n" +
|
||||||
|
"<book>\n" +
|
||||||
|
" <title lang=\"eng\">Learning XML</title>\n" +
|
||||||
|
" <price>39.95</price>\n" +
|
||||||
|
"</book>\n" +
|
||||||
|
"\n" +
|
||||||
|
"</bookstore>";
|
||||||
|
}
|
||||||
|
|
||||||
@GetMapping(value = "/{str}")
|
@GetMapping(value = "/{str}")
|
||||||
public Object getString(@PathVariable String str) throws InterruptedException {
|
public Object getString(@PathVariable String str) throws InterruptedException {
|
||||||
if (StringUtils.equals("error", str)) {
|
if (StringUtils.equals("error", str)) {
|
||||||
|
|
|
@ -2,6 +2,7 @@ package io.metersphere.controller.handler;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import io.metersphere.controller.ResultHolder;
|
import io.metersphere.controller.ResultHolder;
|
||||||
|
import io.metersphere.controller.handler.annotation.NoResultHolder;
|
||||||
import org.springframework.core.MethodParameter;
|
import org.springframework.core.MethodParameter;
|
||||||
import org.springframework.http.MediaType;
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.http.converter.HttpMessageConverter;
|
import org.springframework.http.converter.HttpMessageConverter;
|
||||||
|
@ -30,6 +31,10 @@ public class ResultResponseBodyAdvice implements ResponseBodyAdvice<Object> {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (methodParameter.hasMethodAnnotation(NoResultHolder.class)) {
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
if (!(o instanceof ResultHolder)) {
|
if (!(o instanceof ResultHolder)) {
|
||||||
if (o instanceof String) {
|
if (o instanceof String) {
|
||||||
return JSON.toJSONString(ResultHolder.success(o));
|
return JSON.toJSONString(ResultHolder.success(o));
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
package io.metersphere.controller.handler.annotation;
|
||||||
|
|
||||||
|
import java.lang.annotation.Documented;
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Inherited;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
@Documented
|
||||||
|
@Inherited
|
||||||
|
@Target(ElementType.METHOD)
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
public @interface NoResultHolder {
|
||||||
|
}
|
Loading…
Reference in New Issue