You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2013/07/04 17:47:18 UTC

svn commit: r1499794 - in /tomcat/trunk/test/javax/el: TestBeanNameELResolver.java TesterBeanNameResolver.java

Author: markt
Date: Thu Jul  4 15:47:18 2013
New Revision: 1499794

URL: http://svn.apache.org/r1499794
Log:
Add the first of the setValue tests and some plumbing that will be required by future tests.

Modified:
    tomcat/trunk/test/javax/el/TestBeanNameELResolver.java
    tomcat/trunk/test/javax/el/TesterBeanNameResolver.java

Modified: tomcat/trunk/test/javax/el/TestBeanNameELResolver.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/test/javax/el/TestBeanNameELResolver.java?rev=1499794&r1=1499793&r2=1499794&view=diff
==============================================================================
--- tomcat/trunk/test/javax/el/TestBeanNameELResolver.java (original)
+++ tomcat/trunk/test/javax/el/TestBeanNameELResolver.java Thu Jul  4 15:47:18 2013
@@ -32,8 +32,13 @@ public class TestBeanNameELResolver {
      * resolver with the same configuration.
      */
     private BeanNameELResolver createBeanNameELResolver() {
+        return createBeanNameELResolver(false);
+    }
+
+    private BeanNameELResolver createBeanNameELResolver(boolean allowCreate) {
 
-        BeanNameResolver beanNameResolver = new TesterBeanNameResolver();
+        BeanNameResolver beanNameResolver =
+                new TesterBeanNameResolver(allowCreate);
         beanNameResolver.setBeanValue(BEAN01_NAME, BEAN01);
         beanNameResolver.setBeanValue(BEAN02_NAME, BEAN02);
 
@@ -166,4 +171,14 @@ public class TestBeanNameELResolver {
         Throwable cause = elException.getCause();
         Assert.assertNotNull(cause);
     }
+
+
+    /**
+     * Tests that a null context results in an NPE as per EL Javadoc.
+     */
+    @Test(expected=NullPointerException.class)
+    public void testSetValue01() {
+        BeanNameELResolver resolver = createBeanNameELResolver();
+        resolver.setValue(null, new Object(), new Object(), new Object());
+    }
 }

Modified: tomcat/trunk/test/javax/el/TesterBeanNameResolver.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/test/javax/el/TesterBeanNameResolver.java?rev=1499794&r1=1499793&r2=1499794&view=diff
==============================================================================
--- tomcat/trunk/test/javax/el/TesterBeanNameResolver.java (original)
+++ tomcat/trunk/test/javax/el/TesterBeanNameResolver.java Thu Jul  4 15:47:18 2013
@@ -25,15 +25,19 @@ public class TesterBeanNameResolver exte
     public static final String THROWABLE_TRIGGER_NAME = "exception";
 
     private Map<String,Object> beans = new HashMap<>();
+    private final boolean allowCreate;
 
-    public TesterBeanNameResolver() {
+    public TesterBeanNameResolver(boolean allowCreate) {
+        this.allowCreate = allowCreate;
         beans.put(EXCEPTION_TRIGGER_NAME, new Object());
     }
 
     @Override
     public void setBeanValue(String beanName, Object value)
             throws PropertyNotWritableException {
-        beans.put(beanName, value);
+        if (allowCreate || beans.containsKey(beanName)) {
+            beans.put(beanName, value);
+        }
     }
 
     @Override
@@ -51,4 +55,9 @@ public class TesterBeanNameResolver exte
         }
         return beans.get(beanName);
     }
+
+    @Override
+    public boolean canCreateBean(String beanName) {
+        return allowCreate;
+    }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org