attempted to repro SPR-7318 to no avail

master
Chris Beams 14 years ago
parent 3f31a1cf75
commit cd271fca43
  1. 8
      org.springframework.beans/src/test/java/org/springframework/beans/factory/FactoryBeanLookupTests-context.xml
  2. 72
      org.springframework.beans/src/test/java/org/springframework/beans/factory/FactoryBeanLookupTests.java
  3. 3
      org.springframework.context/.springBeans

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="fooFactory" class="org.springframework.beans.factory.FooFactoryBean"/>
</beans>

@ -0,0 +1,72 @@
package org.springframework.beans.factory;
import static org.hamcrest.CoreMatchers.instanceOf;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertThat;
import org.junit.Before;
import org.junit.Test;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.config.AbstractFactoryBean;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;
/**
* Written with the intention of reproducing SPR-7318.
*
* @author Chris Beams
*/
public class FactoryBeanLookupTests {
private BeanFactory beanFactory;
@Before
public void setUp() {
beanFactory = new XmlBeanFactory(
new ClassPathResource("FactoryBeanLookupTests-context.xml", this.getClass()));
}
@Test
public void factoryBeanLookupByNameDereferencing() {
Object fooFactory = beanFactory.getBean("&fooFactory");
assertThat(fooFactory, instanceOf(FooFactoryBean.class));
}
@Test
public void factoryBeanLookupByType() {
FooFactoryBean fooFactory = beanFactory.getBean(FooFactoryBean.class);
assertNotNull(fooFactory);
}
@Test
public void factoryBeanLookupByTypeAndNameDereference() {
FooFactoryBean fooFactory = beanFactory.getBean("&fooFactory", FooFactoryBean.class);
assertNotNull(fooFactory);
}
@Test
public void factoryBeanObjectLookupByName() {
Object fooFactory = beanFactory.getBean("fooFactory");
assertThat(fooFactory, instanceOf(Foo.class));
}
@Test
public void factoryBeanObjectLookupByNameAndType() {
Foo foo = beanFactory.getBean("fooFactory", Foo.class);
assertNotNull(foo);
}
}
class FooFactoryBean extends AbstractFactoryBean<Foo> {
@Override
protected Foo createInstance() throws Exception {
return new Foo();
}
@Override
public Class<?> getObjectType() {
return Foo.class;
}
}
class Foo { }

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<beansProjectDescription>
<version>1</version>
<pluginVersion><![CDATA[2.3.0.200912170948-RELEASE]]></pluginVersion>
<pluginVersion><![CDATA[2.3.3.201004202100-CI-R3763-B716]]></pluginVersion>
<configSuffixes>
<configSuffix><![CDATA[xml]]></configSuffix>
</configSuffixes>
@ -11,6 +11,7 @@
<config>src/test/java/org/springframework/context/annotation/configuration/SecondLevelSubConfig-context.xml</config>
<config>src/test/java/org/springframework/context/annotation/configuration/ImportXmlWithAopNamespace-context.xml</config>
<config>src/test/java/org/springframework/context/annotation/Spr6602Tests-context.xml</config>
<config>src/test/java/org/springframework/beans/factory/FactoryBeanLookupTests-context.xml</config>
</configs>
<configSets>
</configSets>

Loading…
Cancel
Save