From 29b12adbaa9d760b14d3a063f6dcea6321e3039f Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Thu, 12 Aug 2010 22:49:26 +0000 Subject: [PATCH] revised web scoping tests --- ... => RequestAndSessionScopedBeanTests.java} | 15 ++++++---- .../request/RequestScopedProxyTests.java | 29 ++++++++++++++----- 2 files changed, 30 insertions(+), 14 deletions(-) rename org.springframework.web/src/test/java/org/springframework/web/context/request/{RequestAndSessionScopedProxyTests.java => RequestAndSessionScopedBeanTests.java} (92%) diff --git a/org.springframework.web/src/test/java/org/springframework/web/context/request/RequestAndSessionScopedProxyTests.java b/org.springframework.web/src/test/java/org/springframework/web/context/request/RequestAndSessionScopedBeanTests.java similarity index 92% rename from org.springframework.web/src/test/java/org/springframework/web/context/request/RequestAndSessionScopedProxyTests.java rename to org.springframework.web/src/test/java/org/springframework/web/context/request/RequestAndSessionScopedBeanTests.java index d1bd9e4be4..27c81a4075 100644 --- a/org.springframework.web/src/test/java/org/springframework/web/context/request/RequestAndSessionScopedProxyTests.java +++ b/org.springframework.web/src/test/java/org/springframework/web/context/request/RequestAndSessionScopedBeanTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2006 the original author or authors. + * Copyright 2002-2010 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. @@ -18,23 +18,23 @@ package org.springframework.web.context.request; import javax.servlet.http.HttpServletRequest; -import junit.framework.TestCase; +import static org.junit.Assert.*; +import org.junit.Test; import org.springframework.beans.TestBean; -import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.beans.factory.BeanCreationException; +import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.mock.web.MockHttpServletRequest; import org.springframework.web.context.WebApplicationContext; -import org.springframework.web.context.request.RequestContextHolder; -import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.context.support.StaticWebApplicationContext; /** * @author Rod Johnson * @author Juergen Hoeller */ -public class RequestAndSessionScopedProxyTests extends TestCase { +public class RequestAndSessionScopedBeanTests { + @Test public void testPutBeanInRequest() throws Exception { String targetBeanName = "target"; @@ -73,6 +73,7 @@ public class RequestAndSessionScopedProxyTests extends TestCase { } } + @Test public void testPutBeanInSession() throws Exception { String targetBeanName = "target"; HttpServletRequest request = new MockHttpServletRequest(); @@ -97,6 +98,8 @@ public class RequestAndSessionScopedProxyTests extends TestCase { catch (BeanCreationException ex) { // expected } + + } } diff --git a/org.springframework.web/src/test/java/org/springframework/web/context/request/RequestScopedProxyTests.java b/org.springframework.web/src/test/java/org/springframework/web/context/request/RequestScopedProxyTests.java index 1ba7a8d0a6..459490fa4b 100644 --- a/org.springframework.web/src/test/java/org/springframework/web/context/request/RequestScopedProxyTests.java +++ b/org.springframework.web/src/test/java/org/springframework/web/context/request/RequestScopedProxyTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2008 the original author or authors. + * Copyright 2002-2010 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. @@ -16,7 +16,9 @@ package org.springframework.web.context.request; -import junit.framework.TestCase; +import static org.junit.Assert.*; +import org.junit.Before; +import org.junit.Test; import org.springframework.aop.support.AopUtils; import org.springframework.beans.DerivedTestBean; @@ -33,11 +35,12 @@ import org.springframework.mock.web.MockHttpServletRequest; /** * @author Juergen Hoeller */ -public class RequestScopedProxyTests extends TestCase { +public class RequestScopedProxyTests { private DefaultListableBeanFactory beanFactory; - protected void setUp() throws Exception { + @Before + public void setUp() throws Exception { this.beanFactory = new DefaultListableBeanFactory(); this.beanFactory.registerScope("request", new RequestScope()); XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(this.beanFactory); @@ -45,6 +48,7 @@ public class RequestScopedProxyTests extends TestCase { this.beanFactory.preInstantiateSingletons(); } + @Test public void testGetFromScope() throws Exception { String name = "requestScopedObject"; TestBean bean = (TestBean) this.beanFactory.getBean(name); @@ -58,15 +62,18 @@ public class RequestScopedProxyTests extends TestCase { assertNull(request.getAttribute("scopedTarget." + name)); assertEquals("scoped", bean.getName()); assertNotNull(request.getAttribute("scopedTarget." + name)); - assertEquals(TestBean.class, request.getAttribute("scopedTarget." + name).getClass()); - assertEquals("scoped", ((TestBean) request.getAttribute("scopedTarget." + name)).getName()); + TestBean target = (TestBean) request.getAttribute("scopedTarget." + name); + assertEquals(TestBean.class, target.getClass()); + assertEquals("scoped", target.getName()); assertSame(bean, this.beanFactory.getBean(name)); + assertEquals(bean.toString(), target.toString()); } finally { RequestContextHolder.setRequestAttributes(null); } } + @Test public void testGetFromScopeThroughDynamicProxy() throws Exception { String name = "requestScopedProxy"; ITestBean bean = (ITestBean) this.beanFactory.getBean(name); @@ -80,15 +87,18 @@ public class RequestScopedProxyTests extends TestCase { assertNull(request.getAttribute("scopedTarget." + name)); assertEquals("scoped", bean.getName()); assertNotNull(request.getAttribute("scopedTarget." + name)); - assertEquals(TestBean.class, request.getAttribute("scopedTarget." + name).getClass()); - assertEquals("scoped", ((TestBean) request.getAttribute("scopedTarget." + name)).getName()); + TestBean target = (TestBean) request.getAttribute("scopedTarget." + name); + assertEquals(TestBean.class, target.getClass()); + assertEquals("scoped", target.getName()); assertSame(bean, this.beanFactory.getBean(name)); + assertEquals(bean.toString(), target.toString()); } finally { RequestContextHolder.setRequestAttributes(null); } } + @Test public void testDestructionAtRequestCompletion() throws Exception { String name = "requestScopedDisposableObject"; DerivedTestBean bean = (DerivedTestBean) this.beanFactory.getBean(name); @@ -114,6 +124,7 @@ public class RequestScopedProxyTests extends TestCase { } } + @Test public void testGetFromFactoryBeanInScope() throws Exception { String name = "requestScopedFactoryBean"; TestBean bean = (TestBean) this.beanFactory.getBean(name); @@ -135,6 +146,7 @@ public class RequestScopedProxyTests extends TestCase { } } + @Test public void testGetInnerBeanFromScope() throws Exception { TestBean bean = (TestBean) this.beanFactory.getBean("outerBean"); assertFalse(AopUtils.isAopProxy(bean)); @@ -158,6 +170,7 @@ public class RequestScopedProxyTests extends TestCase { } } + @Test public void testGetAnonymousInnerBeanFromScope() throws Exception { TestBean bean = (TestBean) this.beanFactory.getBean("outerBean"); assertFalse(AopUtils.isAopProxy(bean));