Commit Graph

468 Commits

Author SHA1 Message Date
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
Stephane Nicoll bf88405121 Flag BeanDefinitionRegistryPostProcessor beans with role infrastructure
Closes gh-28540
2021-11-05 14:20:37 +01: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
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 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 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
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
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
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
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
Phillip Webb c284edde67 Update copyright year of changed files 2020-09-17 00:31:01 -07: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
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
Stephane Nicoll 045d2f678d Document Spring Data Neo4j 6 support
Closes gh-22652
2020-08-13 17:51:39 +02:00
Andy Wilkinson 0d8719adb7 Merge branch '2.3.x'
Closes gh-22911
2020-08-12 13:14:33 +01:00
Andy Wilkinson 65ccb514d0 Merge branch '2.2.x' into 2.3.x
Closes gh-22910
2020-08-12 13:14:15 +01:00
Johnny Lim 68e2dd626d Mention configuration customizers for WebTestClient and RestAssured
See gh-22765
2020-08-12 13:13:11 +01:00
Stephane Nicoll 313b2bef6f Polish "Add test slice for Spring Data Cassandra"
See gh-17490
2020-08-05 16:46:52 +02:00
ayudovin ae152b176b Add test slice for Spring Data Cassandra
See gh-17490
2020-08-05 16:46:52 +02:00
Stephane Nicoll 36fb86a110 Update to core r2dbc support
This commit adapts the auto-configuration for the new core r2dbc support
in Spring Framework and provides auto-configuration for
R2dbcEntityOperations.

Closes gh-22708
2020-08-04 16:00:29 +02:00
Andy Wilkinson 5f1198c917 Merge branch '2.3.x'
Closes gh-22670
2020-07-30 12:13:04 +01:00
Andy Wilkinson 45346b63ba Merge branch '2.2.x' into 2.3.x
Closes gh-22669
2020-07-30 12:12:45 +01:00
Andy Wilkinson 22dc4e7608 Clarify documentation on @AutoConfigureRestDocs with WebTestClient
Closes gh-15977
2020-07-30 12:12:10 +01:00
Stephane Nicoll 9bc71fe44f Polish "Upgrade to Spring Data Neo4j 6"
See gh-22299
2020-07-29 19:36:42 +02:00
Andy Wilkinson 8a9cc64221 Merge branch '2.3.x'
Closes gh-22577
2020-07-27 10:12:09 +01:00
Andy Wilkinson 5279b90ced Merge branch '2.2.x' into 2.3.x
Closes gh-22576
2020-07-27 10:11:47 +01:00
Andy Wilkinson 1c3528f5a4 Include Jackson Modules in WebMvcTest and WebFluxTest
Fixes gh-22530
2020-07-27 10:11:29 +01:00
Stephane Nicoll 3530ac9b0c Polish "Disable metrics export in integration tests"
See gh-21658
2020-07-24 15:43:17 +02:00
bono007 b1830da0da Disable metrics export in integration tests
This commit introduces a new property to globally disable metrics
export. In integration tests, this property is automatically set to
disable everything but in-memory metrics.

This commit also introduces a `@AutoConfigureMetrics` annotation that
can be used for integration tests that require metrics export to operate
as they would in an application.

See gh-21658
2020-07-24 15:43:17 +02:00
Andy Wilkinson 0d6ea79007 Start building against Spring Framework 5.3.0 snapshots
See gh-21929
2020-06-22 18:02:21 +01:00
Stephane Nicoll f0f8424191 Merge branch '2.3.x'
Closes gh-22008
2020-06-18 11:31:00 +02:00
dreis2211 855d596c2a Use lazy lambda instead of explicit argument
See gh-21986
2020-06-18 11:29:49 +02:00
Andy Wilkinson 9e08490522 Merge branch 'gh-21271'
Closes gh-21271
2020-06-16 12:52:17 +01:00
Andy Wilkinson 9636350b0b Enable rawtypes compilation warnings
See gh-21271
2020-06-16 12:50:50 +01:00
Andy Wilkinson 47874d8c6a Treat warnings as errors when compiling
See gh-21271
2020-06-16 12:50:41 +01:00
Andy Wilkinson ce68f1a097 Merge branch '2.2.x' into 2.3.x
Closes gh-21837
2020-06-10 09:56:24 +01:00
Andy Wilkinson 48acaa4bd9 Make AutoConfigureMockMvc use SecurityProperties' filter ordering
Previously, AutoConfigureMockMvc used Spring Security's default filter
ordering, ignoring the value configured by SecurityProperties that is
used at runtime. This resulted in different ordering at runtime and in
tests.

