Commit Graph

1672 Commits

Author SHA1 Message Date
Sam Brannen
4dc966b04b Include @Inject TCK tests in the build again
Commit 979508a7f3 removed the JUnit 4
dependency from all modules except spring-test. Unfortunately, the
@Inject TCK tests (SpringAtInjectTckTests) are still based on JUnit 3.
Thus, that commit accidentally excluded those tests from the build.

This commit includes SpringAtInjectTckTests in the build again by
introducing a test runtime dependency on the JUnit Vintage TestEngine
in spring-context.

See gh-23451
2019-09-27 13:57:31 +02:00
Sam Brannen
6186239287 Remove obsolete references to specific release versions in testing docs 2019-09-26 15:02:30 +02:00
Sam Brannen
f05b4625de Merge branch '5.1.x' 2019-09-26 10:55:55 +02:00
Sam Brannen
7d126d3288 Improve documentation regarding "annotated classes"
See gh-23638
2019-09-26 10:26:36 +02:00
Sebastien Deleuze
f79cebd53d Add Kotlin samples to RSocket documentation
See gh-23147
2019-09-25 17:04:40 +02:00
Johnny Lim
d6d3a9e232 Polish ImportOrderCheck Checkstyle rule
Closes gh-23685
2019-09-24 12:36:51 +02:00
Sebastien Deleuze
840249778a Polish Kotlin reference documentation for WebMvc.fn
See gh-23657
2019-09-24 10:14:16 +02:00
Rossen Stoyanchev
2888b032a1 Polish rsocket.adoc 2019-09-24 06:08:06 +01:00
Rossen Stoyanchev
93371cc2ac Polish 2019-09-23 16:35:08 +01:00
Arjen Poutsma
9ffecc5059 Polish reference documentation for WebMvc.fn 2019-09-23 16:08:50 +02:00
Arjen Poutsma
652bbdad2a Add reference documentation for WebMvc.fn
This commit introduces reference documentation for WebMvc.fn, the
functional web framework.

Closes gh-23657
2019-09-23 15:27:49 +02:00
Rossen Stoyanchev
0ae7154518 Fix checkstyle violation 2019-09-23 13:09:06 +01:00
Rossen Stoyanchev
88bb2aabbf RSocket reference documentation
Closes: gh-23147
2019-09-23 12:18:03 +01:00
Sebastien Deleuze
02d70424ad Mention Kotlin code samples in the Kotlin refdoc 2019-09-19 10:44:50 +02:00
Sebastien Deleuze
1dfe304da4 Improve parity between Java and Kotlin router DSL
This commit adds following functions to the Kotlin DSL:
add, filter, before, after and onError.

Closes gh-23524
2019-09-17 12:42:48 +02:00
Sebastien Deleuze
5a0216d657 Improve parity between Java and Kotlin router DSL
This commit adds variants with pattern + predicate to
Kotlin router DSLs, and vararg where necessary.

Closes gh-23524
2019-09-16 22:14:55 +02:00
Phillip Webb
e9454b8b11 Update checkstyle import rule
Update the checkstyle rule to enforce the blank line between `java`
and `javax`.

See gh-23539
2019-09-16 13:45:28 +02:00
Phillip Webb
d945ae9191 Add blank line between java and javax imports
See gh-23539

Co-authored-by: Sam Brannen <sbrannen@pivotal.io>
2019-09-16 13:41:59 +02:00
Sam Brannen
455ad71863 Polish contribution
See gh-23629
2019-09-12 17:02:35 +02:00
Sebastien Deleuze
fc6480631e Improve Coroutines transaction API
As a follow-up of gh-22915, the purpose of this commit is to improve
Coroutines programmatic transaction API to make it more consistent with
the Java one and more idiomatic.

For suspending functions, this commit changes the
TransactionalOperator.transactional extension with a suspending lambda
parameter to a TransactionalOperator.executeAndAwait one which is
conceptually closer to TransactionalOperator.execute Java API so more
consistent.

For Flow, the TransactionalOperator.transactional extension is correct
but would be more idiomatic as a Flow extension.

This commit also adds code samples to the reference documentation.

Closes gh-23627
2019-09-12 14:45:03 +02:00
Sam Brannen
8f38f5c17a Polishing 2019-09-12 11:35:30 +02:00
Sam Brannen
30cff46e7f Prevent improper use of testing framework APIs
Prior to this commit, a lot of work had been done to prevent improper
use of testing Framework APIs throughout the codebase; however, there
were still some loopholes.

This commit addresses these loopholes by introducing additional
Checkstyle rules (and modifying existing rules) to prevent improper use
of testing framework APIs in production code as well as in test code.

- Checkstyle rules for banned imports have been refactored into
  multiple rules specific to JUnit 3, JUnit 4, JUnit Jupiter, and
  TestNG.
- Accidental usage of org.junit.Assume has been switched to
  org.junit.jupiter.api.Assumptions.
- All test classes now reside under org.springframework packages.
- All test classes (including abstract test classes) now conform to the
  `*Tests` naming convention.
  - As an added bonus, tests in the renamed
    ScenariosForSpringSecurityExpressionTests are now included in the
    build.
