Improve checks on URI string in MockMvc request builder
Closes gh-24556
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2019 the original author or authors.
|
||||
* Copyright 2002-2020 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -145,7 +145,14 @@ public class MockHttpServletRequestBuilder
|
||||
* @param vars zero or more URI variables
|
||||
*/
|
||||
MockHttpServletRequestBuilder(HttpMethod httpMethod, String url, Object... vars) {
|
||||
this(httpMethod.name(), UriComponentsBuilder.fromUriString(url).buildAndExpand(vars).encode().toUri());
|
||||
this(httpMethod.name(), initUri(url, vars));
|
||||
}
|
||||
|
||||
private static URI initUri(String url, Object[] vars) {
|
||||
Assert.notNull(url, "'url' must not be null");
|
||||
Assert.isTrue(url.startsWith("/") || url.startsWith("http://") || url.startsWith("https://"), "" +
|
||||
"'url' should start with a path or be a complete HTTP URL: " + url);
|
||||
return UriComponentsBuilder.fromUriString(url).buildAndExpand(vars).encode().toUri();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user