This commit updates the configuration for AutoConfigureMockMvc to
import the Spring Security filter auto-configuration, thereby ensuring
that the ordering configured via SecurityProperties is applied.

Fixes gh-21801
2020-06-10 09:51:05 +01:00
Phillip Webb 194c9fac64 Polish 'Add @WebServiceClientTest slice test support'
See gh-17274
2020-05-14 00:21:50 -07:00
Dmytro Nosan a4104ab096 Add @WebServiceClientTest slice test support
Add `@WebServiceClientTest` and related test auto-configuration to allow
slice testing of Spring Web Service client applications.

See gh-17274
2020-05-14 00:21:50 -07:00
Andy Wilkinson 83e4bb39b6 Add transaction auto-configuration to @DataMongoTest
Closes gh-20182
2020-04-30 15:05:23 +01:00
Stephane Nicoll 12123d41e5 Make sure @DataR2dbcTest invokes database migration if necessary
Closes gh-20739
2020-03-31 13:10:37 +02:00
Stephane Nicoll 6817856e7d Add test slice for Spring Data R2DBC
This commit adds a test slice for Spring Data R2DBC. When
`DataR2dbcTest` is added on a test, only Spring Data R2DBC repositories
and the infrastructure that they need is auto-configured.

Contrary to the JDBC counterpart, the `ConnectionFactory` is not swapped
by an embedded database.

See gh-19988

Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
2020-02-25 09:21:47 -05:00
Johnny Lim 8be8a8421d Polish
See gh-20226
2020-02-19 09:34:46 +01:00
Madhura Bhave 0a377647ca Import OAuth2 auto-configurations in web slice tests
Fixes gh-19823
2020-02-03 18:03:52 -08:00
Scott Frederick 288889685d Change default BootstrapMode for JPA repositories
Change the default `BootstrapMode` for auto-configured `JpaRepositories`
to `BootstrapMode.DEFERRED` to allow the initialization of
`EntityManagerFactory` to be parallelized for increased startup efficiency.

Prior to this change, the default BootstrapMode for all auto-configured
Spring Data repositories was `BootstrapMode.DEFAULT`.

Closes gh-16230
2020-01-22 10:55:51 -08:00
Scott Frederick 8f102aee68 Remove deprecated 2.2 code
See gh-19699
2020-01-16 14:44:52 +01:00
Stephane Nicoll 101fd14286 Merge branch '2.1.x' into 2.2.x
Closes gh-19685
2020-01-13 17:44:45 +01:00
Stephane Nicoll 8b8a4ee65e Polish "Make equality checks defensive to null reference"
See gh-19540
2020-01-13 17:38:38 +01:00
liuhuan 6d8b849361 Make equality checks defensive to null reference
See gh-19540
2020-01-13 17:38:26 +01:00
dreis2211 6ffe47cd06 Remove deprecated usage of WebTestClientBuilderCustomizer
See gh-19536
2020-01-06 12:59:12 +01:00
Andy Wilkinson 9ed4207f0c Make TypeExcludeFilters public so they can be composed with user's own
Previously, all of the type exclude filters in
spring-boot-test-autoconfigure were package-private. This prevent a
user who was creating their own test slice from composing their own
TypeExcludeFilter with one of Boot's.

This commit updates all of the TypeExcludeFilters in the
test-autoconfigure module to make them public. The intention is only
to allow them to be composed with other type exclude filters when
referenced in a @TypeExcludeFilters annotation. Therefore, each
filter class is declared final and their constructors remain
package-private.

