Commit Graph

821 Commits

Author SHA1 Message Date
Johnny Lim bc7fc90550 Replace Base64Utils with JDK's Base64
See gh-33967
2023-01-31 10:20:06 +01:00
Phillip Webb 71efc55bf9 Merge branch '2.7.x' 2023-01-18 16:31:53 -08:00
Phillip Webb 7c508fa324 Update copyright year of changed files 2023-01-18 15:37:58 -08:00
Moritz Halbritter 94f4a4396c Merge branch '2.7.x'
Closes gh-33880
2023-01-18 17:35:52 +01:00
Moritz Halbritter e8d809fe65 Replace 'via' with 'over' or 'through' in the documentation
Closes gh-33878
2023-01-18 16:56:42 +01:00
Phillip Webb a2ac38e203 Update copyright year of changed files 2023-01-09 15:46:07 -08:00
Krzysztof Krason cf6493f65c Simplify AssertJ assertions and also make them more readable
See gh-33653
2023-01-09 11:10:20 +01:00
Phillip Webb f588793445 Update copyright year of changed files 2022-12-22 01:00:42 -08:00
Phillip Webb 532fed3147 Increase couchbase connection timeout for tests 2022-12-22 00:49:04 -08:00
Moritz Halbritter 08659baeba Polish away public modifier on tests 2022-12-16 16:08:44 +01:00
Moritz Halbritter 725337f976 Make fields final
Closes gh-33537
2022-12-16 14:28:44 +01:00
Brian Clozel 928df41f61 Start building against Reactor 2022.0.1 SNAPSHOTs
See gh-33475
2022-12-07 14:45:42 +01:00
Brian Clozel ce33ec19cd Start building against Spring GraphQL 1.1.1-SNAPSHOT
See gh-33477
2022-12-07 14:43:04 +01:00
Moritz Halbritter fad610ef72 Add factory for NoopTracer instead of using instance supplier
Closes gh-33298
2022-11-22 14:02:57 +01:00
Johnny Lim 6027508cf7 Polish
See gh-33108
2022-11-16 10:00:36 +01:00
Andy Wilkinson d34ccb3880 Avoid duplicate test database replacement in native tests
Closes gh-33100
2022-11-10 19:25:36 +00:00
Andy Wilkinson fcbc7dacf1 Add reflection hints for JsonTesters
Closes gh-32858
2022-11-09 15:15:29 +00:00
Andy Wilkinson b357239861 Upgrade to Jakarta Activation 2.1.0
Closes gh-33045
2022-11-08 11:01:17 +00:00
Moritz Halbritter 85fd475821 Add noop tracer bean if tracing is disabled
The new functionality doesn't expose any public API
and works the same as WebTestClientContextCustomizer
does.

Closes gh-32907
2022-11-02 15:45:39 +01:00
Scott Frederick c81ebf63d9 Use ApplicationContextFailureProcessor to log report on failure
Closes gh-31793
2022-10-31 15:15:49 -05:00
Andy Wilkinson 99edda735e Polish 2022-10-25 12:57:58 +01:00
Madhura Bhave ce3c933f77 Adapt to Spring Security changes
Closes gh-32604
2022-10-19 11:46:27 -07:00
Phillip Webb e0b67889a8 Use Stream.toList instead of Stream.collect when possible
Update code to make use of `Stream.toList()` whenever possible.

Closes gh-28177
2022-10-04 00:29:22 -07:00
Andy Wilkinson 51df7813a5 Remove code deprecated in 2.x and add since and forRemoval attributes
Closes gh-32548
Closes gh-32549
2022-09-30 14:39:05 +01:00
dreis2211 f0b4a65546 Avoid usage of StringBuffer where possible
See gh-32519
2022-09-29 09:29:10 +02:00
Brian Clozel eac50a8f0c Auto-configure Observation support for RestTemplate
Prior to this commit, Spring Boot would auto-configure a customizer that
instruments `RestTemplate` through a `RestTemplateBuilder`. This would
install a request interceptor that instrumented client exchanges for
producing metrics.

As of spring-projects/spring-framework#28341, the instrumentation is
done at the `RestTemplate` level directly using the `Observation` API.
The `Tag` (now `KeyValue`) extraction, observation name and
instrumentation behavior now lives in the Spring Framework project.

This commit updates the auto-configuration to switch from Boot-specific
Metrics instrumentation to a generic Observation instrumentation.
As a migration path, some configuration properties are deprecated in
favor of the new `management.observations.*` namespace.

Closes gh-32484
2022-09-27 22:19:01 +02:00
Stephane Nicoll 0f325f98b5 Disable ContextCustomizer implementations at runtime if necessary
This commit disables ContextCustomizer implementations that tune a
test configuration context at runtime. Previously, these ran again and
required additional hints to work properly.

Rather than contributing those hints, the customizer is skipped as its
impact is irrelevant in an AOT-optimized context: the context is fully
prepared and the updates on the MergedContextConfiguration are not taken
into account.

Closes gh-32422
2022-09-20 04:34:58 +02:00
Andy Wilkinson 0476b5da5d Upgrade to Selenium HtmlUnit 3.64.0 and Selenium 4.4.0
Closes gh-32372
Closes gh-32373
2022-09-15 12:31:56 +01:00
Andy Wilkinson d103bbc034 Avoid returning null from TestContext.getTestClass()
Our mock didn't configure an expectation so null was returned. That's
prohibited by the javadoc and some recent Framework changes mean that
it's no longer tolerated.
2022-09-13 17:41:06 +01:00
Phillip Webb 46be4a3f30 Merge branch '2.7.x' 2022-09-08 19:38:18 -07:00
Madhura Bhave 0991bd3983 Harmonize data configuration
Any classes that rely on Spring Data being on the classpath
have been moved under a data package.

Certain configuration properties have also been updated to
accurately reflect whether Spring Data is required for the
auto-configuration to work.

