Commit Graph

699 Commits

Author SHA1 Message Date
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
Scott Frederick
2a998a4373 Fix DataNeo4jTestReactiveIntegrationTests
See gh-22940
2020-08-13 13:45:04 -05: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
Andy Wilkinson
969dd35e45 Upgrade to Mockito 3.4.6
Closes gh-22838
2020-08-10 15:22:03 +01:00
Phillip Webb
f7f4ff0ac9 Update copyright year of changed files 2020-08-06 14:35:43 -07:00
Stephane Nicoll
dac63fc3e5 Polish 2020-08-06 17:35:01 +02: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
Gerrit Meier
15cd343737 Upgrade to Spring Data Neo4j 6
See gh-22299
2020-07-29 18:58:08 +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
0ac7178ae1 Merge branch '2.3.x'
Closes gh-22491
2020-07-22 06:43:28 +01:00
dreis2211
198131f5e4 Remove redundant compiler arguments in Gradle build files
See gh-22488
2020-07-22 06:42:48 +01: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
0de466e06e Require dependency on s-b-dependencies to use its constraints
Previously, Spring Boot's modules published Gradle Module Metadata
(GMM) the declared a platform dependency on spring-boot-dependencies.
This provided versions for each module's own dependencies but also had
they unwanted side-effect of pulling in spring-boot-dependencies
constraints which would influence the version of other dependencies
declared in the same configuration. This was undesirable as users
should be able to opt in to this level of dependency management, either
by using the dependency management plugin or by using Gradle's built-in
support via a platform dependency on spring-boot-dependencies.

This commit reworks how Spring Boot's build uses
spring-boot-dependencies and spring-boot-parent to provide its own
dependency management. Configurations that aren't seen by consumers are
configured to extend a dependencyManagement configuration that has an
enforced platform dependency on spring-boot-parent. This enforces
spring-boot-parent's version constraints on Spring Boot's build without
making them visible to consumers. To ensure that the versions that
Spring Boot has been built against are visible to consumers, the
Maven publication that produces pom files and GMM for the published
modules is configured to use the resolved versions from the module's
runtime classpath.

Fixes gh-21911
2020-06-16 08:50:21 +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
Andy Wilkinson
daeca9f332 Restore Boot 2.2's compile-scoped dependencies
Fixes gh-21507
2020-06-03 12:55:11 +01:00
dreis2211
b498d3903f Upgrade to Testcontainers 1.14.2
See gh-21581
2020-05-27 14:49:09 +02:00
Stephane Nicoll
b9a1a70fcc Merge branch '2.2.x'
Closes gh-21562
2020-05-25 14:59:19 +02:00
Stephane Nicoll
77981ac2ae Polish "Use the container IP address for tests using TestContainer"
See gh-21480
2020-05-25 14:29:24 +02:00
olivier lamy
0c2bf70bb8 Use the container IP address for tests using TestContainer
See gh-21480
2020-05-25 14:03:18 +02:00
Stephane Nicoll
e6376fcd6e Fix web services tests on JDK 11+
Closes gh-17274
2020-05-14 10:55:12 +02: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
Andy Wilkinson
56af3534f0 Merge branch '2.2.x'
Closes gh-20740
2020-03-31 11:37:12 +01:00
Andy Wilkinson
ce95fd6825 Polish "Use @DynamicPropertySource for Neo4J and Redis data tests"
See gh-20676
2020-03-31 11:31:05 +01:00
dreis2211
d84422a41c Use @DynamicPropertySource for Neo4J and Redis data tests
See gh-20676
2020-03-31 11:31:05 +01: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
dreis2211
aa0360e1ba Fix some deprecation warnings
See gh-20108
2020-02-10 15:28:30 +01:00
Madhura Bhave
0a377647ca Import OAuth2 auto-configurations in web slice tests
Fixes gh-19823
2020-02-03 18:03:52 -08:00
Stephane Nicoll
c4daff7225 Polish "Upgrade to MongoDB Java Driver 4.0 beta1"
See gh-19960
2020-02-03 14:12:46 +01:00
Christoph Strobl
d2d6dbdc00 Upgrade to MongoDB Java Driver 4.0 beta1
See gh-19960
2020-02-03 10:59:30 +01:00
Stephane Nicoll
bae1d8d780 Polish "Use new AssertJ duration assertions"
See gh-19985
2020-01-30 08:20:49 +01:00
dreis2211
fac6f08ca3 Use new AssertJ duration assertions
See gh-19985
2020-01-30 08:14:49 +01:00
Phillip Webb
e0013454b5 Use parentheses when declaring dependencies
Update all dependencies declarations to use the form `scope(reference)`
rather than `scope reference`.

