Commit Graph

365 Commits

Author SHA1 Message Date
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 0254619782 Merge branch '2.7.x' 2022-12-22 00:59:40 -08:00
Phillip Webb e4772cf3b7 Update copyright year of changed files 2022-12-22 00:59:32 -08:00
Andy Wilkinson b67c427259 Upgrade to Servlet 6.0 and related EE 10 specs
Co-authored-by: Phillip Webb <pwebb@vmware.com>

Closes gh-33036
Closes gh-33037
Closes gh-33038
Closes gh-33039
Closes gh-33040
Closes gh-33041
Closes gh-33042
Closes gh-33043
2022-11-07 17:33:38 +00:00
Andy Wilkinson fce6016399 Merge branch '2.7.x'
See gh-33016
2022-11-07 13:36:48 +00:00
Andy Wilkinson ac6ad7c0f1 Fix ModifiedClassPathExtension with parameterized tests
Closes gh-33014
2022-11-07 13:34:54 +00:00
Phillip Webb 3bd945766f Merge branch '2.7.x' 2022-11-05 17:03:10 -07:00
Phillip Webb d2cceb6b77 Polish 2022-11-05 17:02:57 -07:00
Phillip Webb 262c30ddc1 Improve error message when DirtiesUrlFactoriesExtension fails
See gh-33019
2022-11-05 16:44:53 -07:00
Phillip Webb 34b4ae8e05 Merge branch '2.7.x'
Closes gh-33019
2022-11-05 16:36:55 -07:00
Phillip Webb caf46043c6 Add @DirtiesUrlFactories annotation
Add `@DirtiesUrlFactories` annotation that can be used to reset URL
factories.

Closes gh-33017
2022-11-05 16:30:27 -07:00
Phillip Webb fb3c095e35 Merge branch '2.7.x'
Closes gh-33016
2022-11-05 16:06:13 -07:00
Phillip Webb d4cc8fc3a6 Support modified classpath on methods and parameterized tests
Update `ModifiedClassPathExtension` and related classes so that
annotations can be used directly on test methods, or on classes
passed into parameterized tests.

Closes gh-33014
2022-11-05 16:04:19 -07:00
Phillip Webb 45ce096b6b Replace our TestCompiler with Spring Framework's version
Replace the last use of our `TestCompiler` with Spring Framework's
version.

See gh-31266
2022-10-18 11:39:03 -07:00
Andy Wilkinson 0e23fbe30b Use Neo4j 4.4.11 for integration testing
See gh-32620
2022-10-06 19:53:46 +01:00
Scott Frederick d25a99692f Replace Spring Boot TestCompiler with Spring Framework's version
See gh-31266
2022-09-30 15:58:11 -05:00
Andy Wilkinson 17953eeb33 Merge branch '2.7.x'
Closes gh-32544
2022-09-29 11:41:15 +01:00
Andy Wilkinson 84a25c7dcf Configure Log4j2 classpath overrides consistently
Closes gh-32537
2022-09-29 11:25:21 +01: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
Stephane Nicoll f52d00d9fa Merge branch '2.7.x'
Closes gh-31779
2022-07-18 11:30:45 +02:00
Johnny Lim f591c75ad7 Disable incompatible tests on macOS AArch64
This commit also updates related test support classes.

See gh-31539
2022-07-18 11:25:52 +02:00
dreis2211 5db04da275 Use pattern matching for instanceof where appropriate
See gh-31475
2022-06-20 17:55:36 +01:00
Phillip Webb 657fa3e64e Merge branch '2.7.x'
Closes gh-31409
2022-06-16 15:36:29 -07:00
Phillip Webb ae6311ddda Prevent Logback from accidentally being used in Log4J2LoggingSystemTests
Update `Log4J2LoggingSystemTests` to exclude Logback and include
'log4j-slf4j-impl'. The `ModifiedClassPathClassLoader` has also been
updated so that it no longer automatically excludes `log4j` artifacts,
instead we now use `@ClassPathExclusions` on the relevant tests.

Fixes gh-19365
2022-06-16 15:35:32 -07:00
Andy Wilkinson 4f3180540c Use Framework's MockSpringFactoriesLoader
Closes gh-31406
2022-06-16 15:40:03 +01:00
Stephane Nicoll d5695c1931 Add resource hints for configuration properties
This commits introduces a RuntimeHintsRegistrar for configuration
properties. By default, it provides the necessary hint to load
application properties and yaml files in default locations.

