Commit Graph

428 Commits

Author SHA1 Message Date
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
Madhura Bhave 8daa8c48fb Merge branch '2.1.x' 2019-04-01 15:51:25 -07:00
Madhura Bhave c592e71449 Override missing methods in FilteredClassLoader
Closes gh-16404
2019-04-01 15:42:02 -07:00
Andy Wilkinson 878a635bfb Merge branch '2.1.x' 2019-03-28 11:48:47 +00:00
Andy Wilkinson 5a3474c7a8 Polish "Use HTTPS for external links wherever possible"
See gh-16320
2019-03-28 10:53:01 +00:00
Andy Wilkinson 864942ad4f Merge branch '2.0.x' into 2.1.x 2019-03-28 09:35:53 +00:00
Spring Operator 1a4c6f2dac Use HTTPS for external links wherever possible
See gh-16319
2019-03-27 20:06:52 +00:00
Andy Wilkinson ba4671f0ab Merge branch '1.5.x' into 2.0.x 2019-03-27 19:59:36 +00:00
Andy Wilkinson 4900505425 Merge branch '2.0.x' into 2.1.x 2019-03-26 13:53:57 +00:00
Andy Wilkinson fedb40a2bf Merge branch '1.5.x' into 2.0.x 2019-03-26 13:48:32 +00:00
Madhura Bhave 95d10388dd Merge branch '2.1.x' 2019-03-25 11:03:10 -07:00
Madhura Bhave 0c2e71cd08 Prevent early initialization of factory beans in text context customizers
Until Spring Framework 5.1.15, a FactoryBean with a non-default constructor
defined via component scanning would cause an error. This behavior has changed
as of https://github.com/spring-projects/spring-framework/issues/22409.
Regardless of this change we want to ensure that we avoid triggering eager
initialisation. `SimpleFactoryBean` has been written this way so that the tests
fail if early initialization is triggered regardless of the Spring Framework version.

Fixes gh-15898
2019-03-25 10:55:41 -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
Spring Operator 00ab30362c Use HTTPS for external links in XML files
See gh-16270
2019-03-20 14:33:25 +00:00
Madhura Bhave 0611eb49c8 Merge branch '2.1.x' 2019-03-18 18:03:32 -07:00
Madhura Bhave 7ea8770524 Polish "Fix request factory used with withBasicAuth"
Fixes gh-15982
2019-03-18 18:00:17 -07:00
Dmytro Nosan 756bd890eb Fix request factory used with TestRestTemplate withBasicAuth
This commit updates the behavior of withBasicAuth on TestRestTemplate
by trying to use the same request factory type as the underlying restTemplate.
If creation of a new instance of the configured request factory class fails,
it falls back to the `ClientHttpRequestFactorySupplier`.

See gh-15982
2019-03-18 18:00:08 -07:00
Madhura Bhave 1893eeef4f Merge branch '2.1.x' 2019-03-15 17:27:10 -07:00
Dmytro Nosan 2f3e5d65be Test server port shouldn't affect management port when random
Closes gh-16108
2019-03-15 17:21:29 -07:00
Madhura Bhave 2cdc93cf19 Make TestRestTemplate withBasicAuth fault tolerant
It's part of TestRestTemplate's contract that it's fault tolerant. This
commit aligns the behavior of `withBasicAuth` with that expectation.

Closes gh-15780
2019-03-13 11:49:42 -07: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
Andy Wilkinson aa2008bc5a Merge branch '2.1.x' 2019-03-11 16:40:19 +00:00
Andy Wilkinson 8c3cec8f13 Merge branch '2.0.x' into 2.1.x 2019-03-11 16:14:19 +00:00
Andy Wilkinson 361437f4e2 Merge branch '1.5.x' into 2.0.x 2019-03-11 15:53:34 +00:00
Andy Wilkinson f2e3e274a8 Merge branch '2.1.x' 2019-02-21 08:19:43 +00:00
Andy Wilkinson 53326695ea Polish 2019-02-21 08:13:54 +00:00
Stephane Nicoll 4992b7fb29 Polish "Migrate Kotlin tests to Mockk"
Closes gh-15993
2019-02-19 13:36:06 +01:00
Sebastien Deleuze cca79b8d4d Migrate Kotlin tests to Mockk
See gh-15993
2019-02-19 13:35:43 +01:00
Stephane Nicoll 7413584b00 Polish "Support expressing application `args` in `@SpringBootTest`"
Closes gh-14823
2019-02-13 15:07:11 +01:00
Justin Griffin 422e6b7d41 Support expressing application `args` in `@SpringBootTest`
Add `args` property to the `@SpringBootTest` annotation so tests
can easily supply application arguments to pass to their app under test.