Closes gh-11574
2022-08-05 13:32:25 -07:00
Brian Clozel 38f1bc9793 Reinstate Spring for GraphQL auto-configuration
This commit adds the Spring for GraphQL auto-configuration back
into Spring Boot 3.0, now that a 1.1.0 release is scheduled with the
required baseline. This release also needs GraphQL Java 19.0 as a
baseline.

Closes gh-31809
2022-08-01 14:33:25 +02:00
Andy Wilkinson 5c057a2730 Auto-configure the new Elasticsearch clients
This commit introduces auto-configuration for the new Elasticsearch
clients that are based upon their new Java client. The new Java
client builds on top of their existing low-level REST client,
replacing the high-level REST client which has been deprecated.
As part of introducing support for the new Elasticsearch client,
the auto-configuration for the templates (both imperative and
reactive) provided by Spring Data has also been updated to use the
new templates that build upon the new Java client.

As part of these changes, support for the high-level REST client and
the old Spring Data Elasticsearch templates has been removed. One
significant change is that the new reactive template is no longer
based on WebClient. As a result, the WebClient-specific configuration
property has been removed.

Closes gh-30647
Closes gh-28597
Closes gh-31755
2022-07-19 15:26:42 +01:00
Oliver Drotbohm b10c57551c Upgrade to Hibernate 6.1.1.Final
This commit makes the following potentially breaking changes:

- Dependency management for modules that do not exist in Hibernate
  6.1 has been removed.
- Hibernate's modules are now in the org.hibernate.orm group. Users
  not using the starter or using modules that are not in the starter
  will have to update their build configuration accordingly.
- spring.jpa.hibernate.use-new-id-generator-mappings has been removed
  as Hibernate no longer supports switching back to the old ID
  generator mappings.

Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>

Closes gh-31674
2022-07-12 09:36:34 +01:00
Andy Wilkinson eb9df8ebfe Adapt to changes in Spring Data Elasticsearch's transitive deps
See gh-31611
2022-07-07 22:22:28 +01:00
Andy Wilkinson 21f5f43365 Make Elasticsearch's version class available 2022-07-07 19:14:44 +01:00
Andy Wilkinson 7f00378eaf Polish "Start building against Spring Data 2022.0.0-M5 snapshots"
See gh-31582
2022-07-07 16:32:13 +01:00
Andy Wilkinson ac59b5781f Align with breaking changes in spring-test
See gh-31241
2022-06-26 09:55:36 +01:00
dreis2211 458f989cf3 Use switch expressions where appropriate
See gh-31527
2022-06-24 16:19:28 +01:00
Andy Wilkinson 631b1e0d76 Merge branch '2.7.x'
Closes gh-31526
2022-06-24 13:10:10 +01:00
Andy Wilkinson 1e08f545d0 Merge branch '2.6.x' into 2.7.x
Closes gh-31525
2022-06-24 13:05:06 +01:00
Andy Wilkinson f49b16c645 Upgrade to Spring Java Format 0.0.34
Closes gh-31524
2022-06-24 12:57:52 +01:00
dreis2211 5db04da275 Use pattern matching for instanceof where appropriate
See gh-31475
2022-06-20 17:55:36 +01:00
Johnny Lim 43c2f1c03c Polish AutoConfigureObservability changes
See gh-31457
2022-06-20 07:38:22 +02:00
Stephane Nicoll e746dfa677 Polish "Allow configuring WebDriver with TestNG"
See gh-27947
2022-06-19 10:35:09 +02:00
AlexCD 4872523181 Allow configuring WebDriver with TestNG
See gh-27947
2022-06-19 10:33:54 +02:00
Stephane Nicoll b0f5fb51fc Adapt to deprecation of NestedServletException 2022-06-14 17:45:31 +02:00
Moritz Halbritter b250d8a1e4 Add @AutoConfigureObservability annotation
This annotation is read by ObservabilityContextCustomizerFactory, which
then sets test properties depending on the annotation attributes.

@AutoConfigureMetrics is deprecated, to support backwards compatability
it's now meta-annotated with @AutoConfigureObservability

See gh-31308
2022-06-10 14:25:12 +02:00
Andy Wilkinson 91bb5aa222 Move auto-config of ReactiveElasticClient to elasticsearch pkg
Closes gh-28068
2022-06-09 11:42:09 +01:00
Andy Wilkinson 5dfa5adb75 Merge branch '2.7.x'
Closes gh-31178
2022-05-26 15:54:58 +01:00
Andy Wilkinson 455ee0ce22 Merge branch '2.6.x' into 2.7.x
Closes gh-31177
2022-05-26 15:53:38 +01:00
Andy Wilkinson ee45fd2fc8 Remove redundant throws declarations from internal APIs
Closes gh-31176
2022-05-26 15:47:35 +01:00
Scott Frederick 7e089a6b81 Remove support for embedded MongoDB
This commit removes auto-configuration and dependency management
for Flapdoodle embedded MongoDB in favor of the Spring Boot support
provided by Flapdoodle.

Closes gh-30863
2022-05-06 17:05:36 -05:00
Phillip Webb dd5696b59b Update copyright year of changed files 2022-04-20 15:26:30 -07:00
Phillip Webb 36f1249fc6 Polish 2022-04-20 15:26:15 -07:00
Stephane Nicoll 2d663f2e94 Upgrade to Spring Data 2021.2.0-RC1
Closes gh-30610
2022-04-20 08:05:15 +02:00
Brian Clozel d137f92f66 Adapt to latest Spring for GraphQL changes
This commit adapts to changes done in spring-projects/spring-graphql#312
2022-04-19 16:58:06 +02:00
Andy Wilkinson 4e054385a4 Polish 2022-04-12 21:58:08 +01:00
Brian Clozel e0ae1d3501 Use auto-configured JSON codecs for GraphQlTester
Prior to this commit, the auto-configured
`ExecutionGraphQlServiceTester` would use a default Jackson
`ObjectMapper` provided by the builder for its JSON
serialization/deserialization needs. Other testers, like the
`HttpGraphQlTester` are based on auto-configured components which
already use the auto-configured `ObjectMapper`.