Closes gh-18746
2019-11-04 12:12:56 +00:00
Andy Wilkinson 96f85a40de Support customization of WebTestClient.Builder when using @SpringBootTest
Closes gh-15132
2019-10-02 17:51:00 +01:00
Phillip Webb b65ba60980 Polish 'Simplify some code'
See gh-18438
2019-10-01 22:08:20 -07:00
Andy Wilkinson 6534047fcf Rework test slice annotation javadoc to reflect JUnit 5 default
Closes gh-18178
2019-09-17 17:32:29 +01:00
dreis2211 b4350a9d96 Remove unnecessary blank lines
See gh-18089
2019-09-03 08:48:10 +02:00
Andy Wilkinson 2d2e3b3d8b Support parallel test execution with @AutoConfigureMockMvc
Previously, the deferred line writing that is used, to print MockMvc
results to the console assumed that each DeferredLinesWriter would
only be used by a single thread at a time. This assumption does not
hold true when using JUnit 5's parallel test exection if the tests
running in parallel share an application context. This resulted in
a concurrent modification exception if one thread was adding lines
to the output while another was iterating over them.

This commit updates DeferredLinesWriter so that it uses thread local
storage for the deferred lines. This ensures that each List of lines
is only ever accessed by a single thread.

Closes gh-16179
2019-08-23 14:12:54 +01:00
Phillip Webb da4f436140 Change SearchStrategy EXHAUSTIVE to TYPE_HIERARCHY
Fixup references following upstream Spring Framework change.
2019-07-31 15:11:43 +01:00
Phillip Webb 8bc780762a Merge branch '2.1.x' 2019-07-24 11:42:48 +01:00
Phillip Webb fb1dd8fe93 Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
Phillip Webb 913e831f4e Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
Dmytro Nosan 9d052bbe5e Include WebFilter beans in WebFluxTest slice
See gh-17601
2019-07-22 12:38:48 -07:00
Dmytro Nosan 6859a89cf3 Include HandlerInterceptor beans in WebMvcTest slice
See gh-17600
2019-07-22 12:34:11 -07:00
Stephane Nicoll e5ca9df478 Merge branch '2.1.x' 2019-07-19 11:33:16 +02:00
Stephane Nicoll 8eb6886388 Fix code formating 2019-07-19 11:29:12 +02:00
Stephane Nicoll 08afbe286c Merge branch '2.1.x'
Closes gh-17580
2019-07-19 10:35:01 +02:00
Stephane Nicoll b8d92cb0ae Fix @DataJdbcTest to be transactional as advertized
Closes gh-17513
2019-07-19 10:33:59 +02:00
Stephane Nicoll 5903e9a57a Polish 2019-07-19 10:33:52 +02:00
Andy Wilkinson 808b373def Merge branch '2.1.x'
Closes gh-17552
2019-07-17 12:45:48 +01:00
Andy Wilkinson 9dabc0e14d Cleared deferred lines after each test
Previously, DeferredLinesWriter would collect MockMvc output from
every test that has executed. If a test eventually failed, the
output from every test up to including the one that had failed would
be output, rather than just the output for the test that has just
failed.

This commit clears the deferred lines after each test, thereby
ensuring that when a failure occurs only the lines from the failing
test are output.

Fixes gh-17551
2019-07-17 12:29:41 +01:00
Phillip Webb 01933f9b06 Merge previously split strings
Merge some string lines that were previously split because of the
90 chars wide formatting.
2019-07-15 00:24:19 +01:00
Phillip Webb a66c4d3096 Unify method visibility of private classes
Apply checkstyle rule to ensure that private and package private
classes do not have unnecessary public methods. Test classes have
also been unified as much as possible to use default scoped
inner-classes.