Closes gh-31311
2022-06-15 10:15:27 +02:00
Andy Wilkinson 003f747e77 Merge branch '2.7.x'
Closes gh-31170
2022-05-26 13:52:41 +01:00
Andy Wilkinson 3e7bd582a3 Upgrade to Spring Java Format 0.0.33
Closes gh-31166
2022-05-26 13:22:23 +01:00
Andy Wilkinson 770cb840c3 Use more flexible SpringFactoriesLoader
Closes gh-30235

Co-authored-by: Madhura Bhave <bhavem@vmware.com>
Co-authored-by: Stephane Nicoll <snicoll@vmware.com>
2022-05-09 14:13:04 +01:00
Moritz Halbritter 24a68fc595 Merge branch '2.7.x' 2022-03-07 14:12:19 +01:00
Moritz Halbritter e980a53399 Merge branch '2.5.x' into 2.6.x 2022-03-07 14:11:11 +01:00
Moritz Halbritter f3eb90046f Remove @Repeatable support for @DisabledOnOs
We'll add it back again when we need it, and delay the naming issue.

See gh-30082
2022-03-07 14:10:13 +01:00
Moritz Halbritter 74fe5735d9 Polish 2022-03-07 13:28:41 +01:00
Moritz Halbritter a1b1377733 Merge branch '2.7.x' 2022-03-07 13:23:06 +01:00
Moritz Halbritter 564555347f Merge branch '2.5.x' into 2.6.x
Closes gh-30083
2022-03-07 13:22:34 +01:00
Moritz Halbritter be38311c5d Disable incompatible tests on Linux AArch64
- Adds a new @DisableOnOs annotation, which is inspired from JUnit5s
  @DisableOnOs annotation. This new annotation supports the architecture
  and is repeatable

Closes gh-30082
2022-03-07 13:22:17 +01: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 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
Andy Wilkinson 24ef4e6fb9 Merge branch '2.5.x'
Closes gh-28471
2021-10-28 13:07:22 +01:00
Andy Wilkinson 7fbbb4e08a Merge branch '2.4.x' into 2.5.x
Closes gh-28470
2021-10-28 13:07:07 +01:00
Andy Wilkinson 72f80f3ae6 Upgrade to Testcontainers 1.16.1
Closes gh-28468
2021-10-28 13:06:41 +01:00
Andy Wilkinson 9514a72d5a Test using an up-to-date version of Postgres
See gh-28296
2021-10-13 11:56:44 +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 1a0e008a8c Prevent Netty tcNative from loading classes with wrong class loader
In our tests, the JNI code in Netty tcNative can cause some of its
classes to be loaded using a ModifiedClassPathClassLoader. When the
wrong class loader is used, SSL-related tests fail, for example due
to the same Netty tcNative classes being loaded by two different
ClassLoders and no longer being the same. This appears to be
dependent upon the order in which tests are executed and results in
intermittent test failures.

It looks like this should be addressed in Netty tcNative 2.0.40 which
preloads all of its classes. In the meantime, this commit updates
ModifiedClassPathClassLodaer to ignore Netty tcNative classes so that
they're only ever loaded by the system class loader.