See gh-14823
2019-02-13 14:38:26 +01:00
Andy Wilkinson c04eba7ebc Polish "Add TestNG support in TestTypeExcludeFilter"
See gh-7630
2019-02-12 15:28:19 +00:00
Eddú Meléndez b005008cac Add TestNG support in TestTypeExcludeFilter
See gh-7630
2019-02-12 15:27:51 +00:00
Andy Wilkinson 89bf486d0c Merge branch '2.1.x' 2019-02-05 11:39:37 +00:00
Andy Wilkinson 1f67707509 Fix cast in TestRestTemplateContextCustomizer
Closes gh-15843
2019-02-05 11:39:25 +00:00
Andy Wilkinson 45cc649c7d Merge branch '2.1.x' 2019-02-04 12:36:33 +00:00
Andy Wilkinson 82bc87560c Use AssertJ’s exception assertions rather than fail
Closes gh-15761
2019-02-04 11:48:26 +00:00
Stephane Nicoll 33f2bd4d61 Merge branch '2.1.x' 2019-01-14 08:13:37 -05:00
Stephane Nicoll 485bdc9901 Polish "Remove redundant interface modifiers"
Closes gh-15694
2019-01-14 08:13:08 -05:00
igor-suhorukov 2d873c78fe Remove redundant interface modifiers
See gh-15694
2019-01-14 08:12:41 -05:00
Andy Wilkinson 064f6478df Move back to JUnit 4 until SUREFIRE-1614 has been resolved
See gh-14736
See gh-14737
See gh-14738
2018-12-12 16:49:30 +00:00
Stephane Nicoll dfd477aa74 Merge branch '2.1.x' 2018-12-11 08:53:37 +01:00
Stephane Nicoll 38e4d330b0 Merge branch '2.0.x' into 2.1.x 2018-12-11 08:52:58 +01:00
dreis2211 0f92b139f3 Remove Mockito 1 leftover
Closes gh-15422
2018-12-11 08:52:15 +01:00
Madhura Bhave e367b54928 Merge branch '2.1.x' 2018-12-07 11:57:19 -08:00
Madhura Bhave 31a5e85ab6 Perform placeholder resolution in test env post processor
Fixes gh-15354
2018-12-07 11:45:04 -08:00
Stephane Nicoll d5f90ffcfb Polish "Replace this lambda with a method reference"
Closes gh-15401
2018-12-07 11:10:10 +01:00
igor-suhorukov 5c1813aef8 Replace this lambda with a method reference
See gh-15401
2018-12-07 11:01:42 +01:00
Madhura Bhave 59d2b0a3fb Upgrade tests to Junit5
See gh-14737
2018-12-05 17:49:09 -08:00
Madhura Bhave 12e1d9a6a4 Add Junit5 OutputCapture Extension
See gh-14738
2018-12-05 17:48:27 -08:00
Phillip Webb 683484e4a8 Fix primary beans with ApplicationContextAssert
Update `ApplicationContextAssert.getBean` so that multiple beans are
supported as long as one of them is primary. This aligns better with
the way that the standard `ApplicationContext.getBean` method works.