Closes gh-7316
2019-07-03 11:39:47 -07:00
Phillip Webb 605599138e Merge branch '2.1.x' 2019-06-28 23:56:02 -07:00
Phillip Webb 92bff3c328 Merge branch '2.0.x' into 2.1.x 2019-06-28 23:42:28 -07:00
Phillip Webb cfeb0239b7 Merge branch '1.5.x' into 2.0.x 2019-06-28 23:28:34 -07:00
Phillip Webb c62b6b4ccd Merge branch '2.1.x' 2019-06-28 12:22:45 -07:00
Phillip Webb de35efd1ef Merge branch '2.0.x' into 2.1.x 2019-06-28 12:21:57 -07:00
Phillip Webb bb34846630 Merge branch '1.5.x' into 2.0.x 2019-06-28 12:19:46 -07:00
Andy Wilkinson a189e4cf96 Merge branch '2.1.x'
Closes gh-17220
2019-06-17 14:05:16 +01:00
Andy Wilkinson 645514f848 Polish "Honour base path from @WebAppConfiguration in @WebMvcTest"
See gh-16485
2019-06-17 13:54:41 +01:00
Lorenzo Dee 7340d546b8 Honour base path from @WebAppConfiguration in @WebMvcTest
See gh-16485
2019-06-17 13:37:55 +01:00
Andy Wilkinson 78f51a490c Merge branch '2.1.x'
Closes gh-17213
2019-06-17 10:59:16 +01:00
Andy Wilkinson c2a4a3f630 Polish "Auto-configure caching in jOOQ sliced tests"
See gh-17066
2019-06-17 10:55:35 +01:00
Dmytro Nosan 4701d8f82a Auto-configure caching in jOOQ sliced tests
See gh-17066
2019-06-17 10:55:35 +01:00
Andy Wilkinson aef92b9295 Merge branch '2.1.x'
Closes gh-17079
2019-06-07 11:00:44 +01:00
Andy Wilkinson 24925c3dae Merge branch '2.0.x' into 2.1.x
Closes gh-17078
2019-06-07 10:50:34 +01:00
Andy Wilkinson c6c139d980 Merge branch '1.5.x' into 2.0.x 2019-06-07 10:46:31 +01:00
fidel 2ec0996a6f Fix typo in javadoc
See gh-17044
2019-06-02 09:54:11 +02:00
Johnny Lim 652906ec7c Use MergedAnnotation.getRoot() in PropertyMappingCheckBeanPostProcessor
Closes gh-16745
2019-05-21 09:26:27 +02:00
Phillip Webb 3a9ca5fa30 Update copyright header of changed files 2019-05-14 21:05:53 -07:00
Phillip Webb ed998ef0d3 Update copyright header of changed files 2019-05-14 21:04:50 -07:00
Madhura Bhave f1786c357b Revert "Disable ConfigurationProperties scanning for slice tests"
This reverts commit 3b4ff7d746.
The commit caused the build to fail because it disabled
`@ConfigurationPropertiesScan` completely in slice tests. It
did not take into account components that were explicitly included
in slice tests using the `components` attribute. Since `@ConfigurationPropertiesScan`
replaces `@Component` and `@EnableConfigurationProperties`, these components
are no longer registered even though explicitly included.
2019-05-11 09:59:36 -07:00
Madhura Bhave 3b4ff7d746 Disable ConfigurationProperties scanning for slice tests
Closes gh-16659
2019-05-10 14:43:55 -07:00
Andy Wilkinson 552345fcd1 Disable more @Bean method proxying
Previously, due to a quirk in Spring Framework, it was necessary to use bean method
proxying in @Configuration classes that define one or more FactoryBeans. This quirk has
now been addressed so this commit disables bean method proxying where it is now no longer
needed.

Closes gh-16533
2019-05-10 10:16:22 +01:00
Phillip Webb 17aaf26590 Use consistent javadoc style for annotation links
Closes gh-13920
2019-04-24 19:37:59 -07:00
Phillip Webb 1e44aba772 Fix compiler warnings and polish
Fix various compiler warnings and apply a little polish.
2019-04-24 19:37:42 -07:00
Phillip Webb b879972d0d Migrate to MergedAnnotations API
Migrate away from `AnnotationUtils` and `AnnotatedElementUtils`
when possible to the new `MergedAnnotations` API.