Closes gh-26749
2021-06-08 11:20:02 +01:00
Stephane Nicoll 75f31f6bc4 Merge branch '2.4.x'
Closes gh-26748
2021-06-03 09:27:01 +02:00
Stephane Nicoll ad99aa2f4a Merge branch '2.3.x' into 2.4.x
Closes gh-26747
2021-06-03 09:26:38 +02:00
dreis2211 f470151535 Remove reference to surefirebooter JAR
See gh-26737
2021-06-03 09:24:56 +02:00
Stephane Nicoll e9ed92a305 Polish 2021-06-02 14:14:04 +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
Stephane Nicoll ef093bc9c6 Merge branch '2.3.x' into 2.4.x
Closes gh-26570
2021-05-17 14:24:03 +02:00
Stephane Nicoll 306b6f6999 Configure SessionCookieConfig in MockServletWebServer
Closes gh-26479
2021-05-17 14:05:45 +02:00
Stephane Nicoll 559af275a4 Merge branch '2.3.x' into 2.4.x
Closes gh-26405
2021-05-07 09:14:35 +02:00
Sach Nguyen afa77b8253 Fix wrong reference to Cassandra in DockerImageNames#couchbase
See gh-26399
2021-05-07 09:12:43 +02:00
Andy Wilkinson ecf8437d4a Merge branch '2.3.x' into 2.4.x
Closes gh-25430
2021-02-25 14:28:28 +00:00
dreis2211 101d88a840 Update Testcontainers image versions
See gh-25412
2021-02-25 14:27:41 +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
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
Stephane Nicoll 45f1133e1e Merge branch '2.3.x' 2020-11-10 09:49:49 +01:00
Stephane Nicoll 339c8d0a26 Revert "Upgrade to Testcontainers 1.15.0" 2020-11-10 09:47:46 +01:00
Stephane Nicoll 5123eb0c74 Fix deprecation in Testcontainers 1.15.0
See gh-24103
2020-11-10 09:39:18 +01:00
Stephane Nicoll 7fb21fbff3 Merge branch '2.3.x'
Closes gh-24104
2020-11-10 08:47:51 +01:00
Stephane Nicoll c1a1b5fe71 Upgrade to Testcontainers 1.15.0
Closes gh-24103
2020-11-10 08:46:15 +01:00
Johnny Lim e48af31ced Polish
See gh-23081
2020-08-26 10:47:45 +02:00
dreis2211 c00d5c5643 Introduce @ForkedClassPath for testing unmodified class path
See gh-22710
2020-08-12 17:21:31 +01:00
Andy Wilkinson 969dd35e45 Upgrade to Mockito 3.4.6
Closes gh-22838
2020-08-10 15:22:03 +01:00
Phillip Webb 8d06b0f368 Merge branch '2.3.x' 2020-08-06 10:15:36 -07:00
Phillip Webb 4924573074 Merge branch '2.2.x' into 2.3.x 2020-08-06 10:15:22 -07:00
Phillip Webb fdd6a89a61 Polish 2020-08-06 10:14:01 -07:00
Andy Wilkinson 8b3f8a6138 Merge branch '2.3.x'
Closes gh-22768
2020-08-06 15:14:16 +01:00
Andy Wilkinson 11d1002f15 Merge branch '2.2.x' into 2.3.x
Closes gh-22767
2020-08-06 15:13:55 +01:00
Andy Wilkinson 07699ea6ff Retry when dependency resolution fails in ModifiedClassPathClassLoader
Closes gh-22763
2020-08-06 15:12:20 +01:00
Andy Wilkinson 989fc36528 Polish 2020-08-03 10:51:22 +01:00
Andy Wilkinson 11a296b068 Polish "Fix NPE in BeanDefinitionLoader when XML support is disabled"
See gh-22696
2020-08-03 09:54:43 +01:00
Gerrit Meier 15cd343737 Upgrade to Spring Data Neo4j 6
See gh-22299
2020-07-29 18:58:08 +02:00
dreis2211 507eb9498b Use Class.getDeclaredConstructor().newInstance()
See gh-21913
2020-07-07 11:12:35 +01:00
Andy Wilkinson 96e6b74894 Merge branch '2.2.x' into 2.3.x
Closes gh-22243
2020-07-07 09:56:21 +01:00
Andy Wilkinson a0f1424393 Polish "Fix unwrapping of captured PrintStream in test support's OutputCapture"
See gh-22214
2020-07-07 09:54:52 +01:00
XenoAmess 75a64bd901 Fix unwrapping of captured PrintStream in test support's OutputCapture
See gh-22214
2020-07-07 09:53:34 +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
Phillip Webb ad1248e4ec Replace "folder" with "directory"
Consistently use the term "directory" instead of "folder"