Closes gh-14874
2018-10-24 21:34:17 -07:00
dreis2211 8b14754cda Remove usages of BasicAuthorizationInterceptor
See gh-14830
2018-10-16 10:21:32 +02:00
Stephane Nicoll 1a0d53dec0 Replace ReflectionTestUtils usage by hasFieldOrPropertyWithValue
Closes gh-14696
2018-10-15 08:25:10 +02:00
Stephane Nicoll baf83aec0d Polish "Allow ClassPathResources to be filtered by FilteredClassLoader"
Closes gh-14774
2018-10-12 15:37:25 +02:00
Roy Jacobs d3ca1a7b0e Allow ClassPathResources to be filtered by FilteredClassLoader
See gh-14774
2018-10-12 15:15:16 +02:00
Andy Wilkinson da7daece08 Tolerate Integer values for port properties
Closes gh-14682
2018-10-04 10:53:02 +01:00
Andy Wilkinson b473f2996d Polish 2018-10-04 10:39:07 +01: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
Johnny Lim 521f746151 Polish
Closes gh-14517
2018-09-20 09:51:10 +02:00
Madhura Bhave d5a197fe66 Support random actuator port in SpringBootTest
This commit changes @SpringBootTest(randomPort = true) to
generate a random port for the actuator endpoints if the
management server runs on a different port from the main
server.

Closes gh-4424
2018-09-14 15:42:08 -07:00
Phillip Webb 04710373bf Add @Author attribution
See gh-11077
2018-09-06 13:42:29 -07:00
Andreas Neiser a5b3a2646b Test @MockBean/@SpyBean with @Primary
Add additional tests to ensure that `@MockBean` and `@SpyBean`
work consistently when combined with `@Primary`.

See gh-11077
2018-09-06 13:31:33 -07:00
Phillip Webb 4d86ac4713 Polish copyright date on changed files 2018-07-29 09:30:26 +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
Stephane Nicoll f780179777 Polish contribution
Closes gh-13904
2018-07-26 17:22:58 +02:00
Andy Wilkinson b4cd4f4c43 Stop mocking class that is final in latest Framework 5.1 snapshots 2018-06-28 10:51:58 +01:00
Andy Wilkinson e306aad28c Merge branch '2.0.x' 2018-06-01 17:27:10 +01:00
Andy Wilkinson 27267a7090 Ensure that condition evaluator uses runner’s class loader
Closes gh-13319
2018-06-01 17:26:32 +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
Stephane Nicoll 4464a5f5bd Remove code deprecated in 2.0
Closes gh-12962
2018-05-22 14:48:25 +02:00
Phillip Webb 2dc4f1df00 Polish 2018-05-21 21:32:42 -07:00
Stephane Nicoll 300f6bf4d7 Polish contribution
Closes gh-13208
2018-05-18 14:20:31 +02:00
Mihhail Lapushkin d31dbac69e Support custom UriTemplateHandler in LocalHostUriTemplateHandler
See gh-13208
2018-05-18 14:19:01 +02:00
Phillip Webb 6e09e497f2 Formatting 2018-05-04 12:06:19 -07:00
Phillip Webb 2d70a7ae5e Polish caught exception names
Prefer `ex` over `e`.
2018-05-03 22:43:32 -07:00
Johnny Lim f03849d502 Polish
See gh-12812
2018-04-10 11:46:16 +02:00
Stephane Nicoll ed05e1f7ca Polish "Reorder modifiers to comply with the JLS"
Closes gh-12432
2018-03-12 15:17:23 +01:00
igor-suhorukov aebb475bc5 Reorder modifiers to comply with the JLS
See gh-12432
2018-03-12 15:17:05 +01:00
Johnny Lim 680287635c Rename TestRestTemplateTestContextCustomizer*
Closes gh-12182
2018-02-22 20:26:14 -08:00
Phillip Webb cd5266ac03 Polish 2018-02-22 20:25:28 -08:00
Johnny Lim 2fe86da95b Use isTrue() and isFalse() for AssertJ
Closes gh-12170
2018-02-22 09:55:40 +01:00
Johnny Lim 88b184ca23 Polish 2018-02-19 20:00:20 -08:00
Phillip Webb 9e75680e6f Polish 2018-02-16 18:11:54 -08:00
Brian Clozel 03a6f97e76 TestRestTemplate should not override request factory
Previously `TestRestTemplate` would override the configured
`ClientHttpRequestFactory` if the Apache HTTP client library was on
classpath.

This commit fixes two issues:

1. The existing `ClientHttpRequestFactory` is overridden *only* if it is
using the Apache HTTP client variant, in order to wrap it with the
`TestRestTemplate` custom support