This commit uses the newly introduced `encoder(Encoder<?>)` and
`decoder(Decoder<?>)` builder methods to configure custom JSON codecs
honoring the application configuration.

Closes gh-30646
2022-04-12 21:28:21 +02:00
Andy Wilkinson 44211564a4 Adapt to latest changes in Micrometer 2.0 snapshots
See gh-29666
2022-04-12 15:25:43 +01:00
Andy Wilkinson 6580f6c742 Align with latest changes in Micrometer 1.9 snapshots
See gh-30605
2022-04-12 11:47:34 +01:00
Andy Wilkinson b871a1e457 Merge branch '2.7.x' 2022-04-12 08:51:47 +01:00
Andy Wilkinson 48f8021d88 Migrate @Local*Port annotations to spring-boot-test
Closes gh-29589
2022-04-12 08:48:43 +01:00
Andy Wilkinson 24e6417ddc Adapt to latest changes in Spring for GraphQL snapshots
See gh-30463
2022-03-29 16:50:12 +01:00
Brian Clozel 93817c708e Switch to Spring for GraphQL 1.0.0-SNAPSHOT
See gh-30463
2022-03-29 16:37:21 +02:00
Moritz Halbritter be3523b1cd Move metric properties
- Moved from 'management.metrics.export.<product>' to
  'management.<product>.metrics.export'
- The default enabled property moved from 'management.metrics.export.defaults.enabled'
  to 'management.defaults.metrics.export.enabled'

Closes gh-30381
2022-03-28 08:24:03 +02:00
Andy Wilkinson 5d09260870 Reinstate support for REST Assured
Closes gh-29543
Closes gh-30426
2022-03-25 10:12:42 +00:00
Stephane Nicoll 7da035b12d Merge branch '2.7.x' 2022-03-21 13:35:21 +01:00
Stephane Nicoll 7f52820e17 Update copyright year of changed files
See gh-30236
2022-03-21 13:30:46 +01:00
izeye 455e0bfa08 Polish StandardAnnotationCustomizableTypeExcludeFilters
See gh-30236
2022-03-21 13:30:07 +01:00
Brian Clozel bae62c39a9 Adapt to latest Spring GraphQL changes
This commit adapts to the latest Spring GraphQL changes, renaming
`GraphQlService` to `ExecutionGraphQlService` as well as the
`WebInterceptor` contract to `WebGraphQlHandlerInterceptor`.

See spring-projects/spring-graphql#332
2022-03-21 11:12:59 +01:00
Andy Wilkinson 568cd687af Remove support for REST Assured until it supports Groovy 4.0
REST Assured does not work with Groovy 4.0 so support is being
temporarily removed again.

See gh-29543
2022-03-18 12:35:19 +00:00
Andy Wilkinson e60001fb16 Adapt to deprecations in Spring Data Redis
See gh-30200
2022-03-18 11:16:55 +00:00
Andy Wilkinson a2ecd600f8 Merge branch '2.7.x' 2022-03-11 11:03:46 +00:00
Andy Wilkinson 1c19995db7 Merge branch '2.6.x' into 2.7.x
Closes gh-30165
2022-03-11 11:03:20 +00:00
Andy Wilkinson 6bbf3aff0e Merge branch '2.5.x' into 2.6.x
Closes gh-30164
2022-03-11 11:03:01 +00:00
Andy Wilkinson eef89c6c35 Increase tests' Cassandra timeouts to 60s
Closes gh-30163
2022-03-11 11:02:18 +00:00
Andy Wilkinson faf7a35425 Merge branch '2.7.x' 2022-03-10 16:51:56 +00:00
Andy Wilkinson 6494a9f08a Merge branch '2.6.x' into 2.7.x
Closes gh-30165
2022-03-10 16:51:43 +00:00
Andy Wilkinson 7c3c5d3d3e Merge branch '2.5.x' into 2.6.x
Closes gh-30164
2022-03-10 16:51:33 +00:00
Andy Wilkinson bbdef2b026 Increase timeouts in tests that use Cassandra
Closes gh-30163
2022-03-10 16:50:39 +00:00
Gautham Mohan 4388910435 Consider DataFetcherExceptionResolver in GraphQTest
Prior to this commit, `@GraphQlTest` slice tests would only consider
JsonComponent, RuntimeWiringConfigurer, Converter and
GenericConverter beans. But DataFetcherExceptionResolver,
Instrumentation and GraphQlSourceBuilderCustomizer are used in
setting up the GraphQL source.

This commit ensures that the `GraphQlTypeExcludeFilter` considers
those bean types.

Closes gh-30078
2022-03-08 17:54:55 +01:00
Brian Clozel 81754c8bc4 Upgrade to Spring GraphQL 1.0.0-SNAPSHOT
This commit switches to 1.0.0-SNAPSHOT for Spring GraphQL, before its
upcoming 1.0.0-M6 version.

This commit adapts to the changes introduced in
spring-projects/spring-graphql#317 : now that `GraphQlClient` has been
introduced, `GraphQlTester` has been aligned with the new
infrastructure. The `@GraphQlTest` and `@SpringBootTest` testing support
is now using different variants for each.

All samples have been updated to use the proper GraphQL terminology, see
and spring-projects/spring-graphql#310 .

