diff --git a/src/test/java/org/springframework/samples/petclinic/AbstractOwnerRepositoryTests.java b/src/test/java/org/springframework/samples/petclinic/AbstractOwnerRepositoryTests.java index e274d38ec71d0bdae8cbe10a7ee8736d3bb1aadf..1ad621ff00c96a8f3c1a97936ec0412fbe33c02e 100644 --- a/src/test/java/org/springframework/samples/petclinic/AbstractOwnerRepositoryTests.java +++ b/src/test/java/org/springframework/samples/petclinic/AbstractOwnerRepositoryTests.java @@ -1,3 +1,18 @@ +/* + * Copyright 2002-2013 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 + * + * http://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.samples.petclinic; import static org.junit.Assert.assertEquals; @@ -10,7 +25,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.samples.petclinic.model.Owner; import org.springframework.samples.petclinic.repository.OwnerRepository; import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests; import org.springframework.transaction.annotation.Transactional; /** @@ -18,29 +32,10 @@ import org.springframework.transaction.annotation.Transactional; * Base class for {@link OwnerRepository} integration tests. * </p> * <p> - * "AbstractClinicTests-context.xml" declares a common - * {@link javax.sql.DataSource DataSource}. Subclasses should specify - * additional context locations which declare a - * {@link org.springframework.transaction.PlatformTransactionManager PlatformTransactionManager} - * and a concrete implementation of {@link OwnerRepository}. + * Subclasses should specify Spring context configuration using {@link ContextConfiguration @ContextConfiguration} annotation * </p> * <p> - * This class extends {@link AbstractTransactionalJUnit4SpringContextTests}, - * one of the valuable testing support classes provided by the - * <em>Spring TestContext Framework</em> found in the - * <code>org.springframework.test.context</code> package. The - * annotation-driven configuration used here represents best practice for - * integration tests with Spring. Note, however, that - * AbstractTransactionalJUnit4SpringContextTests serves only as a convenience - * for extension. For example, if you do not wish for your test classes to be - * tied to a Spring-specific class hierarchy, you may configure your tests with - * annotations such as {@link ContextConfiguration @ContextConfiguration}, - * {@link org.springframework.test.context.TestExecutionListeners @TestExecutionListeners}, - * {@link org.springframework.transaction.annotation.Transactional @Transactional}, - * etc. - * </p> - * <p> - * AbstractClinicTests and its subclasses benefit from the following services + * AbstractOwnerRepositoryTests and its subclasses benefit from the following services * provided by the Spring TestContext Framework: * </p> * <ul> @@ -48,39 +43,22 @@ import org.springframework.transaction.annotation.Transactional; * unnecessary set up time between test execution.</li> * <li><strong>Dependency Injection</strong> of test fixture instances, * meaning that we don't need to perform application context lookups. See the - * use of {@link Autowired @Autowired} on the <code>ownerRepository</code> instance - * variable, which uses autowiring <em>by type</em>. As an alternative, we - * could annotate <code>ownerRepository</code> with - * {@link javax.annotation.Resource @Resource} to achieve dependency injection - * <em>by name</em>. - * <em>(see: {@link ContextConfiguration @ContextConfiguration}, - * {@link org.springframework.test.context.support.DependencyInjectionTestExecutionListener DependencyInjectionTestExecutionListener})</em></li> + * use of {@link Autowired @Autowired} on the <code>{@link AbstractOwnerRepositoryTests#ownerRepository ownerRepository}</code> instance + * variable, which uses autowiring <em>by type</em>. * <li><strong>Transaction management</strong>, meaning each test method is * executed in its own transaction, which is automatically rolled back by * default. Thus, even if tests insert or otherwise change database state, there * is no need for a teardown or cleanup script. - * <em>(see: {@link org.springframework.test.context.transaction.TransactionConfiguration @TransactionConfiguration}, - * {@link org.springframework.transaction.annotation.Transactional @Transactional}, - * {@link org.springframework.test.context.transaction.TransactionalTestExecutionListener TransactionalTestExecutionListener})</em></li> - * <li><strong>Useful inherited protected fields</strong>, such as a - * {@link org.springframework.jdbc.core.simple.SimpleJdbcTemplate SimpleJdbcTemplate} - * that can be used to verify database state after test operations or to verify - * the results of queries performed by application code. An - * {@link org.springframework.context.ApplicationContext ApplicationContext} is + * <li> An {@link org.springframework.context.ApplicationContext ApplicationContext} is * also inherited and can be used for explicit bean lookup if necessary. - * <em>(see: {@link org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests AbstractJUnit4SpringContextTests}, - * {@link AbstractTransactionalJUnit4SpringContextTests})</em></li> + * </li> * </ul> - * <p> - * The Spring TestContext Framework and related unit and integration testing - * support classes are shipped in <code>spring-test.jar</code>. - * </p> * * @author Ken Krebs * @author Rod Johnson * @author Juergen Hoeller * @author Sam Brannen - * * @author Michael Isvy + * @author Michael Isvy */ public abstract class AbstractOwnerRepositoryTests { diff --git a/src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java b/src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java index fce671d4eb25bc155edc685522dd8648641d4b64..c43a4fc3c73fa887357119e4dfb81ba5c74bda0f 100644 --- a/src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java +++ b/src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java @@ -1,3 +1,18 @@ +/* + * Copyright 2002-2013 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 + * + * http://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.samples.petclinic; import static org.junit.Assert.assertEquals; @@ -13,79 +28,21 @@ import org.springframework.samples.petclinic.model.Pet; import org.springframework.samples.petclinic.model.PetType; import org.springframework.samples.petclinic.repository.OwnerRepository; import org.springframework.samples.petclinic.repository.PetRepository; -import org.springframework.samples.petclinic.service.ClinicService; import org.springframework.samples.petclinic.util.EntityUtils; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests; import org.springframework.transaction.annotation.Transactional; /** * <p> - * Base class for {@link ClinicService} integration tests. - * </p> - * <p> - * "AbstractClinicTests-context.xml" declares a common - * {@link javax.sql.DataSource DataSource}. Subclasses should specify - * additional context locations which declare a - * {@link org.springframework.transaction.PlatformTransactionManager PlatformTransactionManager} - * and a concrete implementation of {@link ClinicService}. + * Base class for {@link OwnerRepository} integration tests. * </p> * <p> - * This class extends {@link AbstractTransactionalJUnit4SpringContextTests}, - * one of the valuable testing support classes provided by the - * <em>Spring TestContext Framework</em> found in the - * <code>org.springframework.test.context</code> package. The - * annotation-driven configuration used here represents best practice for - * integration tests with Spring. Note, however, that - * AbstractTransactionalJUnit4SpringContextTests serves only as a convenience - * for extension. For example, if you do not wish for your test classes to be - * tied to a Spring-specific class hierarchy, you may configure your tests with - * annotations such as {@link ContextConfiguration @ContextConfiguration}, - * {@link org.springframework.test.context.TestExecutionListeners @TestExecutionListeners}, - * {@link org.springframework.transaction.annotation.Transactional @Transactional}, - * etc. - * </p> - * <p> - * AbstractClinicTests and its subclasses benefit from the following services - * provided by the Spring TestContext Framework: - * </p> - * <ul> - * <li><strong>Spring IoC container caching</strong> which spares us - * unnecessary set up time between test execution.</li> - * <li><strong>Dependency Injection</strong> of test fixture instances, - * meaning that we don't need to perform application context lookups. See the - * use of {@link Autowired @Autowired} on the <code>petRepository</code> instance - * variable, which uses autowiring <em>by type</em>. As an alternative, we - * could annotate <code>petRepository</code> with - * {@link javax.annotation.Resource @Resource} to achieve dependency injection - * <em>by name</em>. - * <em>(see: {@link ContextConfiguration @ContextConfiguration}, - * {@link org.springframework.test.context.support.DependencyInjectionTestExecutionListener DependencyInjectionTestExecutionListener})</em></li> - * <li><strong>Transaction management</strong>, meaning each test method is - * executed in its own transaction, which is automatically rolled back by - * default. Thus, even if tests insert or otherwise change database state, there - * is no need for a teardown or cleanup script. - * <em>(see: {@link org.springframework.test.context.transaction.TransactionConfiguration @TransactionConfiguration}, - * {@link org.springframework.transaction.annotation.Transactional @Transactional}, - * {@link org.springframework.test.context.transaction.TransactionalTestExecutionListener TransactionalTestExecutionListener})</em></li> - * <li><strong>Useful inherited protected fields</strong>, such as a - * {@link org.springframework.jdbc.core.simple.SimpleJdbcTemplate SimpleJdbcTemplate} - * that can be used to verify database state after test operations or to verify - * the results of queries performed by application code. An - * {@link org.springframework.context.ApplicationContext ApplicationContext} is - * also inherited and can be used for explicit bean lookup if necessary. - * <em>(see: {@link org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests AbstractJUnit4SpringContextTests}, - * {@link AbstractTransactionalJUnit4SpringContextTests})</em></li> - * </ul> - * <p> - * The Spring TestContext Framework and related unit and integration testing - * support classes are shipped in <code>spring-test.jar</code>. - * </p> + * see javadoc inside {@link AbstractOwnerRepositoryTests} for more details * * @author Ken Krebs * @author Rod Johnson * @author Juergen Hoeller * @author Sam Brannen + * @author Michael Isvy */ public abstract class AbstractPetRepositoryTests { diff --git a/src/test/java/org/springframework/samples/petclinic/AbstractVetRepositoryTests.java b/src/test/java/org/springframework/samples/petclinic/AbstractVetRepositoryTests.java index 0269aa75c365fef05046c558c47de73c744f745c..be5f10b6b7fb55716e46723375cb382bf5e5009d 100644 --- a/src/test/java/org/springframework/samples/petclinic/AbstractVetRepositoryTests.java +++ b/src/test/java/org/springframework/samples/petclinic/AbstractVetRepositoryTests.java @@ -1,3 +1,18 @@ +/* + * Copyright 2002-2013 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 + * + * http://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.samples.petclinic; import static org.junit.Assert.assertEquals; @@ -7,80 +22,23 @@ import java.util.Collection; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.samples.petclinic.model.Vet; +import org.springframework.samples.petclinic.repository.OwnerRepository; import org.springframework.samples.petclinic.repository.VetRepository; -import org.springframework.samples.petclinic.service.ClinicService; import org.springframework.samples.petclinic.util.EntityUtils; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests; import org.springframework.transaction.annotation.Transactional; /** * <p> - * Base class for {@link ClinicService} integration tests. - * </p> - * <p> - * "AbstractClinicTests-context.xml" declares a common - * {@link javax.sql.DataSource DataSource}. Subclasses should specify - * additional context locations which declare a - * {@link org.springframework.transaction.PlatformTransactionManager PlatformTransactionManager} - * and a concrete implementation of {@link ClinicService}. + * Base class for {@link OwnerRepository} integration tests. * </p> * <p> - * This class extends {@link AbstractTransactionalJUnit4SpringContextTests}, - * one of the valuable testing support classes provided by the - * <em>Spring TestContext Framework</em> found in the - * <code>org.springframework.test.context</code> package. The - * annotation-driven configuration used here represents best practice for - * integration tests with Spring. Note, however, that - * AbstractTransactionalJUnit4SpringContextTests serves only as a convenience - * for extension. For example, if you do not wish for your test classes to be - * tied to a Spring-specific class hierarchy, you may configure your tests with - * annotations such as {@link ContextConfiguration @ContextConfiguration}, - * {@link org.springframework.test.context.TestExecutionListeners @TestExecutionListeners}, - * {@link org.springframework.transaction.annotation.Transactional @Transactional}, - * etc. - * </p> - * <p> - * AbstractClinicTests and its subclasses benefit from the following services - * provided by the Spring TestContext Framework: - * </p> - * <ul> - * <li><strong>Spring IoC container caching</strong> which spares us - * unnecessary set up time between test execution.</li> - * <li><strong>Dependency Injection</strong> of test fixture instances, - * meaning that we don't need to perform application context lookups. See the - * use of {@link Autowired @Autowired} on the <code>petRepository</code> instance - * variable, which uses autowiring <em>by type</em>. As an alternative, we - * could annotate <code>petRepository</code> with - * {@link javax.annotation.Resource @Resource} to achieve dependency injection - * <em>by name</em>. - * <em>(see: {@link ContextConfiguration @ContextConfiguration}, - * {@link org.springframework.test.context.support.DependencyInjectionTestExecutionListener DependencyInjectionTestExecutionListener})</em></li> - * <li><strong>Transaction management</strong>, meaning each test method is - * executed in its own transaction, which is automatically rolled back by - * default. Thus, even if tests insert or otherwise change database state, there - * is no need for a teardown or cleanup script. - * <em>(see: {@link org.springframework.test.context.transaction.TransactionConfiguration @TransactionConfiguration}, - * {@link org.springframework.transaction.annotation.Transactional @Transactional}, - * {@link org.springframework.test.context.transaction.TransactionalTestExecutionListener TransactionalTestExecutionListener})</em></li> - * <li><strong>Useful inherited protected fields</strong>, such as a - * {@link org.springframework.jdbc.core.simple.SimpleJdbcTemplate SimpleJdbcTemplate} - * that can be used to verify database state after test operations or to verify - * the results of queries performed by application code. An - * {@link org.springframework.context.ApplicationContext ApplicationContext} is - * also inherited and can be used for explicit bean lookup if necessary. - * <em>(see: {@link org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests AbstractJUnit4SpringContextTests}, - * {@link AbstractTransactionalJUnit4SpringContextTests})</em></li> - * </ul> - * <p> - * The Spring TestContext Framework and related unit and integration testing - * support classes are shipped in <code>spring-test.jar</code>. - * </p> + * see javadoc inside {@link AbstractVetRepositoryTests} for more details * * @author Ken Krebs * @author Rod Johnson * @author Juergen Hoeller * @author Sam Brannen + * @author Michael Isvy */ public abstract class AbstractVetRepositoryTests { diff --git a/src/test/java/org/springframework/samples/petclinic/AbstractVisitRepositoryTests.java b/src/test/java/org/springframework/samples/petclinic/AbstractVisitRepositoryTests.java index 1f769b8b69fdf277837f9b4eb0698e598820dfbc..e0d38767aa4d454672274becdd269b3d42896874 100644 --- a/src/test/java/org/springframework/samples/petclinic/AbstractVisitRepositoryTests.java +++ b/src/test/java/org/springframework/samples/petclinic/AbstractVisitRepositoryTests.java @@ -1,3 +1,18 @@ +/* + * Copyright 2002-2013 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 + * + * http://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.samples.petclinic; import static org.junit.Assert.assertEquals; @@ -6,80 +21,23 @@ import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.samples.petclinic.model.Pet; import org.springframework.samples.petclinic.model.Visit; +import org.springframework.samples.petclinic.repository.OwnerRepository; import org.springframework.samples.petclinic.repository.PetRepository; import org.springframework.samples.petclinic.repository.VisitRepository; -import org.springframework.samples.petclinic.service.ClinicService; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests; import org.springframework.transaction.annotation.Transactional; /** * <p> - * Base class for {@link ClinicService} integration tests. - * </p> - * <p> - * "AbstractClinicTests-context.xml" declares a common - * {@link javax.sql.DataSource DataSource}. Subclasses should specify - * additional context locations which declare a - * {@link org.springframework.transaction.PlatformTransactionManager PlatformTransactionManager} - * and a concrete implementation of {@link ClinicService}. + * Base class for {@link OwnerRepository} integration tests. * </p> * <p> - * This class extends {@link AbstractTransactionalJUnit4SpringContextTests}, - * one of the valuable testing support classes provided by the - * <em>Spring TestContext Framework</em> found in the - * <code>org.springframework.test.context</code> package. The - * annotation-driven configuration used here represents best practice for - * integration tests with Spring. Note, however, that - * AbstractTransactionalJUnit4SpringContextTests serves only as a convenience - * for extension. For example, if you do not wish for your test classes to be - * tied to a Spring-specific class hierarchy, you may configure your tests with - * annotations such as {@link ContextConfiguration @ContextConfiguration}, - * {@link org.springframework.test.context.TestExecutionListeners @TestExecutionListeners}, - * {@link org.springframework.transaction.annotation.Transactional @Transactional}, - * etc. - * </p> - * <p> - * AbstractClinicTests and its subclasses benefit from the following services - * provided by the Spring TestContext Framework: - * </p> - * <ul> - * <li><strong>Spring IoC container caching</strong> which spares us - * unnecessary set up time between test execution.</li> - * <li><strong>Dependency Injection</strong> of test fixture instances, - * meaning that we don't need to perform application context lookups. See the - * use of {@link Autowired @Autowired} on the <code>petRepository</code> instance - * variable, which uses autowiring <em>by type</em>. As an alternative, we - * could annotate <code>petRepository</code> with - * {@link javax.annotation.Resource @Resource} to achieve dependency injection - * <em>by name</em>. - * <em>(see: {@link ContextConfiguration @ContextConfiguration}, - * {@link org.springframework.test.context.support.DependencyInjectionTestExecutionListener DependencyInjectionTestExecutionListener})</em></li> - * <li><strong>Transaction management</strong>, meaning each test method is - * executed in its own transaction, which is automatically rolled back by - * default. Thus, even if tests insert or otherwise change database state, there - * is no need for a teardown or cleanup script. - * <em>(see: {@link org.springframework.test.context.transaction.TransactionConfiguration @TransactionConfiguration}, - * {@link org.springframework.transaction.annotation.Transactional @Transactional}, - * {@link org.springframework.test.context.transaction.TransactionalTestExecutionListener TransactionalTestExecutionListener})</em></li> - * <li><strong>Useful inherited protected fields</strong>, such as a - * {@link org.springframework.jdbc.core.simple.SimpleJdbcTemplate SimpleJdbcTemplate} - * that can be used to verify database state after test operations or to verify - * the results of queries performed by application code. An - * {@link org.springframework.context.ApplicationContext ApplicationContext} is - * also inherited and can be used for explicit bean lookup if necessary. - * <em>(see: {@link org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests AbstractJUnit4SpringContextTests}, - * {@link AbstractTransactionalJUnit4SpringContextTests})</em></li> - * </ul> - * <p> - * The Spring TestContext Framework and related unit and integration testing - * support classes are shipped in <code>spring-test.jar</code>. - * </p> + * see javadoc inside {@link AbstractVetRepositoryTests} for more details * * @author Ken Krebs * @author Rod Johnson * @author Juergen Hoeller * @author Sam Brannen + * @author Michael Isvy */ public abstract class AbstractVisitRepositoryTests { diff --git a/src/test/java/org/springframework/samples/petclinic/OwnerTests.java b/src/test/java/org/springframework/samples/petclinic/OwnerTests.java index c49c200b7e18395a1df51c655d38b674950535a9..0932be6fa26f91efb4c323118b5599f149ee6813 100644 --- a/src/test/java/org/springframework/samples/petclinic/OwnerTests.java +++ b/src/test/java/org/springframework/samples/petclinic/OwnerTests.java @@ -1,3 +1,18 @@ +/* + * Copyright 2002-2013 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 + * + * http://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.samples.petclinic; import static org.junit.Assert.assertEquals; diff --git a/src/test/java/org/springframework/samples/petclinic/jdbc/JdbcOwnerRepositoryImplTests.java b/src/test/java/org/springframework/samples/petclinic/jdbc/JdbcOwnerRepositoryImplTests.java index 453bf10f1ee324bccf65c8e22e484a2bcded863d..e222ce288939509b8cc55497b97b244cb3a8d7b4 100644 --- a/src/test/java/org/springframework/samples/petclinic/jdbc/JdbcOwnerRepositoryImplTests.java +++ b/src/test/java/org/springframework/samples/petclinic/jdbc/JdbcOwnerRepositoryImplTests.java @@ -1,3 +1,18 @@ +/* + * Copyright 2002-2013 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 + * + * http://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.samples.petclinic.jdbc; import org.junit.runner.RunWith;