Prior to this commit we declared dependencies without parentheses unless
we were forced to add them due to an `exclude`.
2020-01-22 16:02:38 -08:00
Phillip Webb
0209cd3e4c Polish quote form used in Gradle scripts
Replace Gradle single quote strings with the double quote form
whenever possible. The change helps to being consistency to the
dependencies section where mostly single quotes were used, but
occasionally double quotes were required due to `${}` references.
2020-01-22 15:49: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
Phillip Webb
bfd2ca7fd9 Polish Gradle expression references
Expand all expression `$` references to the full `${...}` form.
2020-01-21 18:33:33 -08:00
Scott Frederick
8f102aee68 Remove deprecated 2.2 code
See gh-19699
2020-01-16 14:44:52 +01:00
Andy Wilkinson
714a187d8f Rework dep mgmt again to avoid consumers picking up strict constraints
This paves the way for publishing Gradle module metadata once the
problem caused by snapshot versions and our two-step publication
process has been addressed.

See gh-19609
2020-01-15 12:33:18 +00:00
Andy Wilkinson
aefe52e4d0 Revert "Rework dep management to avoid consumers picking up strict constraints"
This reverts commit b34a311d02 as,
having disabled the publishing of Gradle's module metadata (4f75ab5),
the changes are no longer needed.

See gh-19609
2020-01-14 12:15:53 +00:00
Phillip Webb
862462b791 Update copyright year of changed files 2020-01-13 17:04:19 -08:00
Andy Wilkinson
b34a311d02 Rework dep management to avoid consumers picking up strict constraints
Previously, enforcedPlatform dependencies were using to pull in the
constraints defined in spring-boot-dependencies and
spring-boot-parent and applied them strictly so that the constrained
version had to be used. This worked as intended in Spring Boot's own
build but incorrectly enforced those same strict version requirements
on external consumers of Spring Boot's modules.

This commit reworks how Spring Boot defines its internal dependency
management so that platform dependencies are exposed to external
consumers while enforced platform dependencies are using internally.

See gh-19609
2020-01-13 19:59:56 +00:00
Stephane Nicoll
f13ff3b939 Merge branch '2.2.x'
Closes gh-19686
2020-01-13 17:45:06 +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
Andy Wilkinson
ce99db1902 Port the build to Gradle
Closes gh-19609
Closes gh-19608
2020-01-10 14:15:35 +00:00
dreis2211
6ffe47cd06 Remove deprecated usage of WebTestClientBuilderCustomizer
See gh-19536
2020-01-06 12:59:12 +01:00
Andy Wilkinson
e26d5d95a8 Do not enable @ConfigurationPropertiesScan be default
In 2.2.0, @ConfigurationPropertiesScan was enabled by default.
Unfortunately, this had the unexpected side-effect of breaking
conditional enablement of a @ConfigurationProperties class via
@EnableConfigurationProperties if the @ConfigurationProperties class
was in a package covered by scanning.

This commit remove @ConfigurationPropertiesScan from
@SpringBootApplication so that it is no longer enabled by default.
2.1.x users who rely upon such conditional enablement of
@ConfigurationProperties classes can now upgrade to 2.2.x without
having to make any changes. Users who do not have such a need and are
in a position to use configuration properties scanning can now opt-in
by adding @ConfigurationPropertiesScan to their main application class
alongside @SpringBootApplication.

Closes gh-18674
2019-11-04 14:09:33 +00: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
Stephane Nicoll
2ceffcee14 Start building against Spring Data Moore-SR1 snapshots
See gh-18744
2019-10-29 10:36:35 +01:00
Stephane Nicoll
a315d4229d Start building against Spring Data Lovelace-SR12 snapshots
See gh-18743
2019-10-29 10:31:00 +01:00
dreis2211
8ecdf919f8 Fix Mockito deprecations
See gh-18689
2019-10-23 09:49:33 +02:00
Stephane Nicoll
fd94608f73 Polish "Restore proxying of @Bean methods in @TestConfiguration"
See gh-18675
2019-10-22 09:13:00 +02:00
Andy Wilkinson
c75b06c76c Remove @ImmutableConfigurationProperties
Closes gh-18563
2019-10-14 11:29:09 +01:00
Stephane Nicoll
32a1cdf4d3 Polish "Use dedicated method to turn off authentication"
See gh-18538
2019-10-08 11:13:51 -05:00
Michael Simons
04a01a49c2 Use dedicated method to turn off authentication
See gh-18538
2019-10-08 11:08:48 -05:00
Andy Wilkinson
96f85a40de Support customization of WebTestClient.Builder when using @SpringBootTest
Closes gh-15132
2019-10-02 17:51:00 +01:00
Andy Wilkinson
46c30d6bb0 Merge branch '2.1.x'
Closes gh-18476
2019-10-02 10:48:57 +01:00
Andy Wilkinson
3d4157ad6d Correct SCM URLs in published poms
Previously, Maven's default behaviour was relied up which resulted
in the artifact ID being appended to each URL as it was inherited.
This behaviour can only be disabled in Maven 3.6 and later, a version
that we cannot use due to an incompatibility with the Flatten Plugin.