Closes gh-16551
2019-04-18 15:40:02 -07:00
Madhura Bhave dabe75a281 Merge branch '2.1.x' 2019-04-15 17:10:07 -07:00
Madhura Bhave f0544fb86f Polish 2019-04-15 17:09:47 -07:00
Madhura Bhave 1d20c73d22 Make nested classes in JsonTestersAutoConfiguration package private
Closes gh-15444
2019-04-15 16:03:31 -07:00
Phillip Webb ad7eebee9e Merge branch '2.1.x' 2019-04-03 17:00:25 -07:00
Phillip Webb f12ab1ff90 Update copyright header of changed files 2019-04-03 16:13:00 -07:00
Phillip Webb 2376f973f4 Merge branch '2.1.x' 2019-04-02 13:46:36 -07:00
Phillip Webb 47c6bf741d Merge branch '2.0.x' into 2.1.x 2019-04-02 13:40:21 -07:00
Phillip Webb 07c000c5b7 Merge branch '1.5.x' into 2.0.x 2019-04-02 13:34:28 -07:00
Stephane Nicoll 270554d3cd Merge branch '2.1.x' 2019-03-29 11:40:15 +01:00
Ali Dehghani 53e7484d87 Add error rendering support with @WebFluxTest
See gh-16266
2019-03-29 11:07:26 +01:00
Madhura Bhave 0d136f0573 Merge branch '2.1.x' 2019-03-20 18:00:48 -07:00
Madhura Bhave 0a54fb73fa Remove redundant include from WebFluxTypeExcludeFilter
For webflux, security configuration is configured via a bean of type
`SecurityWebFilterChain` and not `ServerHttpSecurity`. We would have changed
the include to be `SecurityWebFilterChain` but the filter only applies to
beans registered via component scanning and not those registered in
`@Configuration` classes, making the includes redundant.

See gh-16088
2019-03-20 17:54:04 -07:00
Andy Wilkinson 36c1c051b8 Merge branch '2.1.x' 2019-03-20 16:55:10 +00:00
Andy Wilkinson e23f72c8b0 Merge branch '2.0.x' into 2.1.x 2019-03-20 16:53:48 +00:00
Andy Wilkinson 9fbd38ab3c Merge branch '1.5.x' into 2.0.x 2019-03-20 16:45:26 +00:00
Andy Wilkinson 68bfb020aa Reduce need for bean method proxying and disable where not needed
Closes gh-9068
2019-03-12 13:18:42 +00:00
Stephane Nicoll a44a55e948 Merge branch '2.1.x' 2019-03-12 11:07:53 +01:00
Stephane Nicoll 161c0b9fad Polish contribution
Closes gh-16170
2019-03-12 11:06:19 +01:00
ayudovin 51013421f2 Add support for Mustache, FreeMarker and Thymeleaf in WebFluxTest
See gh-16170
2019-03-12 11:06:18 +01:00
Phillip Webb 64a2e8d67f Update copyright year for changed files 2019-03-11 22:15:36 -07:00
Andy Wilkinson 89bb973745 Merge branch '2.1.x' 2019-03-09 20:02:05 +00:00
Andy Wilkinson 7153525ee2 Annotation @JsonTest with @ExtendWith(SpringExtension.class)
Closes gh-16183
2019-03-09 20:00:06 +00:00
Andy Wilkinson b8dff5fe17 Merge branch '2.1.x' 2019-03-07 10:20:29 +00:00
Stephane Nicoll f90bfff132 Merge branch '2.1.x' 2019-03-04 15:00:21 +01:00
Stephane Nicoll 2099093978 Merge branch '2.0.x' into 2.1.x 2019-03-04 15:00:00 +01:00
Stephane Nicoll b8cbd0c17f Merge branch '1.5.x' into 2.0.x 2019-03-04 14:55:10 +01:00
Madhura Bhave 64b7466d51 Remove secure flag from AutoConfigureMockMvc
Closes gh-13822
2019-02-28 13:15:00 -08:00
Andy Wilkinson de0c065625 Inject single-use configuration dependencies into bean methods
Closes gh-15751
2019-02-20 17:02:43 +00:00
Madhura Bhave 59d2b0a3fb Upgrade tests to Junit5
See gh-14737
2018-12-05 17:49:09 -08:00
dreis2211 f57f16c190 Avoid premature declaration of variables
Closes gh-15215
2018-12-03 10:59:20 +01:00
Phillip Webb 893d5666be Update copyright year for changed files 2018-11-29 15:30:51 -08:00
Andy Wilkinson 6729e56f6b Merge branch '2.0.x' 2018-11-27 12:00:36 +00:00
Andy Wilkinson e74b084c67 Auto-configure codec customizations and JSON when using @WebFluxTest
Closes gh-15070
2018-11-27 11:48:30 +00:00
Phillip Webb cccf5e6d2b Merge branch '2.0.x' 2018-11-14 18:27:28 -08:00
Phillip Webb 3baf782822 Merge branch '1.5.x' into 2.0.x 2018-11-14 18:24:32 -08:00
Phillip Webb f3fa20b2d1 Polish 2018-10-29 14:25:45 -07:00
Stephane Nicoll 474da80b4d Revert "Restructure of security packages"
See gh-14412
2018-10-17 12:22:51 +02:00
Phillip Webb 29707bf75a Complete restructure of security packages
Complete the restructuring of the security auto-configuration
packages by removing the direct import of web configuration from
the main security auto-configuration.