Closes gh-21218
2020-04-28 19:20:24 -07:00
Stephane Nicoll b5e23e7405 Update copyright year of changed files
See gh-20020
2020-02-03 17:39:40 +01:00
Johnny Lim b67ece48e4 Polish
See gh-20020
2020-02-03 17:37:01 +01:00
dreis2211 d8e2349e47 Use Supplier variants of Assert
See gh-19864
2020-01-28 15:04:11 +01:00
dreis2211 d75de39456 Upgrade to JUnit Jupiter 5.6.0
See gh-19907
2020-01-26 08:39:12 +01:00
Stephane Nicoll e044817fe7 Migrate remaining use of ClassLoader.loadClass to Class.forName
Closes gh-19824
2020-01-23 13:15:45 +01:00
Stephane Nicoll 95be419527 Use Class.forName rather than ClassLoader.loadClass
This commit changes uses of ClassLoader.loadClass to Class.forName for
consistency with what was initiated in #19342 and better compatibility
with GraalVM.

Closes gh-19824
2020-01-23 10:47:53 +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
Phillip Webb fd792cedaf Polish DisabledIfDockerUnavailable
Convert `DisabledIfDockerUnavailable` to be an annotation and make
it slightly less noisy.
2020-01-16 16:54:43 -08: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
Phillip Webb f57281340c Merge branch '2.2.x' 2020-01-13 16:46:49 -08:00
Phillip Webb 3cfbfebbb1 Merge branch '2.1.x' into 2.2.x 2020-01-13 16:45:40 -08:00
Phillip Webb 9bd49562fe Update copyright year of changed files 2020-01-13 14:09:11 -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 ca1710ee56 Upgrade to Apache Cassandra 4.3.1
See gh-19588
2020-01-13 15:12:41 +01:00
Brian Clozel e0171a5da8 Polish 2020-01-10 22:29:57 +01:00
Andy Wilkinson b5ae8b0af5 Disable tests that use Docker when Docker is unavailable
Closes gh-19616
2020-01-10 20:35:18 +00:00
Andy Wilkinson ce99db1902 Port the build to Gradle
Closes gh-19609
Closes gh-19608
2020-01-10 14:15:35 +00:00
Andy Wilkinson bdffa860d9 Increase startup timeout for Docker containers
Closes gh-19569
2020-01-08 11:39:36 +00:00
Stephane Nicoll 2c1e81adf0 Polish 2019-12-26 10:42:40 +01:00
Phillip Webb 83d4d94e8b Cache ModifiedClassPathClassLoaders
Closes gh-18694
2019-10-22 15:25:31 -07:00
Phillip Webb 8d08d654d1 Merge branch '2.1.x'
Closes gh-18693
2019-10-22 15:18:32 -07: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
Andy Wilkinson 29080b87ec Protect autoconfigure module against slow starting test containers 2019-09-04 10:15:10 +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
dreis2211 3e35a6616c Fix duplicated words
See gh-18004
2019-09-01 09:09:38 +02:00
thelproad 9c1f503e46 Simplify if statements
See gh-17884
2019-08-17 06:50:32 +02: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
Andy Wilkinson 41957ec2ad Polish "Polish OutputCapture and its JUnit Jupiter extension"
See gh-17049
2019-07-18 17:46:56 +01:00
dreis2211 2038fac825 Remove testsupport.assertj package
See gh-17557
2019-07-18 14:20:28 +02:00
Phillip Webb a9ba7080ce Merge branch '2.1.x' 2019-07-17 21:48:42 +01:00
dreis2211 4ec035977b Polish testsupport.junit.platform package
See gh-17524
2019-07-15 21:35:25 +01: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 b6ec1332a0 Polish ModifiedClassPathClassLoader
Remove the `ModifiedClassPathClassLoaderFactory` in favor of
factory methods on `ModifiedClassPathClassLoader`.

See gh-17491
2019-07-15 13:37:34 +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
Phillip Webb 543fcdbbfd Delete internal OutputCaptureRule
Delete our internal `OutputCaptureRule` since we not longer have any
tests using it.
2019-07-15 00:36:13 +01:00
Phillip Webb 13b39cbbbf Delete ModifiedClassPathRunner
Delete `ModifiedClassPathRunner` since we no longer have any tests
that use it.

See gh-17491
2019-07-15 00:33:00 +01:00
Phillip Webb bd81bb90eb Polish ModifiedClassPath support
See gh-17491
2019-07-15 00:32:34 +01:00
dreis2211 2a4c48cb91 Add JUnit 5 ModifiedClassPathExtension
Add a JUnit 5 extension that allows tests to be run with a
modified classpath. Since JUnit 5 does not currently offer a way
to run tests with a different classpath, we instead fake the
original invocation and launch an entirely new run for each
method.

