Support SameSite cookie attribute in MockMvcHttpConnector
Closes gh-30264
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2002-2022 the original author or authors.
|
* Copyright 2002-2023 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@@ -197,6 +197,7 @@ public class MockMvcHttpConnector implements ClientHttpConnector {
|
|||||||
.path(cookie.getPath())
|
.path(cookie.getPath())
|
||||||
.secure(cookie.getSecure())
|
.secure(cookie.getSecure())
|
||||||
.httpOnly(cookie.isHttpOnly())
|
.httpOnly(cookie.isHttpOnly())
|
||||||
|
.sameSite(cookie.getAttribute("samesite"))
|
||||||
.build();
|
.build();
|
||||||
clientResponse.getCookies().add(httpCookie.getName(), httpCookie);
|
clientResponse.getCookies().add(httpCookie.getName(), httpCookie);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2002-2020 the original author or authors.
|
* Copyright 2002-2023 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@@ -50,6 +50,7 @@ public class CookieAssertionTests {
|
|||||||
CookieLocaleResolver localeResolver = new CookieLocaleResolver();
|
CookieLocaleResolver localeResolver = new CookieLocaleResolver();
|
||||||
localeResolver.setCookieDomain("domain");
|
localeResolver.setCookieDomain("domain");
|
||||||
localeResolver.setCookieHttpOnly(true);
|
localeResolver.setCookieHttpOnly(true);
|
||||||
|
localeResolver.setCookieSameSite("Strict");
|
||||||
|
|
||||||
client = MockMvcWebTestClient.bindToController(new SimpleController())
|
client = MockMvcWebTestClient.bindToController(new SimpleController())
|
||||||
.interceptors(new LocaleChangeInterceptor())
|
.interceptors(new LocaleChangeInterceptor())
|
||||||
@@ -107,6 +108,10 @@ public class CookieAssertionTests {
|
|||||||
client.get().uri("/").exchange().expectCookie().httpOnly(COOKIE_NAME, true);
|
client.get().uri("/").exchange().expectCookie().httpOnly(COOKIE_NAME, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testSameSite() {
|
||||||
|
client.get().uri("/").exchange().expectCookie().sameSite(COOKIE_NAME, "Strict");
|
||||||
|
}
|
||||||
|
|
||||||
@Controller
|
@Controller
|
||||||
private static class SimpleController {
|
private static class SimpleController {
|
||||||
|
|||||||
Reference in New Issue
Block a user