Closes gh-14412
2018-10-16 01:01:11 -07:00
Madhura Bhave f835f82582 Preliminary restructure of security packages
Restructure the security auto-configuration packages to better reflect
the part of the system that the configuration applies to.

See gh-14412
2018-10-16 01:01:10 -07:00
Andy Wilkinson 726579a910 Merge branch '2.0.x' 2018-10-01 14:01:38 +01:00
Andy Wilkinson 89f5cfc5a4 Merge branch '1.5.x' into 2.0.x 2018-10-01 13:51:55 +01:00
Andy Wilkinson 4b00dc8a5c Add support for Spring Data JDBC (auto-config, starter, and test slice)
Closes gh-14489
2018-09-21 14:18:52 +01:00
Andy Wilkinson cc6cf880cf Stop using ObjectProvider<List> and ObjectProvider<Collection>
Closes gh-14467
2018-09-20 13:19:40 +01:00
Johnny Lim fd97f07209 Use meaningful name for MockServerConfigurer bean
Closes gh-14512
2018-09-19 15:31:38 +02:00
Phillip Webb 57ec09a55f Polish 2018-09-11 14:27:10 -07:00
Madhura Bhave ab6bdc7ae2 Apply springSecurity configurer to WebTestClient
Also, @WebFluxTest now adds any ServerHttpSecurity beans
to the context.

Closes gh-13632
2018-09-11 13:28:13 -07:00
LEVI PAUL 74891a75bb Include TaskExecutionAutoConfiguration in @WebMvcTest
Closes gh-14400
2018-09-11 11:29:17 +01:00
Phillip Webb 8c34e053f5 Update copyright header of changed files 2018-09-05 13:09:03 -07:00
Andy Wilkinson 8ee4775820 Polish 2018-09-04 20:46:35 +01:00
Madhura Bhave 8f946260d2 Update copyright year for changed files 2018-08-30 16:56:37 -07:00
Madhura Bhave 0384a88b57 Include web security config classes in @WebMvcTest
Security config classes are not included when the
secure flag is set to false.

Closes gh-6514
2018-08-30 16:47:31 -07:00
Madhura Bhave d91c71b508 Deprecate secure flag on @WebMvcTest
Closes gh-14227
2018-08-30 16:47:31 -07:00
Madhura Bhave f3fa952cbc Support WebExceptionHandler in @WebFluxTest
Closes gh-13627
2018-08-27 16:35:49 -07:00
Andy Wilkinson 075a745e32 Polish "Allow properties to be configured using slice test annotations"
Closes gh-14052
2018-08-16 11:27:49 +01:00
artsiom 0cf1749e85 Allow properties to be configured using slice test annotations
See gh-14052
2018-08-16 11:27:49 +01:00
Eddú Meléndez 4d310f0d5a Add support for multiple REST Docs configuration customizers
This commit introduces support for multiple configuration customizers
for REST Docs with MockMvc, WebTestClient, and REST Assured.

Closes gh-13498
2018-08-16 09:48:03 +01:00
Stephane Nicoll 143e4f026f Merge branch '2.0.x' 2018-08-01 08:48:09 +02:00
dreis2211 66b1742f96 Optimize some StringBuilder.append() calls
Closes gh-13961
2018-08-01 08:41:03 +02:00
Phillip Webb 4d86ac4713 Polish copyright date on changed files 2018-07-29 09:30:26 +01:00
Phillip Webb 80da9cf5eb Merge branch '2.0.x' 2018-07-29 09:28:56 +01:00
Phillip Webb aeb885192e Polish ternary expressions 2018-07-29 09:24:46 +01:00
Phillip Webb a6c9c92f2e Merge branch '2.0.x' 2018-07-28 01:35:43 +01:00
Phillip Webb 63b609827e Fix checkstyle method order issues
Fix checkstyle issues with method ordering following the
spring-javaformat upgrade.