See gh-29637
2022-03-08 17:54:54 +01:00
Moritz Halbritter 1793cee00f Start building against Micrometer 2.0.0-M3
See gh-29753
2022-03-04 11:03:22 +01:00
Moritz Halbritter 9c958669f4 Add io.micrometer:micrometer-binders as dependency to the test suite 2022-03-01 11:56:43 +01:00
Andy Wilkinson 7dc40e95d2 Merge branch '2.7.x' 2022-02-24 12:06:21 +00:00
Andy Wilkinson 664ecbdcc1 Polish "Add DataCouchbaseTest annotation"
See gh-29912
2022-02-24 12:05:36 +00:00
Eddú Meléndez 36e52758a7 Add DataCouchbaseTest annotation
See gh-29912
2022-02-24 11:45:09 +00:00
Andy Wilkinson 4093fff225 Merge branch '2.7.x' 2022-02-24 11:24:23 +00:00
Andy Wilkinson 53292a1f94 Polish "Add DataElasticsearchTest annotation"
See gh-29911
2022-02-24 11:21:24 +00:00
Eddú Meléndez e22f78bc6a Add DataElasticsearchTest annotation
See gh-29911
2022-02-24 10:27:20 +00:00
Phillip Webb 9f00c3acf5 Polish 2022-02-23 21:44:43 -08:00
Moritz Halbritter 54f1058d63 Merge branch '2.7.x' 2022-02-23 16:10:49 +01:00
Moritz Halbritter 9149ae50da Use @AutoConfiguration for relative ordering on auto-configurations 2022-02-23 15:39:46 +01:00
Moritz Halbritter d42f675959 Merge branch '2.7.x' 2022-02-21 10:36:05 +01:00
Moritz Halbritter d7b229d3c7 Rename AutoConfigurationLoader to ImportCandidates
Move the class to a more suitable package, and load the files from
META-INF/spring/<fqn>.imports

See gh-29872
2022-02-21 10:34:38 +01:00
Scott Frederick cb69d01e04 Merge branch '2.7.x' into main 2022-02-17 19:07:24 -06:00
Scott Frederick 42328771ad Suppress deprecation warnings for WebSecurityConfigurerAdapter
Fixes gh-29897
2022-02-17 19:06:13 -06:00
Moritz Halbritter 42808ff13c Merge branch '2.7.x'
# Conflicts:
#	spring-boot-project/spring-boot-actuator-autoconfigure/src/main/resources/META-INF/spring.factories
#	spring-boot-project/spring-boot-autoconfigure/src/main/resources/META-INF/spring.factories
#	spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring.factories
2022-02-17 10:56:23 +01:00
Moritz Halbritter 7c96294641 Move our auto-configurations from spring.factories to new file
Closes gh-29873
2022-02-17 10:18:46 +01:00
Moritz Halbritter 303979fb65 Merge branch '2.7.x' 2022-02-17 09:17:35 +01:00
Moritz Halbritter 7d68b58c8f Load auto-configurations from META-INF/spring-boot
Implements a new AutoConfigurationLoader, which loads
auto-configurations from a file in META-INF/spring-boot.

Adapts the AutoConfigurationImportSelector to use the new loader.

Adapts the ImportAutoConfigurationImportSelector to use the new loader.

Adapts the metadata plugin in the build to additionally load the
auto-configurations from the new file.

Updates the documentation for auto-configurations and test slices.

Closes gh-29872
2022-02-17 09:17:23 +01:00
Phillip Webb ff4b92a3ba Update copyright year of changed files 2022-02-16 20:44:54 -08:00
Madhura Bhave bf1ed5f2f8 Update copyright header on changed files 2022-02-16 14:24:22 -08:00
Madhura Bhave 44b88cc88c Allow @ConstructorBinding to be optional
This commit makes @ConstructorBinding optional for a type
that has a single parameterized constructor. An @Autowired annotation
on any of the constructors indicates that the type should not be constructor
bound.

Since @ConstructorBinding is now deduced for a single parameterized constructor,
the annotation is no longer needed at the type level.

Closes gh-23216
2022-02-16 13:47:26 -08:00
Moritz Halbritter fdb1010cbc Migrate auto-configurations to @AutoConfiguration
Closes gh-29871
2022-02-16 15:48:27 +01:00
Moritz Halbritter 8e99788fc8 Migrate auto-configurations to @AutoConfiguration
Closes gh-29871
2022-02-16 13:55:16 +01:00
Stephane Nicoll 3b4832445b Merge branch '2.7.x' 2022-02-05 14:02:00 +01:00
Stephane Nicoll 8c8c9c5f28 Upgrade to H2 2.1.210
H2 2.x contains several important changes such as moving the primary key
generation mechanism to a sequence-based identifier. This commit fixes
a number of tests that were failing.

Closes gh-29651

Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>
2022-02-05 13:36:53 +01:00
Phillip Webb a282f912e6 Organize imports
Organize imports according to updated checkstyle rules.
2022-02-02 19:16:13 -08:00
Phillip Webb 501d174db0 Merge branch '2.7.x' 2022-02-02 10:38:46 -08:00
Stephane Nicoll 41fb9cf562 Merge branch '2.7.x' 2022-02-01 11:15:49 +01:00
Stephane Nicoll f812b33cbd Merge branch '2.6.x' into 2.7.x
Closes gh-29613
2022-02-01 11:07:31 +01:00
Stephane Nicoll 136b5959c3 Merge branch '2.5.x' into 2.6.x
Closes gh-29612
2022-02-01 10:59:08 +01:00
Stephane Nicoll 7f17f819a6 Polish "Enforce use of BDDMockito"
See gh-29178
2022-02-01 10:03:18 +01:00
Yanming Zhou b49418aaaf Enforce use of BDDMockito
1. Replace Mockito.verify*() with BDDMockito.then()
2. Replace Mockito.doReturn() with BDDMockito.willReturn()
3. Adjust checkstyle rule