See gh-17491
2019-07-15 00:28:53 +01:00
dreis2211 90d824f6cb Extract ModifiedClassPathClass logic
Extract classes from `ModifiedClassPathRunner` so that they can
be reused.

See gh-17491
2019-07-15 00:27:42 +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 cdf43a7489 Polish 2019-07-14 19:42:56 +01:00
Phillip Webb 8d4a2add63 Allow OutputCaptureRule to be used with AssertJ
Update `OutputCaptureRule` so that it now implements
`CapturedOutput` and can be used directly with AssertJ.

Closes gh-17512
2019-07-14 19:42:42 +01:00
dreis2211 32549cfc85 Remove folder that only contains package-info
See gh-17471
2019-07-10 06:24:40 +01:00
Andreas Gebhardt ed7cfedb51 Fix JavaDoc within spring-boot-test-support
See gh-17443
2019-07-08 12:48:02 +01:00
Andy Wilkinson 2816635418 Polish 2019-07-04 17:51:20 +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
Madhura Bhave 30cfe7b4c5 Polish 2019-06-13 08:02:26 -07:00
Phillip Webb b3d5cd538d Add JUnit 5 checkstyle rules
Add a rule to enforce JUnit 5 usage and conventions.

Closes gh-17093
2019-06-10 16:16:45 -07:00
Andy Wilkinson b18fffaf14 Move tests to JUnit 5 wherever possible 2019-06-07 12:25:54 +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
Brian Clozel c74badd4f2 Auto-configure Elasticsearch REST client in Spring Data
This commit auto-configures the Elasticsearch REST client support
as a template for Spring Data Elasticsearch. As of this commit,
using the transport client is still possible but developers
should migrate.

This commit also removes the deprecated annotation on the
Elasticsearch auto-configuration for the transport client, since
this deprecation notice is already present on the configuration
property.

Closes gh-17024
Closes gh-16542
2019-06-03 21:20:06 +02:00
Phillip Webb ad5e905bd7 Update copyright header of changed files 2019-05-30 11:30:43 -07:00
Phillip Webb 68aec8b6ee Polish 2019-05-30 11:30:27 -07:00
Andy Wilkinson 23f803c6b6 Upgrade to Hamcrest 2.1, switch to hamcrest artifact from -core and -library
Closes gh-15555
2019-05-22 14:50:15 +01:00
Madhura Bhave 684a1c7a3c Migrate tests to JUnit5 testcontainer extensions
Closes gh-15456
2019-05-08 16:05:44 +02:00
Phillip Webb 17aaf26590 Use consistent javadoc style for annotation links
Closes gh-13920
2019-04-24 19:37:59 -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
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 b828b398b5 Merge branch '2.1.x' 2019-03-19 17:11:45 +00:00
Andy Wilkinson a36aa67b52 Merge branch '2.0.x' into 2.1.x 2019-03-19 17:04:41 +00:00
Spring Operator 3e2b6ac8ed Update build and setup configuration to use HTTPS
See gh-16246
2019-03-19 16:58:31 +00:00
Andy Wilkinson d6a869fa98 Switch to Jakarta EE API dependencies where possible
Closes gh-16113
Closes gh-16112
Closes gh-16111
Closes gh-15916
Closes gh-15689
2019-03-06 11:20:51 +00:00
Andy Wilkinson 747e419db1 Merge branch '2.1.x' 2019-02-13 17:45:45 +00:00
Andy Wilkinson 9fb0b97f96 Decorate test containers so tests are skipped without Docker
Closes gh-15901
Closes gh-15638
2019-02-13 17:44:45 +00:00
Andy Wilkinson db31e42751 Merge branch '2.1.x' 2019-02-12 09:58:21 +00:00
Andy Wilkinson a975c0ad16 Use Testcontainers’ CassandraContainer rather than our own
Closes gh-15901
2019-02-12 09:58:05 +00:00
Andy Wilkinson 7e51e1a076 Merge branch '2.1.x' 2019-02-12 09:26:59 +00:00
Michael Simons 316126e8f0 Replace custom Neo4j container with Testcontainers version
See gh-15638
2019-02-12 09:24:44 +00:00
Andy Wilkinson ddabfe3fcc Deploy spring-boot-test-support so it's available downstream
Concourse builds spring-boot-tests separately from spring-boot-project
and relies on modules from the latter being available in the
distribution repository when building the former. This commit enables the
deployment of spring-boot-test-support from spring-boot-project so that it
is added to the distribution repository and is therefore available when
building spring-boot-tests. It is then excluded when putting to the
Artifactory resource as we do not want it to be published.