See gh-13932
2018-07-28 01:11:53 +01:00
Phillip Webb 7fc455654a Fix checkstyle ternary issues
Fix checkstyle issues with ternary expressions following the
spring-javaformat upgrade.

See gh-13932
2018-07-28 01:11:52 +01:00
Phillip Webb b5b60c2053 Merge branch '2.0.x' 2018-07-26 13:23:07 +01:00
Phillip Webb 9a9111af21 Support path discovery for main dispatcher servlet
Add an `DispatcherServletPath` interface which provides a much more
consistent way to discover the path of the main dispatcher servet.

Prior to this commit, auto-configurations would often make use of the
`ServerProperties` class to discover the dispatcher servlet path. This
mechanism isn't very explicit and also makes it hard for us to relocate
that property in Spring Boot 2.1.

This commit also reverts most of fddc9e9c7e since it is now clear that
the supporting multiple dispatcher servlet paths will be much more
involved that we originally anticipated.

Closes gh-13834
2018-07-26 11:35:12 +01:00
Madhura Bhave 4fee54cf24 Expose a TestDispatcherServlet bean in the MockMvcAutoConfiguration
This commit also contains changes to `ServletContextInitializerBeans`.
`ServletContextInitializerBeans` can now be configured to only look
for specific ServletContextInitializer subclasses, defaulting to
ServletContextIntializer.class. `SpringBootMockMvcBuilderCustomizer`
only cares about filters so it was unnecessary to look for all
`ServletContextInitializer`s. Additionally, adapting `Servlet` beans
caused a cycle once the `DispatcherServlet` bean was added and the
customizer only needs to adapt `Filter` beans.

Closes gh-13241
2018-07-17 13:00:54 -07:00
Andy Wilkinson 6a48a440b2 Annotate our test annotations with @ExtendWith(SpringExtension.class)
Closes gh-13739
2018-07-11 17:25:21 +01:00
Andy Wilkinson 8cc0d5577e Avoid unwanted bean overrides in spring-boot-test-autoconfigure
See gh-13609
2018-07-10 19:54:48 +01:00
Stephane Nicoll 7462401291 Merge branch '2.0.x' 2018-05-28 09:28:30 +02:00
Eddú Meléndez 065eebfb4b Fix javadoc
Closes gh-13274
2018-05-28 09:26:16 +02:00
Vedran Pavic f81f50c119 Improve LDAP auto-configuration
Auto-configuration of LDAP's `LdapTemplate` is currently a part of
`LdapDataAutoConfiguration` which is conditional of presence of
`LdapRepository` (i.e. Spring Data LDAP). This arrangement isn't ideal
since the `LdapTemplate` is a part of Spring LDAP project, and therefore
should not be tied to Spring Data LDAP.

This commit improves and simplifies LDAP auto-configuration by moving
`LdapTemplate` configuration to `LdapAutoConfiguration`. Consequently,
`LdapDataAutoConfiguration` is not needed anymore and is removed.

See gh-13136
2018-05-11 14:37:13 +02:00
Stephane Nicoll 360f4e17c2 Add support for PageableHandlerMethodArgumentResolver in WebMvcTest
Closes gh-13066
2018-05-11 10:37:17 +02:00
Phillip Webb 5b3cb8a698 Update copyright header year for changed files 2018-05-04 15:59:26 -07:00
Phillip Webb 6e09e497f2 Formatting 2018-05-04 12:06:19 -07:00
Phillip Webb e125085993 Merge branch '1.5.x' into 2.0.x 2018-05-03 12:43:50 -07:00
Johnny Lim d8700522d3 Rename nested *AutoConfiguration classes to *Configuration
Closes gh-12989
2018-04-30 16:50:18 +02:00
dreis2211 a930835b92 Replace <code> tags where possible
Closes gh-12922
2018-04-20 07:19:31 +02:00
Stephane Nicoll b6f9b46be8 Only create a WebTestClient with WebFlux
This commit updates WebTestClientAutoConfiguration to only create a
WebTestClient when running a WebFlux-based application as mocking the
context only works with that mode at the moment.