- Dead JUnit 4 parameterized code has been removed from
  DefaultServerWebExchangeCheckNotModifiedTests.

Closes gh-22962
2019-09-12 11:20:56 +02:00
Sam Brannen
2b1ae4af60 Remove obsolete Checkstyle suppression entries 2019-09-05 15:54:55 +02:00
Stephane Nicoll
9afe17a29b Fix static imports handling in IntelliJ IDEA configuration
Closes gh-23588
2019-09-05 14:35:54 +02:00
Sam Brannen
99d88ba14e Document minimum JDK 8 update version
Closes gh-23563
2019-09-05 14:04:43 +02:00
Sebastien Deleuze
40a55b412d Rename BodyBuilder#bodyAndAwait to bodyValueAndAwait 2019-09-05 13:34:11 +02:00
Phillip Webb
6fbd4841ec Update checkstyle import rule
Update the checkstyle rule to enforce the blank line between `java`
and `javax`.

Closes gh-23539
2019-09-04 22:06:46 -07:00
Sebastien Deleuze
2b4eb610a7 Add support for Coroutines transactions
This commit adds Coroutines extensions for
TransactionalOperator.transactional that accept suspending lambda or
Kotlin Flow parameters.

@Transactional on suspending functions is not supported yet, gh-23575
has been created for that purpose.

Closes gh-22915
2019-09-03 23:41:42 +02:00
Sebastien Deleuze
f8516c69bf Add Kotlin code snippets to data access refdoc
See gh-21778
2019-09-03 16:03:41 +02:00
Sam Brannen
652db21d3e Ensure Hamcrest imports are properly banned 2019-09-03 16:01:30 +02:00
Arjen Poutsma
4c863f3f83 Revise documentation on using WebClient::exchange
This commit revised the paragraph regarding the need to consume or
release the ClientResponse body when using WebClient::exchange.

Closes gh-23498
2019-09-03 15:44:02 +02:00
康智冬
a6f4862f13 Fix typos related to indefinite articles
Closes gh-23555
2019-09-01 15:45:49 +02:00
Sam Brannen
f05f993cc6 Fix formatting in Testing chapter in Reference Manual 2019-08-31 15:07:12 +02:00
Sam Brannen
794e2e328d Polish Testing chapter in Reference Manual 2019-08-31 14:47:49 +02:00
Sebastien Deleuze
3dfd0a24dc Add Kotlin code snippets to WebTestClient testing refdoc
Closes gh-21778
2019-08-31 11:36:57 +02:00
Udo Kohlmeyer
b20a8c9d98 Add Kotlin code snippets to testing refdoc
See gh-21778
2019-08-31 11:31:03 +02:00
Sam Brannen
ff1f8aa5a8 Add missing parentheses in Testing chapter 2019-08-30 17:19:46 +02:00
Sam Brannen
489193dfa6 Add missing parentheses in Testing chapter 2019-08-30 17:12:23 +02:00
Sebastien Deleuze
52976246ac Remove bodyWithType extension from WebFlux
Since there is no more clash with the new bodyValue
method name.

Closes gh-23523
2019-08-28 13:30:16 +02:00
Sebastien Deleuze
14558844bc Add Kotlin code snippets to WebFlux refdoc
See gh-21778
2019-08-28 11:18:43 +02:00
Sebastien Deleuze
0d3fb0ee0f Add Kotlin code snippets to WebMvc refdoc
See gh-21778
2019-08-22 16:58:00 +02:00
Sam Brannen
53f523001e Focus examples in Testing chapter on JUnit Jupiter 2019-08-21 15:56:15 +02:00
Sam Brannen
3dc4d01b53 Fix heading for Streaming Responses section of Testing chapter 2019-08-21 15:56:15 +02:00
Sam Brannen
6ce5f9da06 Fix unmatched parentheses in @ContextHierarchy example in reference manual
See gh-23487
2019-08-21 14:18:21 +02:00
Brian Clozel
998f6af290 Move integration tests to dedicated module
This commit moves the dependency management and test source files
related to integration tests to a dedicated module.
This allows us to focus the root project on building the Spring
Framework.

See gh-23282
2019-08-19 10:55:44 +02:00
부종민
18eed79d73 Fix typo
See gh-23480
2019-08-18 08:09:56 +02:00
Phillip Webb
f8a93ee4a7 Add SpringJUnit5 checkstyle rule
Add `SpringJUnit5` checkstyle rule to ensure that JUnit 4 annotations
aren't accidentally used in new tests.

The "must not be public" rule has been suppressed since there are
quite a few tests that extend base tests from other packages.
2019-08-17 08:31:23 -07:00
Sam Brannen
288461a541 Introduce @EnabledForTestGroups in Spring's test suite
Closes gh-23476
2019-08-17 14:47:24 +02:00
Sam Brannen
504d2a41f1 Polish ScheduledAndTransactionalAnnotationIntegrationTests 2019-08-17 13:12:17 +02:00
Sam Brannen
3f3e41923f Migrate rest of test suite from JUnit 4 to JUnit Jupiter
This commit migrates the rest of Spring's test suite to JUnit Jupiter,
except spring-test which will be migrated in a separate commit.

See gh-23451
2019-08-17 11:36:58 +02:00