moving unit tests from .testsuite -> .beans

This commit is contained in:
Chris Beams 2008-12-15 04:10:27 +00:00
parent afa4231751
commit b44d647dad
4 changed files with 109 additions and 65 deletions

View File

@ -16,22 +16,25 @@
package org.springframework.beans.factory.serviceloader; package org.springframework.beans.factory.serviceloader;
import static org.junit.Assert.assertTrue;
import java.util.List; import java.util.List;
import java.util.ServiceLoader; import java.util.ServiceLoader;
import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilderFactory;
import junit.framework.TestCase; import org.junit.Test;
import org.springframework.beans.factory.support.DefaultListableBeanFactory; import org.springframework.beans.factory.support.DefaultListableBeanFactory;
import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.beans.factory.support.RootBeanDefinition;
import org.springframework.core.JdkVersion; import org.springframework.core.JdkVersion;
/** /**
* @author Juergen Hoeller * @author Juergen Hoeller
* @author Chris Beams
*/ */
public class ServiceLoaderTests extends TestCase { public class ServiceLoaderTests {
@Test
public void testServiceLoaderFactoryBean() { public void testServiceLoaderFactoryBean() {
if (JdkVersion.getMajorJavaVersion() < JdkVersion.JAVA_16 || if (JdkVersion.getMajorJavaVersion() < JdkVersion.JAVA_16 ||
!ServiceLoader.load(DocumentBuilderFactory.class).iterator().hasNext()){ !ServiceLoader.load(DocumentBuilderFactory.class).iterator().hasNext()){
@ -42,10 +45,11 @@ public class ServiceLoaderTests extends TestCase {
RootBeanDefinition bd = new RootBeanDefinition(ServiceLoaderFactoryBean.class); RootBeanDefinition bd = new RootBeanDefinition(ServiceLoaderFactoryBean.class);
bd.getPropertyValues().addPropertyValue("serviceType", DocumentBuilderFactory.class.getName()); bd.getPropertyValues().addPropertyValue("serviceType", DocumentBuilderFactory.class.getName());
bf.registerBeanDefinition("service", bd); bf.registerBeanDefinition("service", bd);
ServiceLoader serviceLoader = (ServiceLoader) bf.getBean("service"); ServiceLoader<?> serviceLoader = (ServiceLoader<?>) bf.getBean("service");
assertTrue(serviceLoader.iterator().next() instanceof DocumentBuilderFactory); assertTrue(serviceLoader.iterator().next() instanceof DocumentBuilderFactory);
} }
@Test
public void testServiceFactoryBean() { public void testServiceFactoryBean() {
if (JdkVersion.getMajorJavaVersion() < JdkVersion.JAVA_16 || if (JdkVersion.getMajorJavaVersion() < JdkVersion.JAVA_16 ||
!ServiceLoader.load(DocumentBuilderFactory.class).iterator().hasNext()){ !ServiceLoader.load(DocumentBuilderFactory.class).iterator().hasNext()){
@ -59,6 +63,7 @@ public class ServiceLoaderTests extends TestCase {
assertTrue(bf.getBean("service") instanceof DocumentBuilderFactory); assertTrue(bf.getBean("service") instanceof DocumentBuilderFactory);
} }
@Test
public void testServiceListFactoryBean() { public void testServiceListFactoryBean() {
if (JdkVersion.getMajorJavaVersion() < JdkVersion.JAVA_16 || if (JdkVersion.getMajorJavaVersion() < JdkVersion.JAVA_16 ||
!ServiceLoader.load(DocumentBuilderFactory.class).iterator().hasNext()){ !ServiceLoader.load(DocumentBuilderFactory.class).iterator().hasNext()){
@ -69,7 +74,7 @@ public class ServiceLoaderTests extends TestCase {
RootBeanDefinition bd = new RootBeanDefinition(ServiceListFactoryBean.class); RootBeanDefinition bd = new RootBeanDefinition(ServiceListFactoryBean.class);
bd.getPropertyValues().addPropertyValue("serviceType", DocumentBuilderFactory.class.getName()); bd.getPropertyValues().addPropertyValue("serviceType", DocumentBuilderFactory.class.getName());
bf.registerBeanDefinition("service", bd); bf.registerBeanDefinition("service", bd);
List serviceList = (List) bf.getBean("service"); List<?> serviceList = (List<?>) bf.getBean("service");
assertTrue(serviceList.get(0) instanceof DocumentBuilderFactory); assertTrue(serviceList.get(0) instanceof DocumentBuilderFactory);
} }

View File

@ -16,9 +16,12 @@
package org.springframework.beans.factory.support; package org.springframework.beans.factory.support;
import static org.junit.Assert.*;
import java.net.MalformedURLException; import java.net.MalformedURLException;
import java.net.URI; import java.net.URI;
import java.net.URL; import java.net.URL;
import java.util.AbstractCollection;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
@ -27,8 +30,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import junit.framework.TestCase; import org.junit.Test;
import org.springframework.beans.GenericBean; import org.springframework.beans.GenericBean;
import org.springframework.beans.GenericIntegerBean; import org.springframework.beans.GenericIntegerBean;
import org.springframework.beans.GenericSetOfIntegerBean; import org.springframework.beans.GenericSetOfIntegerBean;
@ -41,42 +43,46 @@ import org.springframework.core.io.UrlResource;
/** /**
* @author Juergen Hoeller * @author Juergen Hoeller
* @author Chris Beams
* @since 20.01.2006 * @since 20.01.2006
*/ */
public class BeanFactoryGenericsTests extends TestCase { public class BeanFactoryGenericsTests {
@Test
public void testGenericSetProperty() { public void testGenericSetProperty() {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Set input = new HashSet(); Set<String> input = new HashSet<String>();
input.add("4"); input.add("4");
input.add("5"); input.add("5");
rbd.getPropertyValues().addPropertyValue("integerSet", input); rbd.getPropertyValues().addPropertyValue("integerSet", input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getIntegerSet().contains(new Integer(4))); assertTrue(gb.getIntegerSet().contains(new Integer(4)));
assertTrue(gb.getIntegerSet().contains(new Integer(5))); assertTrue(gb.getIntegerSet().contains(new Integer(5)));
} }
@Test
public void testGenericListProperty() throws MalformedURLException { public void testGenericListProperty() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
List input = new ArrayList(); List<String> input = new ArrayList<String>();
input.add("http://localhost:8080"); input.add("http://localhost:8080");
input.add("http://localhost:9090"); input.add("http://localhost:9090");
rbd.getPropertyValues().addPropertyValue("resourceList", input); rbd.getPropertyValues().addPropertyValue("resourceList", input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertEquals(new UrlResource("http://localhost:8080"), gb.getResourceList().get(0)); assertEquals(new UrlResource("http://localhost:8080"), gb.getResourceList().get(0));
assertEquals(new UrlResource("http://localhost:9090"), gb.getResourceList().get(1)); assertEquals(new UrlResource("http://localhost:9090"), gb.getResourceList().get(1));
} }
@Test
public void testGenericListPropertyWithAutowiring() throws MalformedURLException { public void testGenericListPropertyWithAutowiring() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
bf.registerSingleton("resource1", new UrlResource("http://localhost:8080")); bf.registerSingleton("resource1", new UrlResource("http://localhost:8080"));
@ -90,35 +96,38 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new UrlResource("http://localhost:9090"), gb.getResourceList().get(1)); assertEquals(new UrlResource("http://localhost:9090"), gb.getResourceList().get(1));
} }
@Test
public void testGenericListPropertyWithOptionalAutowiring() throws MalformedURLException { public void testGenericListPropertyWithOptionalAutowiring() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class, RootBeanDefinition.AUTOWIRE_BY_TYPE); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class, RootBeanDefinition.AUTOWIRE_BY_TYPE);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertNull(gb.getResourceList()); assertNull(gb.getResourceList());
} }
@Test
public void testGenericMapProperty() { public void testGenericMapProperty() {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Map input = new HashMap(); Map<String, String> input = new HashMap<String, String>();
input.put("4", "5"); input.put("4", "5");
input.put("6", "7"); input.put("6", "7");
rbd.getPropertyValues().addPropertyValue("shortMap", input); rbd.getPropertyValues().addPropertyValue("shortMap", input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertEquals(new Integer(5), gb.getShortMap().get(new Short("4"))); assertEquals(new Integer(5), gb.getShortMap().get(new Short("4")));
assertEquals(new Integer(7), gb.getShortMap().get(new Short("6"))); assertEquals(new Integer(7), gb.getShortMap().get(new Short("6")));
} }
@Test
public void testGenericListOfArraysProperty() throws MalformedURLException { public void testGenericListOfArraysProperty() throws MalformedURLException {
XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass())); XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass()));
GenericBean<?> gb = (GenericBean) bf.getBean("listOfArrays"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("listOfArrays");
assertEquals(1, gb.getListOfArrays().size()); assertEquals(1, gb.getListOfArrays().size());
String[] array = gb.getListOfArrays().get(0); String[] array = gb.getListOfArrays().get(0);
@ -128,22 +137,24 @@ public class BeanFactoryGenericsTests extends TestCase {
} }
@Test
public void testGenericSetConstructor() { public void testGenericSetConstructor() {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Set input = new HashSet(); Set<String> input = new HashSet<String>();
input.add("4"); input.add("4");
input.add("5"); input.add("5");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getIntegerSet().contains(new Integer(4))); assertTrue(gb.getIntegerSet().contains(new Integer(4)));
assertTrue(gb.getIntegerSet().contains(new Integer(5))); assertTrue(gb.getIntegerSet().contains(new Integer(5)));
} }
@Test
public void testGenericSetConstructorWithAutowiring() { public void testGenericSetConstructorWithAutowiring() {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
bf.registerSingleton("integer1", new Integer(4)); bf.registerSingleton("integer1", new Integer(4));
@ -151,37 +162,39 @@ public class BeanFactoryGenericsTests extends TestCase {
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class, RootBeanDefinition.AUTOWIRE_CONSTRUCTOR); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class, RootBeanDefinition.AUTOWIRE_CONSTRUCTOR);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getIntegerSet().contains(new Integer(4))); assertTrue(gb.getIntegerSet().contains(new Integer(4)));
assertTrue(gb.getIntegerSet().contains(new Integer(5))); assertTrue(gb.getIntegerSet().contains(new Integer(5)));
} }
@Test
public void testGenericSetConstructorWithOptionalAutowiring() { public void testGenericSetConstructorWithOptionalAutowiring() {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class, RootBeanDefinition.AUTOWIRE_CONSTRUCTOR); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class, RootBeanDefinition.AUTOWIRE_CONSTRUCTOR);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertNull(gb.getIntegerSet()); assertNull(gb.getIntegerSet());
} }
@Test
public void testGenericSetListConstructor() throws MalformedURLException { public void testGenericSetListConstructor() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Set input = new HashSet(); Set<String> input = new HashSet<String>();
input.add("4"); input.add("4");
input.add("5"); input.add("5");
List input2 = new ArrayList(); List<String> input2 = new ArrayList<String>();
input2.add("http://localhost:8080"); input2.add("http://localhost:8080");
input2.add("http://localhost:9090"); input2.add("http://localhost:9090");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
rbd.getConstructorArgumentValues().addGenericArgumentValue(input2); rbd.getConstructorArgumentValues().addGenericArgumentValue(input2);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getIntegerSet().contains(new Integer(4))); assertTrue(gb.getIntegerSet().contains(new Integer(4)));
assertTrue(gb.getIntegerSet().contains(new Integer(5))); assertTrue(gb.getIntegerSet().contains(new Integer(5)));
@ -189,6 +202,7 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new UrlResource("http://localhost:9090"), gb.getResourceList().get(1)); assertEquals(new UrlResource("http://localhost:9090"), gb.getResourceList().get(1));
} }
@Test
public void testGenericSetListConstructorWithAutowiring() throws MalformedURLException { public void testGenericSetListConstructorWithAutowiring() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
bf.registerSingleton("integer1", new Integer(4)); bf.registerSingleton("integer1", new Integer(4));
@ -198,7 +212,7 @@ public class BeanFactoryGenericsTests extends TestCase {
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class, RootBeanDefinition.AUTOWIRE_CONSTRUCTOR); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class, RootBeanDefinition.AUTOWIRE_CONSTRUCTOR);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getIntegerSet().contains(new Integer(4))); assertTrue(gb.getIntegerSet().contains(new Integer(4)));
assertTrue(gb.getIntegerSet().contains(new Integer(5))); assertTrue(gb.getIntegerSet().contains(new Integer(5)));
@ -206,6 +220,7 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new UrlResource("http://localhost:9090"), gb.getResourceList().get(1)); assertEquals(new UrlResource("http://localhost:9090"), gb.getResourceList().get(1));
} }
@Test
public void testGenericSetListConstructorWithOptionalAutowiring() throws MalformedURLException { public void testGenericSetListConstructorWithOptionalAutowiring() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
bf.registerSingleton("resource1", new UrlResource("http://localhost:8080")); bf.registerSingleton("resource1", new UrlResource("http://localhost:8080"));
@ -213,27 +228,28 @@ public class BeanFactoryGenericsTests extends TestCase {
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class, RootBeanDefinition.AUTOWIRE_CONSTRUCTOR); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class, RootBeanDefinition.AUTOWIRE_CONSTRUCTOR);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertNull(gb.getIntegerSet()); assertNull(gb.getIntegerSet());
assertNull(gb.getResourceList()); assertNull(gb.getResourceList());
} }
@Test
public void testGenericSetMapConstructor() throws MalformedURLException { public void testGenericSetMapConstructor() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Set input = new HashSet(); Set<String> input = new HashSet<String>();
input.add("4"); input.add("4");
input.add("5"); input.add("5");
Map input2 = new HashMap(); Map<String, String> input2 = new HashMap<String, String>();
input2.put("4", "5"); input2.put("4", "5");
input2.put("6", "7"); input2.put("6", "7");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
rbd.getConstructorArgumentValues().addGenericArgumentValue(input2); rbd.getConstructorArgumentValues().addGenericArgumentValue(input2);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getIntegerSet().contains(new Integer(4))); assertTrue(gb.getIntegerSet().contains(new Integer(4)));
assertTrue(gb.getIntegerSet().contains(new Integer(5))); assertTrue(gb.getIntegerSet().contains(new Integer(5)));
@ -241,39 +257,41 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new Integer(7), gb.getShortMap().get(new Short("6"))); assertEquals(new Integer(7), gb.getShortMap().get(new Short("6")));
} }
@Test
public void testGenericMapResourceConstructor() throws MalformedURLException { public void testGenericMapResourceConstructor() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Map input = new HashMap(); Map<String, String> input = new HashMap<String, String>();
input.put("4", "5"); input.put("4", "5");
input.put("6", "7"); input.put("6", "7");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
rbd.getConstructorArgumentValues().addGenericArgumentValue("http://localhost:8080"); rbd.getConstructorArgumentValues().addGenericArgumentValue("http://localhost:8080");
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertEquals(new Integer(5), gb.getShortMap().get(new Short("4"))); assertEquals(new Integer(5), gb.getShortMap().get(new Short("4")));
assertEquals(new Integer(7), gb.getShortMap().get(new Short("6"))); assertEquals(new Integer(7), gb.getShortMap().get(new Short("6")));
assertEquals(new UrlResource("http://localhost:8080"), gb.getResourceList().get(0)); assertEquals(new UrlResource("http://localhost:8080"), gb.getResourceList().get(0));
} }
@Test
public void testGenericMapMapConstructor() throws MalformedURLException { public void testGenericMapMapConstructor() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Map input = new HashMap(); Map<String, String> input = new HashMap<String, String>();
input.put("1", "0"); input.put("1", "0");
input.put("2", "3"); input.put("2", "3");
Map input2 = new HashMap(); Map<String, String> input2 = new HashMap<String, String>();
input2.put("4", "5"); input2.put("4", "5");
input2.put("6", "7"); input2.put("6", "7");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
rbd.getConstructorArgumentValues().addGenericArgumentValue(input2); rbd.getConstructorArgumentValues().addGenericArgumentValue(input2);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertNotSame(gb.getPlainMap(), gb.getShortMap()); assertNotSame(gb.getPlainMap(), gb.getShortMap());
assertEquals(2, gb.getPlainMap().size()); assertEquals(2, gb.getPlainMap().size());
@ -284,18 +302,19 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new Integer(7), gb.getShortMap().get(new Short("6"))); assertEquals(new Integer(7), gb.getShortMap().get(new Short("6")));
} }
@Test
public void testGenericMapMapConstructorWithSameRefAndConversion() throws MalformedURLException { public void testGenericMapMapConstructorWithSameRefAndConversion() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Map input = new HashMap(); Map<String, String> input = new HashMap<String, String>();
input.put("1", "0"); input.put("1", "0");
input.put("2", "3"); input.put("2", "3");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertNotSame(gb.getPlainMap(), gb.getShortMap()); assertNotSame(gb.getPlainMap(), gb.getShortMap());
assertEquals(2, gb.getPlainMap().size()); assertEquals(2, gb.getPlainMap().size());
@ -306,18 +325,19 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new Integer(3), gb.getShortMap().get(new Short("2"))); assertEquals(new Integer(3), gb.getShortMap().get(new Short("2")));
} }
@Test
public void testGenericMapMapConstructorWithSameRefAndNoConversion() throws MalformedURLException { public void testGenericMapMapConstructorWithSameRefAndNoConversion() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Map input = new HashMap(); Map<Short, Integer> input = new HashMap<Short, Integer>();
input.put(new Short((short) 1), new Integer(0)); input.put(new Short((short) 1), new Integer(0));
input.put(new Short((short) 2), new Integer(3)); input.put(new Short((short) 2), new Integer(3));
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertSame(gb.getPlainMap(), gb.getShortMap()); assertSame(gb.getPlainMap(), gb.getShortMap());
assertEquals(2, gb.getShortMap().size()); assertEquals(2, gb.getShortMap().size());
@ -325,22 +345,24 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new Integer(3), gb.getShortMap().get(new Short("2"))); assertEquals(new Integer(3), gb.getShortMap().get(new Short("2")));
} }
@Test
public void testGenericMapWithKeyTypeConstructor() throws MalformedURLException { public void testGenericMapWithKeyTypeConstructor() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Map input = new HashMap(); Map<String, String> input = new HashMap<String, String>();
input.put("4", "5"); input.put("4", "5");
input.put("6", "7"); input.put("6", "7");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertEquals("5", gb.getLongMap().get(new Long("4"))); assertEquals("5", gb.getLongMap().get(new Long("4")));
assertEquals("7", gb.getLongMap().get(new Long("6"))); assertEquals("7", gb.getLongMap().get(new Long("6")));
} }
@Test
public void testGenericMapWithCollectionValueConstructor() throws MalformedURLException { public void testGenericMapWithCollectionValueConstructor() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
bf.addPropertyEditorRegistrar(new PropertyEditorRegistrar() { bf.addPropertyEditorRegistrar(new PropertyEditorRegistrar() {
@ -350,57 +372,59 @@ public class BeanFactoryGenericsTests extends TestCase {
}); });
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
Map input = new HashMap(); Map<String, AbstractCollection<?>> input = new HashMap<String, AbstractCollection<?>>();
HashSet value1 = new HashSet(); HashSet<Integer> value1 = new HashSet<Integer>();
value1.add(new Integer(1)); value1.add(new Integer(1));
input.put("1", value1); input.put("1", value1);
ArrayList value2 = new ArrayList(); ArrayList<Boolean> value2 = new ArrayList<Boolean>();
value2.add(Boolean.TRUE); value2.add(Boolean.TRUE);
input.put("2", value2); input.put("2", value2);
rbd.getConstructorArgumentValues().addGenericArgumentValue(Boolean.TRUE); rbd.getConstructorArgumentValues().addGenericArgumentValue(Boolean.TRUE);
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getCollectionMap().get(new Integer(1)) instanceof HashSet); assertTrue(gb.getCollectionMap().get(new Integer(1)) instanceof HashSet);
assertTrue(gb.getCollectionMap().get(new Integer(2)) instanceof ArrayList); assertTrue(gb.getCollectionMap().get(new Integer(2)) instanceof ArrayList);
} }
@Test
public void testGenericSetFactoryMethod() { public void testGenericSetFactoryMethod() {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
rbd.setFactoryMethodName("createInstance"); rbd.setFactoryMethodName("createInstance");
Set input = new HashSet(); Set<String> input = new HashSet<String>();
input.add("4"); input.add("4");
input.add("5"); input.add("5");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getIntegerSet().contains(new Integer(4))); assertTrue(gb.getIntegerSet().contains(new Integer(4)));
assertTrue(gb.getIntegerSet().contains(new Integer(5))); assertTrue(gb.getIntegerSet().contains(new Integer(5)));
} }
@Test
public void testGenericSetListFactoryMethod() throws MalformedURLException { public void testGenericSetListFactoryMethod() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
rbd.setFactoryMethodName("createInstance"); rbd.setFactoryMethodName("createInstance");
Set input = new HashSet(); Set<String> input = new HashSet<String>();
input.add("4"); input.add("4");
input.add("5"); input.add("5");
List input2 = new ArrayList(); List<String> input2 = new ArrayList<String>();
input2.add("http://localhost:8080"); input2.add("http://localhost:8080");
input2.add("http://localhost:9090"); input2.add("http://localhost:9090");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
rbd.getConstructorArgumentValues().addGenericArgumentValue(input2); rbd.getConstructorArgumentValues().addGenericArgumentValue(input2);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getIntegerSet().contains(new Integer(4))); assertTrue(gb.getIntegerSet().contains(new Integer(4)));
assertTrue(gb.getIntegerSet().contains(new Integer(5))); assertTrue(gb.getIntegerSet().contains(new Integer(5)));
@ -408,22 +432,23 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new UrlResource("http://localhost:9090"), gb.getResourceList().get(1)); assertEquals(new UrlResource("http://localhost:9090"), gb.getResourceList().get(1));
} }
@Test
public void testGenericSetMapFactoryMethod() throws MalformedURLException { public void testGenericSetMapFactoryMethod() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
rbd.setFactoryMethodName("createInstance"); rbd.setFactoryMethodName("createInstance");
Set input = new HashSet(); Set<String> input = new HashSet<String>();
input.add("4"); input.add("4");
input.add("5"); input.add("5");
Map input2 = new HashMap(); Map<String, String> input2 = new HashMap<String, String>();
input2.put("4", "5"); input2.put("4", "5");
input2.put("6", "7"); input2.put("6", "7");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
rbd.getConstructorArgumentValues().addGenericArgumentValue(input2); rbd.getConstructorArgumentValues().addGenericArgumentValue(input2);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getIntegerSet().contains(new Integer(4))); assertTrue(gb.getIntegerSet().contains(new Integer(4)));
assertTrue(gb.getIntegerSet().contains(new Integer(5))); assertTrue(gb.getIntegerSet().contains(new Integer(5)));
@ -431,41 +456,43 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new Integer(7), gb.getShortMap().get(new Short("6"))); assertEquals(new Integer(7), gb.getShortMap().get(new Short("6")));
} }
@Test
public void testGenericMapResourceFactoryMethod() throws MalformedURLException { public void testGenericMapResourceFactoryMethod() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
rbd.setFactoryMethodName("createInstance"); rbd.setFactoryMethodName("createInstance");
Map input = new HashMap(); Map<String, String> input = new HashMap<String, String>();
input.put("4", "5"); input.put("4", "5");
input.put("6", "7"); input.put("6", "7");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
rbd.getConstructorArgumentValues().addGenericArgumentValue("http://localhost:8080"); rbd.getConstructorArgumentValues().addGenericArgumentValue("http://localhost:8080");
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertEquals(new Integer(5), gb.getShortMap().get(new Short("4"))); assertEquals(new Integer(5), gb.getShortMap().get(new Short("4")));
assertEquals(new Integer(7), gb.getShortMap().get(new Short("6"))); assertEquals(new Integer(7), gb.getShortMap().get(new Short("6")));
assertEquals(new UrlResource("http://localhost:8080"), gb.getResourceList().get(0)); assertEquals(new UrlResource("http://localhost:8080"), gb.getResourceList().get(0));
} }
@Test
public void testGenericMapMapFactoryMethod() throws MalformedURLException { public void testGenericMapMapFactoryMethod() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
rbd.setFactoryMethodName("createInstance"); rbd.setFactoryMethodName("createInstance");
Map input = new HashMap(); Map<String, String> input = new HashMap<String, String>();
input.put("1", "0"); input.put("1", "0");
input.put("2", "3"); input.put("2", "3");
Map input2 = new HashMap(); Map<String, String> input2 = new HashMap<String, String>();
input2.put("4", "5"); input2.put("4", "5");
input2.put("6", "7"); input2.put("6", "7");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
rbd.getConstructorArgumentValues().addGenericArgumentValue(input2); rbd.getConstructorArgumentValues().addGenericArgumentValue(input2);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertEquals("0", gb.getPlainMap().get("1")); assertEquals("0", gb.getPlainMap().get("1"));
assertEquals("3", gb.getPlainMap().get("2")); assertEquals("3", gb.getPlainMap().get("2"));
@ -473,23 +500,25 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new Integer(7), gb.getShortMap().get(new Short("6"))); assertEquals(new Integer(7), gb.getShortMap().get(new Short("6")));
} }
@Test
public void testGenericMapWithKeyTypeFactoryMethod() throws MalformedURLException { public void testGenericMapWithKeyTypeFactoryMethod() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
rbd.setFactoryMethodName("createInstance"); rbd.setFactoryMethodName("createInstance");
Map input = new HashMap(); Map<String, String> input = new HashMap<String, String>();
input.put("4", "5"); input.put("4", "5");
input.put("6", "7"); input.put("6", "7");
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertEquals("5", gb.getLongMap().get(new Long("4"))); assertEquals("5", gb.getLongMap().get(new Long("4")));
assertEquals("7", gb.getLongMap().get(new Long("6"))); assertEquals("7", gb.getLongMap().get(new Long("6")));
} }
@Test
public void testGenericMapWithCollectionValueFactoryMethod() throws MalformedURLException { public void testGenericMapWithCollectionValueFactoryMethod() throws MalformedURLException {
DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
bf.addPropertyEditorRegistrar(new PropertyEditorRegistrar() { bf.addPropertyEditorRegistrar(new PropertyEditorRegistrar() {
@ -500,45 +529,49 @@ public class BeanFactoryGenericsTests extends TestCase {
RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class);
rbd.setFactoryMethodName("createInstance"); rbd.setFactoryMethodName("createInstance");
Map input = new HashMap(); Map<String, AbstractCollection<?>> input = new HashMap<String, AbstractCollection<?>>();
HashSet value1 = new HashSet(); HashSet<Integer> value1 = new HashSet<Integer>();
value1.add(new Integer(1)); value1.add(new Integer(1));
input.put("1", value1); input.put("1", value1);
ArrayList value2 = new ArrayList(); ArrayList<Boolean> value2 = new ArrayList<Boolean>();
value2.add(Boolean.TRUE); value2.add(Boolean.TRUE);
input.put("2", value2); input.put("2", value2);
rbd.getConstructorArgumentValues().addGenericArgumentValue(Boolean.TRUE); rbd.getConstructorArgumentValues().addGenericArgumentValue(Boolean.TRUE);
rbd.getConstructorArgumentValues().addGenericArgumentValue(input); rbd.getConstructorArgumentValues().addGenericArgumentValue(input);
bf.registerBeanDefinition("genericBean", rbd); bf.registerBeanDefinition("genericBean", rbd);
GenericBean gb = (GenericBean) bf.getBean("genericBean"); GenericBean<?> gb = (GenericBean<?>) bf.getBean("genericBean");
assertTrue(gb.getCollectionMap().get(new Integer(1)) instanceof HashSet); assertTrue(gb.getCollectionMap().get(new Integer(1)) instanceof HashSet);
assertTrue(gb.getCollectionMap().get(new Integer(2)) instanceof ArrayList); assertTrue(gb.getCollectionMap().get(new Integer(2)) instanceof ArrayList);
} }
@Test
public void testGenericListBean() throws Exception { public void testGenericListBean() throws Exception {
XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass())); XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass()));
List list = (List) bf.getBean("list"); List<?> list = (List<?>) bf.getBean("list");
assertEquals(1, list.size()); assertEquals(1, list.size());
assertEquals(new URL("http://localhost:8080"), list.get(0)); assertEquals(new URL("http://localhost:8080"), list.get(0));
} }
@Test
public void testGenericSetBean() throws Exception { public void testGenericSetBean() throws Exception {
XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass())); XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass()));
Set set = (Set) bf.getBean("set"); Set<?> set = (Set<?>) bf.getBean("set");
assertEquals(1, set.size()); assertEquals(1, set.size());
assertEquals(new URL("http://localhost:8080"), set.iterator().next()); assertEquals(new URL("http://localhost:8080"), set.iterator().next());
} }
@Test
public void testGenericMapBean() throws Exception { public void testGenericMapBean() throws Exception {
XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass())); XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass()));
Map map = (Map) bf.getBean("map"); Map<?, ?> map = (Map<?, ?>) bf.getBean("map");
assertEquals(1, map.size()); assertEquals(1, map.size());
assertEquals(new Integer(10), map.keySet().iterator().next()); assertEquals(new Integer(10), map.keySet().iterator().next());
assertEquals(new URL("http://localhost:8080"), map.values().iterator().next()); assertEquals(new URL("http://localhost:8080"), map.values().iterator().next());
} }
@Test
public void testGenericallyTypedIntegerBean() throws Exception { public void testGenericallyTypedIntegerBean() throws Exception {
XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass())); XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass()));
GenericIntegerBean gb = (GenericIntegerBean) bf.getBean("integerBean"); GenericIntegerBean gb = (GenericIntegerBean) bf.getBean("integerBean");
@ -547,6 +580,7 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new Integer(30), gb.getGenericListProperty().get(1)); assertEquals(new Integer(30), gb.getGenericListProperty().get(1));
} }
@Test
public void testGenericallyTypedSetOfIntegerBean() throws Exception { public void testGenericallyTypedSetOfIntegerBean() throws Exception {
XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass())); XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass()));
GenericSetOfIntegerBean gb = (GenericSetOfIntegerBean) bf.getBean("setOfIntegerBean"); GenericSetOfIntegerBean gb = (GenericSetOfIntegerBean) bf.getBean("setOfIntegerBean");
@ -555,6 +589,7 @@ public class BeanFactoryGenericsTests extends TestCase {
assertEquals(new Integer(30), gb.getGenericListProperty().get(1).iterator().next()); assertEquals(new Integer(30), gb.getGenericListProperty().get(1).iterator().next());
} }
@Test
public void testSetBean() throws Exception { public void testSetBean() throws Exception {
XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass())); XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("genericBeanTests.xml", getClass()));
UrlSet us = (UrlSet) bf.getBean("setBean"); UrlSet us = (UrlSet) bf.getBean("setBean");
@ -563,14 +598,17 @@ public class BeanFactoryGenericsTests extends TestCase {
} }
@SuppressWarnings("serial")
public static class NamedUrlList extends LinkedList<URL> { public static class NamedUrlList extends LinkedList<URL> {
} }
@SuppressWarnings("serial")
public static class NamedUrlSet extends HashSet<URL> { public static class NamedUrlSet extends HashSet<URL> {
} }
@SuppressWarnings("serial")
public static class NamedUrlMap extends HashMap<Integer, URL> { public static class NamedUrlMap extends HashMap<Integer, URL> {
} }
@ -585,6 +623,7 @@ public class BeanFactoryGenericsTests extends TestCase {
} }
@SuppressWarnings("serial")
public static class UrlSet extends HashSet<URL> { public static class UrlSet extends HashSet<URL> {
public UrlSet() { public UrlSet() {