Commit Graph
23 Commits
Author SHA1 Message Date
Stéphane Nicoll e7741bf152 Start building against Spring Framework 7.1.0-M1 snapshots
See gh-51123
2026-07-27 21:16:50 +02:00
Stéphane Nicoll 297ee86945 Polish "Deprecate TestRestTemplate"
See gh-46632
2026-07-27 21:12:35 +02:00
Brian Clozel 4daf90ada1 Replace TestRestTemplate with RestTestClient in integration tests
Before deprecating `TestRestTemplate`, we must first stop using it in
integration tests and replace it with:
* `RestTestClient` when the Spring MVC infrastructure is present
* `RestClient` when the test does not have Spring MVC on classpath

See gh-46632
2026-07-27 16:11:46 +02:00
Stéphane Nicoll 3959c56bdd Deprecate RestTemplate support
With Spring Framework 7.1 deprecating RestTemplate for removal, this
commit deprecates our supporting infrastructure as well, and steers
users towards RestClient instead:

* RestTemplateAutoConfiguration and
  RestTemplateObservationAutoConfiguration
* RestTemplateBuilder, RestTemplateBuilderConfigurer, and
  RestTemplateBuilderClientHttpRequestInitializer
* RestTemplateCustomizer, RestTemplateRequestCustomizer, and
  ObservationRestTemplateCustomizer
* MockRestServiceServerAutoConfiguration,
  MockServerRestTemplateCustomizer, and RootUriRequestExpectationManager
  in the test support module

The reference documentation no longer covers RestTemplate and now
solely documents RestClient and WebClient. Code snippets and sample
tests that only existed to illustrate RestTemplate usage have been
removed accordingly.

Closes gh-51118
2026-07-25 08:32:32 +02:00
Stéphane Nicoll 9821dade80 Merge branch '4.0.x' into 4.1.x
Closes gh-51121
2026-07-24 15:19:14 +02:00
Stéphane Nicoll b9ebff0084 Use RestClient in tests and infrastructure code
Closes gh-51120
2026-07-24 15:10:43 +02:00
Andy Wilkinson 6a74bb85a3 Merge branch '4.0.x'
Closes gh-50440
2026-05-14 15:03:44 +01:00
Andy Wilkinson add52b6ccd Merge branch '3.5.x' into 4.0.x
Closes gh-50439
2026-05-14 15:02:24 +01:00
Phillip Webb 0463b4d0bc Add @AutoConfigureWebServer test annotation
Introduce `@AutoConfigureWebServer` test annotation to support
`@SpringBootTest` with specific classes and a random port.

Closes gh-48815
2026-01-21 19:32:43 -08:00
Andy Wilkinson 3873f25eee Merge branch '3.5.x'
Closes gh-48500
2025-12-11 14:57:29 +00:00
Stéphane Nicoll d1e5fe3248 Merge branch '3.5.x'
Closes gh-48106
2025-11-13 10:31:25 +01:00
Stéphane Nicoll 724f706f34 Move auto-configuration for WebTestClient in autoconfigure
Closes gh-47892
2025-10-31 12:05:25 +01:00
Stéphane Nicoll 6b3edf88b9 Document AssertJ support for RestTestClient
Closes gh-47881
2025-10-31 10:13:44 +01:00
Andy Wilkinson 5afbec7033 Correct package in spring-boot-resttestclient to match module name
See gh-46356
See gh-47322
2025-10-10 12:50:48 +01:00
Andy WilkinsonandPhillip Webb 9eb05ebb10 Create spring-boot-resttestclient and spring-boot-webtestclient modules
Create `spring-boot-resttestclient` and `spring-boot-webtestclient`
modules to hold test client auto-configuration and `TestRestTemplate`
code.

Previous these classes were contained in `spring-boot-resetclient-test`
and `spring-boot-webclient-test` which was incorrect since the `-test`
modules should hold code need to test the given modules, not supporting
test classes.

See gh-46356

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2025-10-09 22:12:39 -07:00
Andy Wilkinson 16d8878cd8 Support embedded web environment with @AutoConfigureWebTestClient
Simplify `WebTestClient` testing support by removing the direct
context customizer in favor of using `@AutoConfigureWebTestClient`.

See gh-46356
2025-10-09 22:11:44 -07:00
Andy Wilkinson 3bf53f8bf5 Introduce @AutoConfigureTestRestTemplate
Add `@AutoConfigureTestRestTemplate` which can be used to
auto-configure a `TestRestTemplate`.

See gh-46356
2025-10-09 22:09:36 -07:00
Stéphane Nicoll 533544d8fc Polish 2025-10-07 10:39:54 +02:00
Phillip Webb 2a521ce4e9 Remove spring-boot-web-server-test module
Remove the `spring-boot-web-server-test` module, adding
`SpringBootTestRandomPortContextCustomizerFactory` to
`spring-boot-web-server` as a replacement for
`SpringBootTestRandomPortApplicationListener`.

See gh-46356
See gh-47322
2025-10-01 21:54:54 -07:00
Phillip Webb 279de9e807 Migrate to BaseUrlUriTemplateHandler
Remove `LocalHostUriTemplateHandler` and migrate existing code to use
`BaseUrlUriTemplateHandler`.

See gh-46356
See gh-47322
2025-10-01 21:54:32 -07:00
Phillip Webb 97c89b480f Move @LocalServerPort and @LocalManagementServerPort
Move `@LocalServerPort` and `@LocalManagementServerPort` back to
`spring-boot-test`. The should help reduce upgrade pain since these
annotations are fairly commonly used. It also removes the need for
depending on `spring-boot-webserver-test`.

This is slight compromise with the module structure, since the
web-server module usually contributes the properties referenced
by the annotations.

See gh-46356
See gh-47322
2025-10-01 21:53:58 -07:00
Phillip Webb bba56ffc8b Move RestTestClientBuilderCustomizer to spring-boot-test
Relocate `RestTestClientBuilderCustomizer` to `spring-boot-test`
and break the direct link to web-server by making use of
`spring.factories` and the new `BaseUrlProviders` class.

See gh-46356
2025-10-01 21:51:20 -07:00
Phillip Webb 6f909114e7 Move WebTestClientBuilderCustomizer to spring-boot-test
Relocate `WebTestClientBuilderCustomizer` to `spring-boot-test`
and break the direct link to web-server and http-codec by making
use of `spring.factories` and the new `BaseUrlProviders` class.

A new `spring-boot-test-integration-test` module has also been
added to ensure hold the previous tests.

See gh-46356
2025-10-01 21:50:13 -07:00