[SPR-6184] additional sanity check tests analogous to those developed for [SPR-3896].

master
Sam Brannen 14 years ago
parent 22072b2414
commit 0584c26b2c
  1. 8
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/SpringJUnit4SuiteTests.java
  2. 7
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/annotation/AnnotationConfigTestSuite.java
  3. 45
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/annotation/BeanOverridingDefaultConfigClassesInheritedTests.java
  4. 43
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/annotation/BeanOverridingDefaultConfigClassesInheritedTestsConfig.java
  5. 45
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/annotation/BeanOverridingExplicitConfigClassesInheritedTests.java
  6. 6
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/annotation/DefaultConfigClassesBaseTests.java
  7. 4
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/annotation/DefaultConfigClassesBaseTestsConfig.java
  8. 6
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/annotation/DefaultConfigClassesInheritedTests.java
  9. 4
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/annotation/DefaultConfigClassesInheritedTestsConfig.java
  10. 53
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/annotation/ExplicitConfigClassesBaseTests.java
  11. 54
      org.springframework.test/src/test/java/org/springframework/test/context/junit4/annotation/ExplicitConfigClassesInheritedTests.java

@ -22,8 +22,8 @@ import org.junit.runners.Suite.SuiteClasses;
import org.springframework.test.context.ClassLevelDirtiesContextTests;
import org.springframework.test.context.SpringRunnerContextCacheTests;
import org.springframework.test.context.junit4.annotation.AnnotationConfigSpringJUnit4ClassRunnerAppCtxTests;
import org.springframework.test.context.junit4.annotation.DefaultConfigClassBaseTests;
import org.springframework.test.context.junit4.annotation.DefaultConfigClassInheritedTests;
import org.springframework.test.context.junit4.annotation.DefaultConfigClassesBaseTests;
import org.springframework.test.context.junit4.annotation.DefaultConfigClassesInheritedTests;
import org.springframework.test.context.junit4.orm.HibernateSessionFlushingTests;
/**
@ -52,8 +52,8 @@ StandardJUnit4FeaturesTests.class,//
StandardJUnit4FeaturesSpringRunnerTests.class,//
SpringJUnit47ClassRunnerRuleTests.class,//
AnnotationConfigSpringJUnit4ClassRunnerAppCtxTests.class,//
DefaultConfigClassBaseTests.class,//
DefaultConfigClassInheritedTests.class,//
DefaultConfigClassesBaseTests.class,//
DefaultConfigClassesInheritedTests.class,//
ExpectedExceptionSpringRunnerTests.class,//
TimedSpringRunnerTests.class,//
RepeatedSpringRunnerTests.class,//

@ -31,8 +31,11 @@ import org.junit.runners.Suite.SuiteClasses;
// Note: the following 'multi-line' layout is for enhanced code readability.
@SuiteClasses({//
AnnotationConfigSpringJUnit4ClassRunnerAppCtxTests.class,//
DefaultConfigClassBaseTests.class,//
DefaultConfigClassInheritedTests.class //
DefaultConfigClassesBaseTests.class,//
DefaultConfigClassesInheritedTests.class,//
BeanOverridingDefaultConfigClassesInheritedTests.class,//
BeanOverridingExplicitConfigClassesInheritedTests.class,//
ExplicitConfigClassesInheritedTests.class //
})
public class AnnotationConfigTestSuite {
}

@ -0,0 +1,45 @@
/*
* Copyright 2002-2011 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.test.context.junit4.annotation;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.junit.Test;
import org.springframework.test.context.ContextConfiguration;
/**
* Integration tests that verify support for configuration classes in
* the Spring TestContext Framework.
*
* <p>Configuration will be loaded from {@link DefaultConfigClassesBaseTestsConfig}
* and {@link BeanOverridingDefaultConfigClassesInheritedTestsConfig}.
*
* @author Sam Brannen
* @since 3.1
*/
@ContextConfiguration
public class BeanOverridingDefaultConfigClassesInheritedTests extends DefaultConfigClassesBaseTests {
@Test
@Override
public void verifyEmployeeSetFromBaseContextConfig() {
assertNotNull("The employee should have been autowired.", this.employee);
assertEquals("The employee bean should have been overridden.", "Yoda", this.employee.getName());
}
}

@ -0,0 +1,43 @@
/*
* Copyright 2002-2011 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.test.context.junit4.annotation;
import org.springframework.beans.Employee;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* ApplicationContext configuration class for
* {@link BeanOverridingDefaultConfigClassesInheritedTests} and
* {@link BeanOverridingExplicitConfigClassesInheritedTests}.
*
* @author Sam Brannen
* @since 3.1
*/
@Configuration
public class BeanOverridingDefaultConfigClassesInheritedTestsConfig {
@Bean
public Employee employee() {
Employee employee = new Employee();
employee.setName("Yoda");
employee.setAge(900);
employee.setCompany("The Force");
return employee;
}
}