See gh-29178
2022-02-01 09:37:15 +01:00
Andy Wilkinson 191333773f Restore support for REST Assured
Closes gh-29543
2022-01-24 13:46:48 +00:00
Stephane Nicoll 4d03f89a55 Harmonize dependency upgrades with Spring Boot 2.7.0-M1
Closes gh-29476
2022-01-19 10:39:18 +01:00
Andy Wilkinson 12cd97a20c Reinstate support for Thymeleaf 2022-01-18 16:01:29 +00:00
Andy Wilkinson c2e86096cd Reinstate support for jOOQ as it now supports Jakarta EE 9
Closes gh-29271
2022-01-05 15:46:54 +00:00
Phillip Webb 06398eabed Merge branch '2.7.x' 2022-01-04 12:26:24 -08:00
Phillip Webb b25e92f3e2 Merge branch '2.6.x' into 2.7.x 2022-01-04 12:24:34 -08:00
Phillip Webb 760dcffd8b Merge branch '2.7.x' 2022-01-04 12:22:54 -08:00
Stephane Nicoll e2f274f01d Merge branch '2.7.x' 2022-01-04 15:36:12 +01:00
Stephane Nicoll 9b34c31916 Polish "Include AbstractJdbcConfiguration beans in @DataJdbcTest"
See gh-29003
2022-01-04 15:32:23 +01:00
raviu 7f8dd81947 Include AbstractJdbcConfiguration beans in @DataJdbcTest
See gh-29003
2022-01-04 15:30:54 +01:00
Stephane Nicoll a2bed160f0 Upgrade to Selenium 4.1.1
Closes gh-29237
2022-01-03 11:04:53 +01:00
Stephane Nicoll 09486b8fc7 Merge branch '2.7.x' 2021-12-27 12:03:11 +01:00
Stephane Nicoll 2b140950e3 Merge branch '2.6.x' into 2.7.x
Closes gh-29176
2021-12-27 12:02:57 +01:00
izeye 7fbb5749d1 Polish
See gh-29157
2021-12-27 12:01:50 +01:00
Brian Clozel f61c87c3a7 Revert "Merge branch '2.7.x'"
This reverts commit f0677a119c, reversing
changes made to 938d58f32c.
2021-12-21 09:05:06 +01:00
Brian Clozel f0677a119c Merge branch '2.7.x' 2021-12-21 09:04:10 +01:00
Brian Clozel a34308e5f7 Add GraphQlTest slice
This commit adds the `@GraphQlTest` annotation which brings a new type
of sliced test for GraphQL applications. This considers all the required
infrastructure brought by `@AutoConfigureGraphQl`, but also brings
application components like `@Controller` beans and
`RuntimeWiringConfigurer`.

With this type of test, we'll only initialize a minimal setup for
testing a set of Controllers, without involving any transport-related
component.

See gh-29140
2021-12-21 08:34:15 +01:00
Brian Clozel c0707e4f5b Auto-configure GraphQlTester
This commit adds the required infrastructure to auto-configure a
`GraphQlTester` or `WebGraphQlTester` in Spring Boot tests.
Specific annotations like `AutoConfigureGraphQlTester` and
`AutoConfigureWebGraphQlTester` will contribute pre-configured beans for
testing a GraphQL with the tester.

This also ships a `ContextCustomize` for contributing a `GraphQlTester`
in the case of a full `@SpringBootTest` integration test against a live
server.

See gh-29140
2021-12-21 08:34:06 +01:00
Brian Clozel 9a92a9c91d Add AutoConfigureGraphQl test annotation
This commit adds the `@AutoConfigureGraphQl` test annotation. It can be
used to import the relevant auto-configurations when testing a GraphQL
application.
Currently, it will get the main `GraphQlAutoConfiguration`, but also
what's required for configuring codecs and validation support.

See gh-29140
2021-12-21 08:34:00 +01:00
Phillip Webb 003fb229fd Merge branch '2.7.x' 2021-12-16 13:07:22 -08:00
Andy Wilkinson fe7b13ec46 Upgrade to Spring Framework 6 and Jakarta EE 9
Closes gh-28619
Closes gh-28620
Closes gh-28621
Closes gh-28622
Closes gh-28623
Closes gh-28624
Closes gh-28625
Closes gh-28626
Closes gh-28627
Closes gh-28628
Closes gh-28629
Closes gh-28630
Closes gh-28631
Closes gh-28632
Closes gh-28633
Closes gh-28634
Closes gh-28635
Closes gh-28636
Closes gh-28638
Closes gh-28639
Closes gh-28640
Closes gh-28644
Closes gh-28645
Closes gh-28650
Closes gh-28711
Closes gh-28866
Closes gh-28867
Closes gh-28868
Closes gh-28872

See gh-28641
See gh-28642
See gh-28643
See gh-28646
See gh-28647
See gh-28648
See gh-28649
See gh-28721
See gh-28869
See gh-28871
2021-11-30 20:32:16 +00:00
Andy Wilkinson 4a8904aaa9 Drop support for jOOQ until its dependencies are Jakarta EE 9 compatible
Closes gh-28821
2021-11-30 15:55:48 +00:00
Scott Frederick 015dca1956 Remove support for Thymeleaf
Closes gh-28611
2021-11-30 15:55:47 +00:00
Andy Wilkinson f26995307e Remove support for REST Assured until it supports Jakarta EE 9
Closes gh-28722
2021-11-30 15:55:47 +00:00
Andy Wilkinson 5944041f2a Switch to Yasson for JSON-B testing
Closes gh-28615
2021-11-30 15:39:08 +00:00
Andy Wilkinson 2a342ef416 Merge branch '2.5.x'
Closes gh-28662
2021-11-12 23:40:35 +00:00
Andy Wilkinson 5e4a502b2d Merge branch '2.4.x' into 2.5.x
Closes gh-28661
2021-11-12 20:31:25 +00:00
Andy Wilkinson 2cec3971d7 Prohibit unwanted dependencies in all modules not just starters
Closes gh-28658
2021-11-12 20:04:35 +00:00
Stephane Nicoll bf88405121 Flag BeanDefinitionRegistryPostProcessor beans with role infrastructure
Closes gh-28540
2021-11-05 14:20:37 +01:00
Phillip Webb 0561992c2a Update copyright year of changed files 2021-10-13 18:45:38 -07:00
Leo Li 1770f065a5 Polish
See gh-28239
2021-10-13 09:07:33 +02:00
Stephane Nicoll c56bba98d9 Harmonize bean type visibility in TestDatabaseAutoConfiguration
Closes gh-28264
2021-10-08 15:45:36 +02:00
Andy Wilkinson 1a505964ee Merge branch '2.5.x'
Closes gh-28207
2021-10-06 10:03:24 +01:00
Andy Wilkinson 1931104d13 Merge branch '2.4.x' into 2.5.x
Closes gh-28206
2021-10-06 09:57:19 +01:00
Andy Wilkinson 9c9fbf400e Upgrade to Spring Java Format 0.0.29
Closes gh-28205
2021-10-06 09:52:45 +01:00
Stephane Nicoll 1b7536fda4 Merge branch '2.5.x'
Closes gh-28160
2021-10-01 08:14:03 +02:00
Stephane Nicoll 1c139b1d23 Merge branch '2.4.x' into 2.5.x
Closes gh-28159
2021-10-01 08:13:49 +02:00
Stephane Nicoll bedd749e1c Polish "Clarify use of @AutoConfigureTestEntityManager"
See gh-28086
2021-10-01 08:12:01 +02:00
Leo Li 70f64f2c26 Clarify use of @AutoConfigureTestEntityManager
This commit makes it clearer that, when using
@AutoConfigureTestEntityManager outside of @DataJpaTest, any tests using
the test entity manager must be @Transactional.