2. Calling `withBasicAuth` will no longer directly use the request
factory returned by the internal `RestTemplate`; if client interceptors
are configured, the request factory is wrapped with an
`InterceptingClientHttpRequestFactory`. If we don't unwrap it,
interceptors are copied/applied twice in the newly created
`TestRestTemplate` instance. For that, we need to use reflection as the
underlying request factory is not accessible directly.

Closes gh-8697
2018-02-16 12:29:47 +01:00
Phillip Webb 728b522307 Include scope support on ApplicationContextAssert
Update `ApplicationContextAssert` with support for scopes. Allows
tests to consider the all ancestors, or limit assertions to just the
current context.

Fixes gh-12015
2018-02-12 17:49:54 -08:00
Phillip Webb 7ab587a067 Add initializer support
Add `ApplicationContextInitializer` support to
`ApplicationContextRunner`.
2018-02-12 17:49:53 -08:00
Brian Clozel 2be0c46562 Remove TestRestTemplate constructors taking template args
As discussed in gh-11872, `TestRestTemplate` constructor variants taking
a `RestTemplate` argument are confusing since the main goal of that
class is to mutate `RestTemplate`.

This commit removes all those constructor variants and replaces them
with `RestTemplateBuilder` arguments when possible.

Closes gh-11872
2018-02-12 16:57:15 +01:00
Andy Wilkinson 37f3b1d1e5 Polish 2018-02-08 10:10:34 +00:00
Andy Wilkinson b3ed46af5a Polish 2018-02-07 16:30:03 +00:00
Andy Wilkinson 886f782b20 Merge branch '1.5.x' 2018-02-05 11:04:48 +00:00
dreis2211 a7663c88d3 Replace casted Mockito.any() calls
Closes gh-11817
2018-01-29 07:50:29 +01:00
Phillip Webb b7c52da457 Allow custom WebTestClient beans
Update `@SpringBootTest` `WebTestClient` support so that the bean
definition is only registered when the user has not defined or
auto-configured their own.

See gh-10556
2018-01-25 00:08:19 -08:00
Phillip Webb 177281a504 Allow custom TestRestTemplate beans
Update `@SpringBootTest` `TestRestTemplate` support so that the bean
definition is only registered when the user has not defined or
auto-configured their own.

See gh-10556
2018-01-25 00:08:19 -08:00
Phillip Webb f3379668ac Polish 2018-01-18 23:21:51 -08:00
Andy Wilkinson 54c0cf513b Polish 2018-01-17 19:03:23 +00:00
sdeleuze d4c91d2fe0 Improve Kotlin extensions doc about type erasure
Since type erasure can be fixed only when using
ParameterizedTypeReference based Java methods, TestRestTemplate
API documentation should be updated to specify which extensions
are subject to type erasure, and which are not.

Closes gh-11604
2018-01-16 10:19:12 +01:00
Andy Wilkinson db83a80deb Correct test expectations following changes to application context ID
See gh-11023
2018-01-10 14:12:06 +00:00
Phillip Webb b078698f20 Update copyright year of changed files 2018-01-09 12:13:27 -08:00
Phillip Webb bee5fa7fc6 Polish 2018-01-03 13:24:04 -08:00
Madhura Bhave 8102dc78cb Remove redundant throws declarations 2017-12-29 12:10:13 -08:00
Johnny Lim e4f0ad2165 Polish
Closes gh-11372
2017-12-23 13:11:53 +01:00
Phillip Webb 3273859fde Polish 2017-12-13 14:32:55 -08:00
Stephane Nicoll 7f2af8b209 Polish 2017-12-13 09:46:41 +01:00
Stephane Nicoll 23218add90 Polish 2017-12-12 11:57:30 +01:00
Johnny Lim 96250743b5 Add missing "abstract" keywords
Closes gh-11303
2017-12-09 15:29:15 -08:00
Johnny Lim 6d54072e04 Remove "final" keywords
Closes gh-11294
2017-12-08 11:13:07 -08:00
Stephane Nicoll 7380920ed4 Remove wrong usage of commons-lang3
Closes gh-11267
2017-12-05 17:43:56 -08:00
Andy Wilkinson 03fce55cdb Polish "Remove a redundant dash in TestPropertyValues.Type"
Closes gh-11156
2017-11-27 10:44:53 +00:00
Johnny Lim f21737a675 Remove a redundant dash in TestPropertyValues.Type
Prior to this change, the dash was duplicated. For example
"test--systemEnvironment". This commit removes the redundant dash
and corrects the assertion in the test that should have caught the
problem.