This commit works around Maven's default behaviour by defining
properties for the SCM URL, connection, and developer connection and
then explicitly defining the settings in each pom using these
properties. The explicit definition of the properties in each pom
prevents them being inherited from the parent, thereby disabling the
unwanted appending of the artifact ID to the URL.

Fixes gh-18328
2019-10-02 10:48:30 +01:00
Phillip Webb
b65ba60980 Polish 'Simplify some code'
See gh-18438
2019-10-01 22:08:20 -07:00
Phillip Webb
e41c5a4327 Require annotation signal for constructor binding
Update `@ConfigurationProperties` constructor binding support to only
apply when a `@ConstructorBinding` annotation is present on either the
type or the specific constructor to use.

Prior to this commit we didn't have a good way to tell when constructor
binding should be used vs regular autowiring.

For convenience, an `@ImmutableConfigurationProperties` meta-annotation
has also been added which is composed of `@ConfigurationProperties` and
`@ConstructorBinding`.

Closes gh-18469
2019-10-01 21:56:09 -07:00
Phillip Webb
ecf751e7eb Polish 2019-10-01 20:51:54 -07:00
Andy Wilkinson
79d8089cd0 Remove redundant spring-plugin-core dependencies
Closes gh-18317
2019-09-23 14:11:03 +01: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
07b857e57a Use disabledWithoutDocker option for @Testcontainers
See gh-18095
2019-09-03 09:51:53 +02:00
dreis2211
b4350a9d96 Remove unnecessary blank lines
See gh-18089
2019-09-03 08:48:10 +02:00
freekry
e1611287c8 Simplify some code
See gh-18077
2019-09-01 09:05:53 +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
94b5ad0f7e Fixup tests following upstream HATEOAS changes
See gh-17755
2019-08-01 15:32:39 +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
6675f49334 Switch to multi-line security configuration
Now that we have lambda style security configuration we can further
improve readability by switching to one statement per line.

See gh-17525
2019-07-29 11:28:51 +01:00
Madhura Bhave
39a7b9da38 Switch to lambda style security configuration
Closes gh-17525
2019-07-26 14:41:49 -07: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
Phillip Webb
30b5ba87ae Merge branch '2.0.x' into 2.1.x 2019-07-17 21:48:01 +01: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
Stephane Nicoll
a3e94f4412 Harmonize component scan in slice tests
This commit updates ConfigurationPropertiesScanRegistrar to apply the
same component scan filters than the ones applied on standard classpath
scanning.

As a result, configuration properties scanning is automatically disabled
in slice tests and can be included by an explicit import or a dedicated
TypeFilter implementation if necessary.

Closes gh-16659
2019-07-15 15:05:12 +02:00
Phillip Webb
eff1147ccc Rename classpath runner package
Remove `runner` since we're no longer tied to JUnit 4.

See gh-17491
2019-07-15 13:40:26 +01:00
Phillip Webb
1117fdb2b3 Make ModifiedClassPathExtension package private
Meta-annotate `ClassPathExclusions` and `ClassPathOverrides` with
so that the `ModifiedClassPathExtension` no longer needs to be
used directly.

See gh-17491
2019-07-15 13:38:26 +01:00
Phillip Webb
4fe5e9e31e Remove direct junit-platform-launcher dependency
Replace any direct `junit-platform-launcher` dependencies and instead
rely on the test runner providing it. Launcher related class are not
handled via reflection.

This update allows us to workaround SUREFIRE-1679.

Closes gh-17517
2019-07-15 13:35:08 +01:00
dreis2211
0f0278e69b Migrate ModifiedClassPath tests to JUnit 5
Migrate the remaining JUnit 4 tests to JUnit 5, making use of the
new `ModifiedClassPathExtension`.

See gh-17491
2019-07-15 00:31:03 +01:00
dreis2211
ca1808ecae Migrate to MockRestServiceServer
Migrate `RestClientTestWithoutJacksonIntegrationTests` to use
Spring's `MockRestServiceServer`.

See gh-17491
2019-07-15 00:26:16 +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
c3816bfe7b Polish output capture names 2019-07-15 00:24:18 +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
Stephane Nicoll
e560b7f6ba Remove public modifier on JUnit5 lifecycle methods
See gh-17292
2019-06-21 18:09:05 +02:00