See gh-28086
2021-10-01 07:55:57 +02:00
dreis2211 cf0fcafd13 Polish
See gh-27940
2021-09-21 08:08:29 +02:00
Yanming Zhou 6e9bdacc10 Include WebMvcRegistrations beans in WebMvcTest
See gh-27823
2021-09-10 07:55:26 +02:00
Andy Wilkinson fd2fbcb3c6 Merge branch '2.5.x'
Closes gh-27758
2021-08-18 18:28:34 +01:00
Brian Clozel 8b3bea173c Configure WebTestClient for @AutoConfigureMockMvc tests
As of Spring Framework 5.3, `WebTestClient` can now be configured on top
of `MockMvc` for testing Spring MVC applications in a mock environment.

Prior to this commit, `WebTestClient` would be already configured for
WebFlux mock setups with `@AutoConfigureWebTestClient` or live servers
(for both MVC and WebFlux apps).

This commit enhances the `@AutoConfigureWebMvc` support so that a
`WebTestClient` instance is auto-configured if the spring-webflux
dependency is present on the classpath.

Closes gh-23067
2021-08-03 09:43:44 +02:00
Andy Wilkinson 2482607a06 Merge branch '2.5.x'
Closes gh-27526
2021-07-29 17:42:40 +01:00
Andy Wilkinson 533bb24b55 Merge branch '2.4.x' into 2.5.x
Closes gh-27525
2021-07-29 17:42:26 +01:00
Andy Wilkinson ad2d9c0ab1 Customize Cassandra's configuration to reduce container startup time
Closes gh-27524
2021-07-29 17:33:56 +01:00
Andy Wilkinson 11fc231cc9 Merge branch '2.5.x'
Closes gh-27491
2021-07-26 13:53:44 +01:00
Andy Wilkinson 1bf466702b Merge branch '2.4.x' into 2.5.x
Closes gh-27490
2021-07-26 13:53:31 +01:00
Andy Wilkinson 0326fa47b7 Make DataJpaTestSchemaCredentialsIntegrationTests create the schema
Closes gh-26106
2021-07-26 13:51:23 +01:00
Phillip Webb 7e9ac39f0d Update copyright year of changed files 2021-07-22 09:50:37 -07:00
Andy Wilkinson 3d581847e6 Merge branch '2.5.x'
Closes gh-27370
2021-07-16 15:46:39 +01:00
Andy Wilkinson 96111514e1 Merge branch '2.4.x' into 2.5.x
Closes gh-27369
2021-07-16 15:46:27 +01:00
Andy Wilkinson 06a3c40506 Use a 10s init query timeout in Cassandra tests
Closes gh-27368
2021-07-16 15:45:49 +01:00
Andy Wilkinson 43f1b98864 Polish "Add @WebServiceServerTest slice test support"
See gh-27091
2021-07-16 11:28:39 +01:00
Daniil Razorenov c897b1e689 Add @WebServiceServerTest slice test support
Add `@WebServiceServerTest` and related test auto-configuration to
allow slice testing of Spring Web Service server applications.

See gh-27091
2021-07-16 10:11:06 +01:00
Phillip Webb 4d62e47c5d Merge branch '2.3.x' into 2.4.x 2021-06-08 18:05:12 -07:00
Phillip Webb 9e1c78da99 Update copyright year of changed files 2021-06-08 18:03:46 -07:00
Stephane Nicoll cb7c3774a7 Merge branch '2.4.x'
Closes gh-26646
2021-05-24 11:39:57 +02:00
Stephane Nicoll 942691753d Merge branch '2.3.x' into 2.4.x
Closes gh-26645
2021-05-24 11:39:38 +02:00
dreis2211 01ee6190a2 Remove workaround for SUREFIRE-1679
See gh-26632
2021-05-24 11:15:58 +02:00
weixsun 8a2be288a3 Remove unnecessary throws declaration in tests
See gh-26441
2021-05-17 09:31:51 +02:00
Stephane Nicoll 6df3a8291e Merge branch '2.4.x'
Closes gh-26328
2021-04-30 14:36:04 +02:00
Stephane Nicoll 01d2c70e8c Merge branch '2.3.x' into 2.4.x
Closes gh-26327
2021-04-30 14:35:52 +02:00
Stephane Nicoll 07358c6b79 Support reactive infrastructure with DataRedisTest
Previously DataRedisTest-annotated test could not use reactive
operations as RedisReactiveAutoConfiguration is not considered. This
commit includes this auto-configuration and adds a test to exercise this
scenario.