See gh-15471
2018-12-14 19:50:23 +00:00
Andy Wilkinson 61d04db0d7 Minimize and centralize assumptions about build output
Closes gh-15471
2018-12-14 17:50:20 +00:00
Andy Wilkinson 62fbf48446 Start Elasticsearch with single-node discovery type
See gh-15441
2018-12-12 21:02:28 +00:00
Andy Wilkinson 47fc35105d Allow more time for the Elasticsearch container to start
See gh-15441
2018-12-12 19:41:30 +00:00
Andy Wilkinson 2b453bbb16 Minimise dependencies on Log4j2
Closes gh-15441
2018-12-12 08:19:34 +00:00
Andy Wilkinson 72ad0cc6be Merge branch '2.0.x' into 2.1.x 2018-12-03 12:15:36 +00:00
Andy Wilkinson 3fd0380359 Correct optional dependency declarations in spring-boot-test-support
Closes gh-15371
2018-12-03 12:14:18 +00:00
Phillip Webb 94798062ab Configure Cassandra JMX Reporting
Allow Cassandra JMX reporting to be configured via a property, and
disable it by default since it won't work with Dropwizard metrics 4.

Also update some of our own tests to explicitly disable it.

Closes gh-14778
2018-10-10 10:00:44 -07:00
Phillip Webb d76bba5e6f Migrate from ExpectedException rule to AssertJ
Replace ExpectedException JUnit rules with AssertJ exception
assertions.

Closes gh-14336
2018-10-02 10:55:28 -07:00
Andy Wilkinson c1b864c826 Polish 2018-09-18 11:18:28 +01:00
Phillip Webb 894e0e11d4 Switch from Aether to Maven Resolver
Replace Aether dependencies with Maven Resolver following the Eclipse
EOL announcement for Aether.

Closes gh-7627
2018-09-11 18:08:59 -07:00
Stephane Nicoll eedeaa29e5 Polish "Replace loops with Arrays.setAll where possible"
Closes gh-14125
2018-08-20 10:23:16 +02:00
dreis2211 0bc66dc4a9 Replace loops with Arrays.setAll where possible
See gh-14125
2018-08-20 10:16:50 +02:00
Andy Wilkinson de7899fba4 Improve reliability by give Cassandra more time and attempts to start 2018-07-19 19:57:54 +01:00
Johnny Lim 75639aa682 Polish
Closes gh-13192
2018-05-17 15:29:50 +02:00
dreis2211 15d67d6b12 Remove MockServletWebServer.emptyEnumeration()
Closes gh-13084
2018-05-07 14:41:06 +02:00
Phillip Webb 2d70a7ae5e Polish caught exception names
Prefer `ex` over `e`.
2018-05-03 22:43:32 -07:00
Andy Wilkinson c9f04c3977 Avoid race between container starting and getting mapped port 2018-04-24 11:03:54 +01:00
Andy Wilkinson f6cc1cbd76 Make Testcontainer wait strategies final 2018-04-24 10:38:57 +01:00
Andy Wilkinson f39cea0428 Try to stabilize build by giving Cassandra longer to start 2018-04-24 10:27:11 +01:00
Andy Wilkinson 6c504a5098 Fix deprecation warnings in Testcontainers wait strategies
See gh-12821
2018-04-24 10:27:11 +01:00
Madhura Bhave 9c7612e681 Fix NPE in WaitStrategy used for test containers 2018-04-12 10:30:36 -07:00
Phillip Webb 98a2a91d16 Polish 2018-03-29 14:00:13 -07:00
Stephane Nicoll 006decea2a Merge branch '1.5.x' 2018-03-27 15:47:56 +02: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
Andy Wilkinson 5522174e96 Provide package info for all packages included in javadoc 2018-02-08 16:50:37 +00:00
dreis2211 c1675c2d5f Use InvocationOnMock.getArgument() where possible
Closes gh-11818
2018-01-29 08:06:00 +01:00