@ -0,0 +1,45 @@
/*
* Copyright 2002-2011 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.test.context.junit4.annotation;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.junit.Test;
import org.springframework.test.context.ContextConfiguration;
/**
* Integration tests that verify support for configuration classes in
* the Spring TestContext Framework.
*
* <p>Configuration will be loaded from {@link DefaultConfigClassesBaseTestsConfig}
* and {@link BeanOverridingDefaultConfigClassesInheritedTestsConfig}.
*
* @author Sam Brannen
* @since 3.1
*/
@ContextConfiguration(classes = BeanOverridingDefaultConfigClassesInheritedTestsConfig.class)
public class BeanOverridingExplicitConfigClassesInheritedTests extends ExplicitConfigClassesBaseTests {
@Test
@Override
public void verifyEmployeeSetFromBaseContextConfig() {
assertNotNull("The employee should have been autowired.", this.employee);
assertEquals("The employee bean should have been overridden.", "Yoda", this.employee.getName());
}
}

@ -31,17 +31,17 @@ import org.springframework.test.context.support.AnnotationConfigContextLoader;
* Integration tests that verify support for configuration classes in
* the Spring TestContext Framework.
*
* <p>Configuration will be loaded from {@link DefaultConfigClassBaseTestsConfig}.
* <p>Configuration will be loaded from {@link DefaultConfigClassesBaseTestsConfig}.
*
* @author Sam Brannen
* @since 3.1
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(loader = AnnotationConfigContextLoader.class)
public class DefaultConfigClassBaseTests {
public class DefaultConfigClassesBaseTests {
@Autowired
private Employee employee;
protected Employee employee;
@Test

@ -21,13 +21,13 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* ApplicationContext configuration class for {@link DefaultConfigClassBaseTests}.
* ApplicationContext configuration class for {@link DefaultConfigClassesBaseTests}.
*
* @author Sam Brannen
* @since 3.1
*/
@Configuration
public class DefaultConfigClassBaseTestsConfig {
public class DefaultConfigClassesBaseTestsConfig {
@Bean
public Employee employee() {

@ -28,14 +28,14 @@ import org.springframework.test.context.ContextConfiguration;
* Integration tests that verify support for configuration classes in
* the Spring TestContext Framework.
*
* <p>Configuration will be loaded from {@link DefaultConfigClassBaseTestsConfig}
* and {@link DefaultConfigClassInheritedTestsConfig}.
* <p>Configuration will be loaded from {@link DefaultConfigClassesBaseTestsConfig}
* and {@link DefaultConfigClassesInheritedTestsConfig}.
*
* @author Sam Brannen
* @since 3.1
*/
@ContextConfiguration
public class DefaultConfigClassInheritedTests extends DefaultConfigClassBaseTests {
public class DefaultConfigClassesInheritedTests extends DefaultConfigClassesBaseTests {
@Autowired
private Pet pet;

@ -21,13 +21,13 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* ApplicationContext configuration class for {@link DefaultConfigClassInheritedTests}.
* ApplicationContext configuration class for {@link DefaultConfigClassesInheritedTests}.
*
* @author Sam Brannen
* @since 3.1
*/
@Configuration
public class DefaultConfigClassInheritedTestsConfig {
public class DefaultConfigClassesInheritedTestsConfig {
@Bean
public Pet pet() {

@ -0,0 +1,53 @@
/*
* Copyright 2002-2011 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.test.context.junit4.annotation;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.Employee;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.support.AnnotationConfigContextLoader;
/**
* Integration tests that verify support for configuration classes in
* the Spring TestContext Framework.
*
* <p>Configuration will be loaded from {@link DefaultConfigClassesBaseTestsConfig}.
*
* @author Sam Brannen
* @since 3.1
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(loader = AnnotationConfigContextLoader.class, classes = DefaultConfigClassesBaseTestsConfig.class)
public class ExplicitConfigClassesBaseTests {
@Autowired
protected Employee employee;
@Test
public void verifyEmployeeSetFromBaseContextConfig() {
assertNotNull("The employee should have been autowired.", this.employee);
assertEquals("John Smith", this.employee.getName());
}
}

@ -0,0 +1,54 @@
/*
* Copyright 2002-2011 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.test.context.junit4.annotation;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.Pet;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.support.AnnotationConfigContextLoader;
/**
* Integration tests that verify support for configuration classes in
* the Spring TestContext Framework.
*
* <p>Configuration will be loaded from {@link DefaultConfigClassesBaseTestsConfig}
* and {@link DefaultConfigClassesInheritedTestsConfig}
*
* @author Sam Brannen
* @since 3.1
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(loader = AnnotationConfigContextLoader.class, classes = DefaultConfigClassesInheritedTestsConfig.class)
public class ExplicitConfigClassesInheritedTests extends ExplicitConfigClassesBaseTests {
@Autowired
private Pet pet;
@Test
public void verifyPetSetFromExtendedContextConfig() {
assertNotNull("The pet should have been autowired.", this.pet);
assertEquals("Fido", this.pet.getName());
}
}
Loading…
Cancel
Save