See gh-11156
2017-11-27 10:43:38 +00:00
Stephane Nicoll aa87c45b5d Polish "Introduce TestRestTemplate Kotlin extensions"
Closes gh-11039
2017-11-24 09:56:47 +01:00
sdeleuze cd98da5ee9 Introduce TestRestTemplate Kotlin extensions
This commit introduces Kotlin extensions similar to the RestOperations
ones in order to be able to take advantage of Kotlin reified type
parameters for example.

See gh-11039
2017-11-24 09:44:34 +01:00
Phillip Webb e147982045 Add FilteredClassLoader
Add `FilteredClassLoader` to replace `HideClassesClassLoader` and
`HidePackagesClassLoader`.

Fixes gh-10303
2017-11-18 23:20:00 -08:00
Johnny Lim cbb483735d Polish
Closes gh-10948
2017-11-16 10:36:20 +01:00
Andy Wilkinson 71632ac767 Polish "Provide access to root URI from TestRestTemplate"
See gh-10641
2017-11-12 12:11:57 +00:00
tinexw c1205c3243 Provide access to root URI from TestRestTemplate
Closes gh-10641
2017-11-12 12:05:53 +00:00
Andy Wilkinson 07462be090 Polish 2017-11-11 16:29:12 +00:00
Phillip Webb 06b1b453a6 Limit when SystemEnvironment mapping is used
Update `SpringConfigurationPropertySource` so that the
`SystemEnvironmentPropertyMapper` is only used for the "actual" system
environment property source. This allows SystemEnvironmentProperySource
class to be used for other purposes (for example, Spring Cloud uses it
to as an override source providing decryption).

Only property sources named `systemEnvironment` or ending with
`-systemEnvironment` now have the `SystemEnvironmentPropertyMapper`
applied. The `TestPropertyValues` has been retrofitted to name the
source it adds appropriately.

Fixes gh-10840
2017-11-06 13:12:25 -08:00
Johnny Lim c05a299520 Polish
Closes gh-10921
2017-11-06 12:28:43 +01:00
Johnny Lim 6168fae720 Remove explicit type arguments
See gh-10494
2017-10-24 14:44:20 +01:00
Andy Wilkinson 027c5a0e35 Remove usage of Mockito's internals
Previously, we relied on Mockito's internals to bypass any Spring AOP
proxy during verification of a spy. Thanks to a new API in Mockito,
we can replace the use of Mockito's internals with a
VerificationStartedListener. This listener changes Mockito's view of
the mock to be the ultimate target of the AOP proxy, i.e. to be the
actual Mockito-created spy, allowing Mockito's verification of the
spy to proceed successfully.

This above-described change will mean that we require a very
up-to-date version of Mockito so the tests that verify our
compatibility with 2.5 have been removed as we will no longer support
it when using @MockBean or @SpyBean.

Lastly, two tests have been updated to replace their usage of the
internal MockUtil class with the equivalent public API calls.

Closes gh-10352
2017-10-17 15:56:28 +01:00
Johnny Lim 5aa32b3d0f Polish
Closes gh-10636
2017-10-17 15:29:13 +02:00
Phillip Webb 748e0779b6 Update copyright year for changed files 2017-10-10 11:56:13 -07:00
Phillip Webb 0ba4830b4f Relocate projects to spring-boot-project
Move projects to better reflect the way that Spring Boot is released.

The following projects are under `spring-boot-project`:

  - `spring-boot`
  - `spring-boot-autoconfigure`
  - `spring-boot-tools`
  - `spring-boot-starters`
  - `spring-boot-actuator`
  - `spring-boot-actuator-autoconfigure`
  - `spring-boot-test`
  - `spring-boot-test-autoconfigure`
  - `spring-boot-devtools`
  - `spring-boot-cli`
  - `spring-boot-docs`

See gh-9316
2017-10-04 16:34:23 -07:00