Closes gh-26319
2021-04-30 14:32:25 +02:00
Phillip Webb 2f852fa256 Update copyright year of changed files 2021-04-23 23:42:14 -07:00
Stephane Nicoll e3f81f0243 Merge branch '2.4.x' 2021-04-21 17:23:42 +02:00
Stephane Nicoll db7460ddd5 Polish contribution based on Andy's review
See gh-26188
2021-04-21 17:23:21 +02:00
Stephane Nicoll 3ca6ed6246 Polish
Closes gh-26190
2021-04-21 17:20:22 +02:00
izeye 4be48d0d50 Polish
See gh-26188
2021-04-21 15:20:06 +02:00
Phillip Webb beaf03a008 Update copyright year of changed files 2021-04-15 12:22:48 -07:00
Andy Wilkinson 9d0e1a2cb3 Include SQL init auto-config in Data RDBC test slice
Closes gh-24741
2021-04-14 16:37:33 +01:00
Andy Wilkinson 05adf02a47 Include SQL init auto-config in JDBC-based test slices
Closes gh-25323
2021-04-14 15:11:28 +01:00
Stephane Nicoll 0d81b4d07e Merge branch '2.3.x' into 2.4.x
Closes gh-26108
2021-04-14 15:04:28 +02:00
Stephane Nicoll 0fb482579b Harmonize Neo4jContainer startup options
Closes gh-26084
2021-04-14 14:50:04 +02:00
Andy Wilkinson a58b25b5db Add package-info to o.s.b.test.autoconfigure.data.Cassandra
Closes gh-26081
2021-04-13 20:14:29 +01:00
Stephane Nicoll fd6ad5b889 Merge branch '2.3.x' into 2.4.x
Closes gh-26024
2021-04-12 14:19:41 +02:00
Stephane Nicoll 7286c33f53 Document default behaviour of DataJpaTest#showSql
Closes gh-25843
2021-04-12 14:14:36 +02:00
izeye 852e5778a3 Polish
See gh-25875
2021-04-04 11:12:03 +02:00
Phillip Webb 363f5829d1 Merge branch '2.3.x' into 2.4.x
Closes gh-25825
2021-03-29 15:46:50 -07:00
Phillip Webb 11a94ee6f0 Merge branch '2.3.x' into 2.4.x 2021-03-23 12:52:07 -07:00
Phillip Webb 82127fdaa3 Update copyright year of changed files 2021-03-23 12:50:49 -07:00
Andy Wilkinson 96ba9ae47f Merge branch '2.3.x' into 2.4.x
Closes gh-25768
2021-03-23 14:48:24 +00:00
Andy Wilkinson 62023104de Test auto-configured MockRestServiceServer with metrics and a root URI
Closes gh-25741
2021-03-23 14:37:37 +00:00
Andy Wilkinson 788a42d694 Merge branch '2.3.x' into 2.4.x
See gh-25076
2021-02-02 15:12:27 +00:00
Andy Wilkinson 67479b6380 Add junit-platform-launcher dependency by convention
Closes gh-25074
2021-02-02 13:03:21 +00:00
Andy Wilkinson 79c0597aa2 Merge branch '2.3.x' into 2.4.x
Closes gh-25072
2021-02-01 15:39:19 +00:00
Andy Wilkinson 3585d20453 Include IDialect beans in WebFluxTest and WebMvcTest
Fixes gh-24149
2021-02-01 15:03:08 +00:00
Phillip Webb d06407ec0a Update copyright year of changed files 2021-01-26 19:06:14 -08:00
Phillip Webb d95d7a0245 Update code for Spring Framework 5.3.4
See gh-24998
2021-01-26 17:35:54 -08:00
Andy Wilkinson a67edfbeb7 Merge branch '2.3.x' into 2.4.x
Closes gh-24518
2020-12-15 17:21:39 +00:00
Andy Wilkinson 76198f9a8d Include properties from test-autoconfigure in config props appendix
Closes gh-24486
2020-12-15 17:20:21 +00:00
Phillip Webb 72d36e0c07 Update copyright year of changed files 2020-12-10 10:46:04 -08:00
Stephane Nicoll 93d83342d2 Merge branch '2.3.x'
Closes gh-24401
2020-12-08 15:42:52 +01:00
Stephane Nicoll 06671aa50e Stop deferring JPA bootstrap mode by default
This commit changes the default value of bootstrap-mode to "default"
rather than "deferred" so that the JPA infrastructure starts in the
main thread rather than asynchronously.

Closes gh-24249
2020-12-08 15:42:14 +01:00
Phillip Webb 30c27274e2 Merge branch '2.3.x'
Closes gh-24339
2020-12-04 18:31:55 -08:00
Phillip Webb 5f351a6983 Merge branch '2.2.x' into 2.3.x
Closes gh-24338
2020-12-04 18:21:57 -08:00
Phillip Webb 837fc83527 Fix checkstyle header violations
See gh-24337
2020-12-04 18:05:53 -08:00
Stephane Nicoll b6fc0913cf Merge branch '2.3.x'
Closes gh-24104
2020-11-10 17:44:05 +01:00
Stephane Nicoll 515b18e142 Merge branch '2.3.x'
Closes gh-24108
2020-11-10 17:10:26 +01:00
Stephane Nicoll 9e901b6e07 Upgrade to Testcontainers 1.15.0
Closes gh-24103
2020-11-10 16:24:16 +01:00
Stephane Nicoll 23ad2b4156 Rationalize Testcontainers image versions
This commit rationalizes the Docker image names used in integration
tests.

Closes gh-24107
2020-11-10 16:04:27 +01:00
Andy Wilkinson a4505eaeb0 Merge branch '2.3.x'
Closes gh-24024
2020-11-04 09:41:41 +00:00
Andy Wilkinson 81f672eae3 Merge branch '2.2.x' into 2.3.x
Closes gh-24023
2020-11-04 09:40:54 +00:00
Andy Wilkinson 28ccf54b21 Ignore schema username when auto-configuring a test DB
Previously, when an embedded test database was being auto-configured
any schema username and password specified by the user would result
in a separate embedded test database being created to load the schema.
This then left the actual test database without the schema causing
test failures.