Closes gh-12318
2018-04-03 11:31:37 +02:00
Johnny Lim c100510222 Remove value in @ConditionalOnMissingBean if possible
See gh-12604
2018-03-26 17:38:46 +02:00
Phillip Webb a4b0be089d Polish 2018-03-14 14:05:26 -07:00
Stephane Nicoll 5320081d0b Revert "Only create a WebTestClient with WebFlux"
This reverts commit 282bd9f
2018-03-14 08:34:48 -04:00
Stephane Nicoll 282bd9f0db Only create a WebTestClient with WebFlux
This commit updates WebTestClientAutoConfiguration to only create a
WebTestClient when running a WebFlux-based application as mocking the
context only works with that mode at the moment.

Closes gh-12318
2018-03-14 05:12:45 -04:00
dreis2211 0d3f3e46dd Fix typos
Closes gh-12468
2018-03-13 17:42:19 -07:00
inabajunmr ddd8598e2e Fix typo in TestDatabaseAutoConfiguration failure msg
See gh-12350
2018-03-05 13:10:46 -08:00
Phillip Webb 7bc535e4fa Polish 2018-02-28 10:59:26 -08:00
Phillip Webb 67998e983f Revert "Include WebSecurityConfigurer beans in @WebMvcTest"
This reverts commit eef6fdb066.
2018-02-28 10:59:26 -08:00
Phillip Webb eef6fdb066 Include WebSecurityConfigurer beans in @WebMvcTest
Update `WebMvcTypeExcludeFilter` to include `WebSecurityConfigurer`
beans.

Fixes gh-12275
2018-02-27 21:05:35 -08:00
Stephane Nicoll 306c79f0de Merge branch '1.5.x' 2018-02-26 18:03:32 +01:00
Phillip Webb 4b9c3c137e Polish Collection.toArray
Consistently use `StringUtils.toStringArray`, `ClassUtils.toClassArray`
or zero length when converting collections to arrays.

Fixes gh-12160
2018-02-22 21:11:30 -08:00
igor-suhorukov fe023817c7 Polish static finals
Closes gh-12083
2018-02-19 20:10:58 -08:00
Andy Wilkinson 5522174e96 Provide package info for all packages included in javadoc 2018-02-08 16:50:37 +00:00
Andy Wilkinson 76a450dfba Format with Eclipse Oxygen SR2 2018-02-08 10:53:53 +00:00
Madhura Bhave 7136bed126 Fix tests 2018-02-07 17:36:44 -08:00
Andy Wilkinson 875091ed85 Polish “Remove or use unused method parameters”
Closes gh-11812
2018-02-02 09:34:19 +00:00
Andy Wilkinson 458dde63a8 Explicitly order AbstractTestExecutionListener subclasses
By default, AbstractTestExecutionListeners have an order of lowest
precedence. This means that it is impossible to write a listener with
lower precedence that any listener that's using the default order.

This commit updates Boot's 6 AbstractTestExecutionListeners to order
them explicitly. MockitoTestExecutionListener performs injection of
Mockito mocks and spies into the test instance. It now has an order of
2050 giving it slightly lower precedence than the dependency injection
test execution listener (2000).

The remaining 5 listeners have all been ordered with lowest precedence
- 100. This leaves them near their current lowest precedence position
while creating some room for any listeners that require lower
precedence.

Closes gh-11796
2018-02-01 14:28:25 +00:00
Phillip Webb dc935fba48 Polish 2018-01-19 20:44:18 -08:00
Madhura Bhave 5e2cc02499 Move servlet specific security auto-config 2018-01-20 09:41:50 +05:30
Phillip Webb b078698f20 Update copyright year of changed files 2018-01-09 12:13:27 -08:00
Phillip Webb b9bb31cfd4 Extract RestDocsProperties
Extract properties used by RestDocs to their own class.
2018-01-09 12:11:23 -08:00
Andy Wilkinson 964939d3a9 Polish "Add auto-configuration for using REST Docs with WebTestClient"
Closes gh-10696
2018-01-09 11:53:12 +00:00
Roman Zaynetdinov ab7c47d340 Add auto-configuration for using REST Docs with WebTestClient
See gh-10969
2018-01-09 11:37:14 +00:00
Andy Wilkinson 16c52bce84 Introduce WebTestClientBuilderCustomizer callback
Closes gh-11579
2018-01-09 11:16:27 +00:00
Johnny Lim b8706c47d6 Use instance equality for Class
Closes gh-11534
2018-01-09 09:30:36 +01:00