diff --git a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndDefaultNameTests.java b/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndDefaultNameTests.java deleted file mode 100644 index 6f2b091504..0000000000 --- a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndDefaultNameTests.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright 2002-2019 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.test.context.junit4.spr9645; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import org.springframework.test.context.transaction.AfterTransaction; -import org.springframework.test.context.transaction.BeforeTransaction; -import org.springframework.transaction.PlatformTransactionManager; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.transaction.testfixture.CallCountingTransactionManager; - -import static org.assertj.core.api.Assertions.assertThat; - -/** - * Integration tests that verify the behavior requested in - * SPR-9645. - * - * @author Sam Brannen - * @since 3.2 - */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -@Transactional -public class LookUpTxMgrByTypeAndDefaultNameTests { - - private static final CallCountingTransactionManager txManager1 = new CallCountingTransactionManager(); - private static final CallCountingTransactionManager txManager2 = new CallCountingTransactionManager(); - - @Configuration - static class Config { - - @Bean - public PlatformTransactionManager transactionManager() { - return txManager1; - } - - @Bean - public PlatformTransactionManager txManager2() { - return txManager2; - } - } - - @BeforeTransaction - public void beforeTransaction() { - txManager1.clear(); - txManager2.clear(); - } - - @Test - public void transactionalTest() { - assertThat(txManager1.begun).isEqualTo(1); - assertThat(txManager1.inflight).isEqualTo(1); - assertThat(txManager1.commits).isEqualTo(0); - assertThat(txManager1.rollbacks).isEqualTo(0); - } - - @AfterTransaction - public void afterTransaction() { - assertThat(txManager1.begun).isEqualTo(1); - assertThat(txManager1.inflight).isEqualTo(0); - assertThat(txManager1.commits).isEqualTo(0); - assertThat(txManager1.rollbacks).isEqualTo(1); - } - -} diff --git a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndNameTests.java b/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndNameTests.java deleted file mode 100644 index f14ffe106c..0000000000 --- a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndNameTests.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright 2002-2019 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.test.context.junit4.spr9645; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import org.springframework.test.context.transaction.AfterTransaction; -import org.springframework.test.context.transaction.BeforeTransaction; -import org.springframework.transaction.PlatformTransactionManager; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.transaction.testfixture.CallCountingTransactionManager; - -import static org.assertj.core.api.Assertions.assertThat; - -/** - * Integration tests that verify the behavior requested in - * SPR-9645. - * - * @author Sam Brannen - * @since 3.2 - */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -@Transactional("txManager1") -public class LookUpTxMgrByTypeAndNameTests { - - private static final CallCountingTransactionManager txManager1 = new CallCountingTransactionManager(); - private static final CallCountingTransactionManager txManager2 = new CallCountingTransactionManager(); - - @Configuration - static class Config { - - @Bean - public PlatformTransactionManager txManager1() { - return txManager1; - } - - @Bean - public PlatformTransactionManager txManager2() { - return txManager2; - } - } - - @BeforeTransaction - public void beforeTransaction() { - txManager1.clear(); - txManager2.clear(); - } - - @Test - public void transactionalTest() { - assertThat(txManager1.begun).isEqualTo(1); - assertThat(txManager1.inflight).isEqualTo(1); - assertThat(txManager1.commits).isEqualTo(0); - assertThat(txManager1.rollbacks).isEqualTo(0); - } - - @AfterTransaction - public void afterTransaction() { - assertThat(txManager1.begun).isEqualTo(1); - assertThat(txManager1.inflight).isEqualTo(0); - assertThat(txManager1.commits).isEqualTo(0); - assertThat(txManager1.rollbacks).isEqualTo(1); - } - -} diff --git a/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeAndDefaultNameTests.java b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeAndDefaultNameTests.java new file mode 100644 index 0000000000..4b5199133b --- /dev/null +++ b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeAndDefaultNameTests.java @@ -0,0 +1,92 @@ +/* + * Copyright 2002-2020 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.springframework.test.context.transaction.manager; + +import org.junit.jupiter.api.Test; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; +import org.springframework.test.context.transaction.AfterTransaction; +import org.springframework.transaction.PlatformTransactionManager; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.testfixture.CallCountingTransactionManager; + +import static org.assertj.core.api.Assertions.assertThat; + +/** + * Integration tests that verify the behavior requested in + * SPR-9645. + * + * @author Sam Brannen + * @since 3.2 + */ +@SpringJUnitConfig +@Transactional +class LookUpTxMgrByTypeAndDefaultNameTests { + + @Autowired + CallCountingTransactionManager transactionManager; + + @Autowired + CallCountingTransactionManager txManager2; + + + @Test + void transactionalTest() { + assertThat(transactionManager.begun).isEqualTo(1); + assertThat(transactionManager.inflight).isEqualTo(1); + assertThat(transactionManager.commits).isEqualTo(0); + assertThat(transactionManager.rollbacks).isEqualTo(0); + + assertThat(txManager2.begun).isEqualTo(0); + assertThat(txManager2.inflight).isEqualTo(0); + assertThat(txManager2.commits).isEqualTo(0); + assertThat(txManager2.rollbacks).isEqualTo(0); + } + + @AfterTransaction + void afterTransaction() { + assertThat(transactionManager.begun).isEqualTo(1); + assertThat(transactionManager.inflight).isEqualTo(0); + assertThat(transactionManager.commits).isEqualTo(0); + assertThat(transactionManager.rollbacks).isEqualTo(1); + + assertThat(txManager2.begun).isEqualTo(0); + assertThat(txManager2.inflight).isEqualTo(0); + assertThat(txManager2.commits).isEqualTo(0); + assertThat(txManager2.rollbacks).isEqualTo(0); + } + + + @Configuration + static class Config { + + @Bean + PlatformTransactionManager transactionManager() { + return new CallCountingTransactionManager(); + } + + @Bean + PlatformTransactionManager txManager2() { + return new CallCountingTransactionManager(); + } + + } + +} diff --git a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndQualifierAtClassLevelTests.java b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeAndQualifierAtClassLevelTests.java similarity index 61% rename from spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndQualifierAtClassLevelTests.java rename to spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeAndQualifierAtClassLevelTests.java index 9f507a9923..3a5a5ab77b 100644 --- a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndQualifierAtClassLevelTests.java +++ b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeAndQualifierAtClassLevelTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,17 +14,15 @@ * limitations under the License. */ -package org.springframework.test.context.junit4.spr9645; +package org.springframework.test.context.transaction.manager; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; import org.springframework.test.context.transaction.AfterTransaction; -import org.springframework.test.context.transaction.BeforeTransaction; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.testfixture.CallCountingTransactionManager; @@ -38,48 +36,57 @@ import static org.assertj.core.api.Assertions.assertThat; * @author Sam Brannen * @since 3.2 */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration +@SpringJUnitConfig @Transactional("txManager1") -public class LookUpTxMgrByTypeAndQualifierAtClassLevelTests { +class LookUpTxMgrByTypeAndQualifierAtClassLevelTests { + + @Autowired + CallCountingTransactionManager txManager1; + + @Autowired + CallCountingTransactionManager txManager2; + + + @Test + void transactionalTest() { + assertThat(txManager1.begun).isEqualTo(1); + assertThat(txManager1.inflight).isEqualTo(1); + assertThat(txManager1.commits).isEqualTo(0); + assertThat(txManager1.rollbacks).isEqualTo(0); + + assertThat(txManager2.begun).isEqualTo(0); + assertThat(txManager2.inflight).isEqualTo(0); + assertThat(txManager2.commits).isEqualTo(0); + assertThat(txManager2.rollbacks).isEqualTo(0); + } + + @AfterTransaction + void afterTransaction() { + assertThat(txManager1.begun).isEqualTo(1); + assertThat(txManager1.inflight).isEqualTo(0); + assertThat(txManager1.commits).isEqualTo(0); + assertThat(txManager1.rollbacks).isEqualTo(1); + + assertThat(txManager2.begun).isEqualTo(0); + assertThat(txManager2.inflight).isEqualTo(0); + assertThat(txManager2.commits).isEqualTo(0); + assertThat(txManager2.rollbacks).isEqualTo(0); + } - private static final CallCountingTransactionManager txManager1 = new CallCountingTransactionManager(); - private static final CallCountingTransactionManager txManager2 = new CallCountingTransactionManager(); @Configuration static class Config { @Bean - public PlatformTransactionManager txManager1() { - return txManager1; + PlatformTransactionManager txManager1() { + return new CallCountingTransactionManager(); } @Bean - public PlatformTransactionManager txManager2() { - return txManager2; + PlatformTransactionManager txManager2() { + return new CallCountingTransactionManager(); } - } - @BeforeTransaction - public void beforeTransaction() { - txManager1.clear(); - txManager2.clear(); - } - - @Test - public void transactionalTest() { - assertThat(txManager1.begun).isEqualTo(1); - assertThat(txManager1.inflight).isEqualTo(1); - assertThat(txManager1.commits).isEqualTo(0); - assertThat(txManager1.rollbacks).isEqualTo(0); - } - - @AfterTransaction - public void afterTransaction() { - assertThat(txManager1.begun).isEqualTo(1); - assertThat(txManager1.inflight).isEqualTo(0); - assertThat(txManager1.commits).isEqualTo(0); - assertThat(txManager1.rollbacks).isEqualTo(1); } } diff --git a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndQualifierAtMethodLevelTests.java b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeAndQualifierAtMethodLevelTests.java similarity index 61% rename from spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndQualifierAtMethodLevelTests.java rename to spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeAndQualifierAtMethodLevelTests.java index b3aef4e781..707c9fe3a0 100644 --- a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeAndQualifierAtMethodLevelTests.java +++ b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeAndQualifierAtMethodLevelTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,17 +14,15 @@ * limitations under the License. */ -package org.springframework.test.context.junit4.spr9645; +package org.springframework.test.context.transaction.manager; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; import org.springframework.test.context.transaction.AfterTransaction; -import org.springframework.test.context.transaction.BeforeTransaction; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.testfixture.CallCountingTransactionManager; @@ -38,48 +36,57 @@ import static org.assertj.core.api.Assertions.assertThat; * @author Sam Brannen * @since 3.2 */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class LookUpTxMgrByTypeAndQualifierAtMethodLevelTests { +@SpringJUnitConfig +class LookUpTxMgrByTypeAndQualifierAtMethodLevelTests { + + @Autowired + CallCountingTransactionManager txManager1; + + @Autowired + CallCountingTransactionManager txManager2; + + + @Transactional("txManager1") + @Test + void transactionalTest() { + assertThat(txManager1.begun).isEqualTo(1); + assertThat(txManager1.inflight).isEqualTo(1); + assertThat(txManager1.commits).isEqualTo(0); + assertThat(txManager1.rollbacks).isEqualTo(0); + + assertThat(txManager2.begun).isEqualTo(0); + assertThat(txManager2.inflight).isEqualTo(0); + assertThat(txManager2.commits).isEqualTo(0); + assertThat(txManager2.rollbacks).isEqualTo(0); + } + + @AfterTransaction + void afterTransaction() { + assertThat(txManager1.begun).isEqualTo(1); + assertThat(txManager1.inflight).isEqualTo(0); + assertThat(txManager1.commits).isEqualTo(0); + assertThat(txManager1.rollbacks).isEqualTo(1); + + assertThat(txManager2.begun).isEqualTo(0); + assertThat(txManager2.inflight).isEqualTo(0); + assertThat(txManager2.commits).isEqualTo(0); + assertThat(txManager2.rollbacks).isEqualTo(0); + } - private static final CallCountingTransactionManager txManager1 = new CallCountingTransactionManager(); - private static final CallCountingTransactionManager txManager2 = new CallCountingTransactionManager(); @Configuration static class Config { @Bean - public PlatformTransactionManager txManager1() { - return txManager1; + PlatformTransactionManager txManager1() { + return new CallCountingTransactionManager(); } @Bean - public PlatformTransactionManager txManager2() { - return txManager2; + PlatformTransactionManager txManager2() { + return new CallCountingTransactionManager(); } - } - @BeforeTransaction - public void beforeTransaction() { - txManager1.clear(); - txManager2.clear(); - } - - @Transactional("txManager1") - @Test - public void transactionalTest() { - assertThat(txManager1.begun).isEqualTo(1); - assertThat(txManager1.inflight).isEqualTo(1); - assertThat(txManager1.commits).isEqualTo(0); - assertThat(txManager1.rollbacks).isEqualTo(0); - } - - @AfterTransaction - public void afterTransaction() { - assertThat(txManager1.begun).isEqualTo(1); - assertThat(txManager1.inflight).isEqualTo(0); - assertThat(txManager1.commits).isEqualTo(0); - assertThat(txManager1.rollbacks).isEqualTo(1); } } diff --git a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeTests.java b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeTests.java similarity index 67% rename from spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeTests.java rename to spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeTests.java index 835a911a72..c2025e5bfb 100644 --- a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpTxMgrByTypeTests.java +++ b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrByTypeTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,17 +14,15 @@ * limitations under the License. */ -package org.springframework.test.context.junit4.spr9645; +package org.springframework.test.context.transaction.manager; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; import org.springframework.test.context.transaction.AfterTransaction; -import org.springframework.test.context.transaction.BeforeTransaction; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.testfixture.CallCountingTransactionManager; @@ -38,29 +36,16 @@ import static org.assertj.core.api.Assertions.assertThat; * @author Sam Brannen * @since 3.2 */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration +@SpringJUnitConfig @Transactional -public class LookUpTxMgrByTypeTests { +class LookUpTxMgrByTypeTests { - private static final CallCountingTransactionManager txManager = new CallCountingTransactionManager(); + @Autowired + CallCountingTransactionManager txManager; - @Configuration - static class Config { - - @Bean - public PlatformTransactionManager txManager() { - return txManager; - } - } - - @BeforeTransaction - public void beforeTransaction() { - txManager.clear(); - } @Test - public void transactionalTest() { + void transactionalTest() { assertThat(txManager.begun).isEqualTo(1); assertThat(txManager.inflight).isEqualTo(1); assertThat(txManager.commits).isEqualTo(0); @@ -68,11 +53,22 @@ public class LookUpTxMgrByTypeTests { } @AfterTransaction - public void afterTransaction() { + void afterTransaction() { assertThat(txManager.begun).isEqualTo(1); assertThat(txManager.inflight).isEqualTo(0); assertThat(txManager.commits).isEqualTo(0); assertThat(txManager.rollbacks).isEqualTo(1); } + + @Configuration + static class Config { + + @Bean + PlatformTransactionManager txManager() { + return new CallCountingTransactionManager(); + } + + } + } diff --git a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpNonexistentTxMgrTests.java b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrNonTransactionalTests.java similarity index 67% rename from spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpNonexistentTxMgrTests.java rename to spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrNonTransactionalTests.java index 5958079e45..ad6aae5368 100644 --- a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9645/LookUpNonexistentTxMgrTests.java +++ b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrNonTransactionalTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,15 +14,14 @@ * limitations under the License. */ -package org.springframework.test.context.junit4.spr9645; +package org.springframework.test.context.transaction.manager; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.testfixture.CallCountingTransactionManager; @@ -35,26 +34,30 @@ import static org.assertj.core.api.Assertions.assertThat; * @author Sam Brannen * @since 3.2 */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class LookUpNonexistentTxMgrTests { +@SpringJUnitConfig +class LookUpTxMgrNonTransactionalTests { - private static final CallCountingTransactionManager txManager = new CallCountingTransactionManager(); + @Autowired + CallCountingTransactionManager txManager; - @Configuration - static class Config { - - @Bean - public PlatformTransactionManager transactionManager() { - return txManager; - } - } @Test - public void nonTransactionalTest() { + void nonTransactionalTest() { assertThat(txManager.begun).isEqualTo(0); assertThat(txManager.inflight).isEqualTo(0); assertThat(txManager.commits).isEqualTo(0); assertThat(txManager.rollbacks).isEqualTo(0); } + + + @Configuration + static class Config { + + @Bean + PlatformTransactionManager transactionManager() { + return new CallCountingTransactionManager(); + } + + } + } diff --git a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9604/LookUpTxMgrViaTransactionManagementConfigurerTests.java b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrViaTransactionManagementConfigurerTests.java similarity index 69% rename from spring-test/src/test/java/org/springframework/test/context/junit4/spr9604/LookUpTxMgrViaTransactionManagementConfigurerTests.java rename to spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrViaTransactionManagementConfigurerTests.java index c1bcfec1e2..3a30c12c06 100644 --- a/spring-test/src/test/java/org/springframework/test/context/junit4/spr9604/LookUpTxMgrViaTransactionManagementConfigurerTests.java +++ b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/LookUpTxMgrViaTransactionManagementConfigurerTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,17 +14,15 @@ * limitations under the License. */ -package org.springframework.test.context.junit4.spr9604; +package org.springframework.test.context.transaction.manager; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; import org.springframework.test.context.transaction.AfterTransaction; -import org.springframework.test.context.transaction.BeforeTransaction; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.annotation.TransactionManagementConfigurer; import org.springframework.transaction.annotation.Transactional; @@ -39,43 +37,19 @@ import static org.assertj.core.api.Assertions.assertThat; * @author Sam Brannen * @since 3.2 */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration +@SpringJUnitConfig @Transactional -public class LookUpTxMgrViaTransactionManagementConfigurerTests { +class LookUpTxMgrViaTransactionManagementConfigurerTests { - private static final CallCountingTransactionManager txManager1 = new CallCountingTransactionManager(); - private static final CallCountingTransactionManager txManager2 = new CallCountingTransactionManager(); + @Autowired + CallCountingTransactionManager txManager1; + @Autowired + CallCountingTransactionManager txManager2; - @Configuration - static class Config implements TransactionManagementConfigurer { - - @Override - public PlatformTransactionManager annotationDrivenTransactionManager() { - return txManager1(); - } - - @Bean - public PlatformTransactionManager txManager1() { - return txManager1; - } - - @Bean - public PlatformTransactionManager txManager2() { - return txManager2; - } - } - - - @BeforeTransaction - public void beforeTransaction() { - txManager1.clear(); - txManager2.clear(); - } @Test - public void transactionalTest() { + void transactionalTest() { assertThat(txManager1.begun).isEqualTo(1); assertThat(txManager1.inflight).isEqualTo(1); assertThat(txManager1.commits).isEqualTo(0); @@ -88,7 +62,7 @@ public class LookUpTxMgrViaTransactionManagementConfigurerTests { } @AfterTransaction - public void afterTransaction() { + void afterTransaction() { assertThat(txManager1.begun).isEqualTo(1); assertThat(txManager1.inflight).isEqualTo(0); assertThat(txManager1.commits).isEqualTo(0); @@ -100,4 +74,25 @@ public class LookUpTxMgrViaTransactionManagementConfigurerTests { assertThat(txManager2.rollbacks).isEqualTo(0); } + + @Configuration + static class Config implements TransactionManagementConfigurer { + + @Override + public PlatformTransactionManager annotationDrivenTransactionManager() { + return txManager1(); + } + + @Bean + PlatformTransactionManager txManager1() { + return new CallCountingTransactionManager(); + } + + @Bean + PlatformTransactionManager txManager2() { + return new CallCountingTransactionManager(); + } + + } + } diff --git a/spring-test/src/test/java/org/springframework/test/context/transaction/PrimaryTransactionManagerTests.java b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/PrimaryTransactionManagerTests.java similarity index 88% rename from spring-test/src/test/java/org/springframework/test/context/transaction/PrimaryTransactionManagerTests.java rename to spring-test/src/test/java/org/springframework/test/context/transaction/manager/PrimaryTransactionManagerTests.java index 95e477d4c4..b7fcd5fefe 100644 --- a/spring-test/src/test/java/org/springframework/test/context/transaction/PrimaryTransactionManagerTests.java +++ b/spring-test/src/test/java/org/springframework/test/context/transaction/manager/PrimaryTransactionManagerTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.test.context.transaction; +package org.springframework.test.context.transaction.manager; import javax.sql.DataSource; @@ -31,6 +31,8 @@ import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseBuilder; import org.springframework.jdbc.datasource.init.ResourceDatabasePopulator; import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; +import org.springframework.test.context.transaction.AfterTransaction; +import org.springframework.test.context.transaction.BeforeTransaction; import org.springframework.test.jdbc.JdbcTestUtils; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.annotation.EnableTransactionManagement; @@ -49,16 +51,16 @@ import static org.springframework.test.transaction.TransactionAssert.assertThatT */ @SpringJUnitConfig @DirtiesContext -final class PrimaryTransactionManagerTests { - - private JdbcTemplate jdbcTemplate; +final /* Intentionally FINAL */ class PrimaryTransactionManagerTests { + private final JdbcTemplate jdbcTemplate; @Autowired - void setDataSource(DataSource dataSource1) { + PrimaryTransactionManagerTests(DataSource dataSource1) { this.jdbcTemplate = new JdbcTemplate(dataSource1); } + @BeforeTransaction void beforeTransaction() { assertNumUsers(0); @@ -112,6 +114,7 @@ final class PrimaryTransactionManagerTests { DataSource dataSource2() { return new EmbeddedDatabaseBuilder().generateUniqueName(true).build(); } + } }