This commit updates the test database auto-configuration to set the
schema username to an empty string in a property source that's added
first to the environment's property sources. This causes any schema
username configured by the user to be ignored, preventing the creation
of a separate database for schema.sql processing.

Fixes gh-19321
2020-11-04 09:30:19 +00:00
Andy Wilkinson c93d91175d Merge branch '2.3.x'
Closes gh-24007
2020-11-03 10:27:53 +00:00
Andy Wilkinson 2513071b1f Merge branch '2.2.x' into 2.3.x
Closes gh-24006
2020-11-03 10:27:38 +00:00
Andy Wilkinson 622606d85a Make it clearer that only the main DataSource bean may be replaced
Closes gh-23808
2020-11-03 10:24:44 +00:00
Andy Wilkinson 8004a821f2 Fix nested test config discovery for sliced tests
Fixes gh-23984
2020-11-02 20:40:27 +00:00
Phillip Webb 929d8fcd3c Update copyright year of changed files 2020-10-29 09:08:13 -07:00
Andy Wilkinson 506f7acc8d Streamline use of TestContextAnnotationUtils
See gh-12470
2020-10-28 10:20:14 +00:00
Andy Wilkinson 6b437ece54 Inherit enclosing class's configuration in nested tests
Fixes gh-12470
2020-10-28 08:56:42 +00:00
Phillip Webb 11a153869f Polish 'Support nested @PropertyMapping annotations'
See gh-23146
2020-10-27 18:49:04 -07:00
Stefan Zwanenburg edf4c833c2 Support nested @PropertyMapping annotations
Update `AnnotationsPropertySource` so that nested annotations are
supported. Prior to this commit, annotations annotated with
`@PropertyMapping` that contained nested annotation attributes would
result in instances of `TypeMappedAnnotation` being used as properties.
This usually led to errors due to not being able to convert those to
Strings. This commit makes it so that nested annotations are recursively
mapped to properties. This should allow for more complex configuration
to be mapped from annotations.

See gh-23146
2020-10-27 18:48:46 -07:00
Brian Clozel 9c54a5369d Merge branch '2.3.x'
Closes gh-23816
2020-10-22 21:40:22 +02:00
Brian Clozel b37eecc015 Merge branch '2.2.x' into 2.3.x
Closes gh-23812
2020-10-22 20:16:01 +02:00
Brian Clozel 5eb1e26e10 Add HttpEncodingAutoConfiguration to WebMvcTest
Prior to this commit, tests using the `@WebMvcTest` annotation would not
include the `HttpEncodingAutoConfiguration`. This means that, even if
configured, the encoding filter would not be configured in MVC tests,
resulting in an inconsistency with `@SpringBootTest` tests.

This commit ensures that the `HttpEncodingAutoConfiguration` is included
when `@WebMvcTest` is used.

Fixes gh-23749
2020-10-22 20:02:45 +02:00
Stephane Nicoll a5b27789c0 Document how to use DataNeo4jTest with reactive access
Closes gh-23630
2020-10-14 14:04:58 +02:00
Madhura Bhave 7c22e71753 Polish "Deprecate EmbeddedDatabaseConnection#HSQL"
See gh-23565
2020-10-01 16:56:48 -07:00
Stephane Nicoll 366fec33d0 Adapt to API change in Spring Framework 5.3.0 snapshots
See gh-23534
2020-09-30 13:46:57 +02:00
Stephane Nicoll 2852ea0808 Remove useless version override for MongoDBContainer
Closes gh-23520
2020-09-29 10:50:30 +02:00
Phillip Webb c284edde67 Update copyright year of changed files 2020-09-17 00:31:01 -07:00
Stephane Nicoll 91cc283c39 Upgrade to JUnit Jupiter 5.7.0
Closes gh-23351
2020-09-16 13:28:31 +02:00
Stephane Nicoll 5a86162ff3 Polish "Simplify code"
See gh-23111
2020-09-01 10:06:17 +02:00
EruDev ffc577b499 Simplify code
See gh-23111
2020-09-01 10:04:31 +02:00
Andy Wilkinson 9ee2487a6e Merge branch '2.3.x'
Closes gh-23128
2020-08-28 14:37:20 +01:00
dreis2211 51c9dee899 Use DynamicPropertySource in MongoDB tests
See gh-23127
2020-08-28 14:32:01 +01:00
Andy Wilkinson 2c166d1a58 Merge branch '2.3.x'
Closes gh-23125
2020-08-28 12:29:29 +01:00
Andy Wilkinson 33ef1b6e5b Merge branch '2.2.x' into 2.3.x
Closes gh-23124
2020-08-28 12:29:07 +01:00
Andy Wilkinson 5cd910c7ce Replace Embedded Mongo with Testcontainers' MongoDB support
Closes gh-23090
2020-08-28 12:00:31 +01:00
Andy Wilkinson cf0036992f Increase timeouts used in Cassandra integration tests
Closes gh-23083
2020-08-25 16:33:26 +01:00
Phillip Webb 4df618a2b1 Merge branch '2.3.x'
Closes gh-22967
2020-08-14 17:12:53 -07:00
Phillip Webb f75e988450 Merge branch '2.2.x' into 2.3.x
Closes gh-22966
2020-08-14 17:12:41 -07:00
Phillip Webb 3271542d98 Add @Interited to @TypeExcludeFilters
Update `@TypeExcludeFilters` so that it is also annotated with
`@Inherited`.

Closes gh-22939
2020-08-14 17:12:31 -07:00
Madhura Bhave bbbbe8e4d2 Make security auto-configs back off when SecurityFilterChain present
Closes gh-22739
2020-08-14 12:24:25 -07:00