You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by mb...@apache.org on 2007/03/02 22:41:14 UTC
svn commit: r513971 - in /myfaces/core/branches/jsf12/impl/src:
main/java/org/apache/myfaces/application/ApplicationImpl.java
test/java/org/apache/myfaces/application/ApplicationImplTest.java
Author: mbr
Date: Fri Mar 2 13:41:12 2007
New Revision: 513971
URL: http://svn.apache.org/viewvc?view=rev&rev=513971
Log:
Application.createComponent must set the component instance
Modified:
myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java
myfaces/core/branches/jsf12/impl/src/test/java/org/apache/myfaces/application/ApplicationImplTest.java
Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java?view=diff&rev=513971&r1=513970&r2=513971
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java Fri Mar 2 13:41:12 2007
@@ -296,7 +296,7 @@
else
{
createdComponent = createComponent(componentType);
- componentExpression.setValue(elContext, retVal);
+ componentExpression.setValue(elContext, createdComponent);
}
}
catch (Exception e)
Modified: myfaces/core/branches/jsf12/impl/src/test/java/org/apache/myfaces/application/ApplicationImplTest.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/test/java/org/apache/myfaces/application/ApplicationImplTest.java?view=diff&rev=513971&r1=513970&r2=513971
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/test/java/org/apache/myfaces/application/ApplicationImplTest.java (original)
+++ myfaces/core/branches/jsf12/impl/src/test/java/org/apache/myfaces/application/ApplicationImplTest.java Fri Mar 2 13:41:12 2007
@@ -19,21 +19,29 @@
package org.apache.myfaces.application;
import static org.apache.myfaces.test.AssertThrowables.assertThrowable;
+import static org.easymock.EasyMock.eq;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.isA;
+import static org.easymock.classextension.EasyMock.createMock;
+import static org.easymock.classextension.EasyMock.replay;
-import org.apache.myfaces.config.RuntimeConfig;
-import org.apache.myfaces.test.TestRunnable;
-import org.apache.shale.test.mock.MockFacesContext;
+import java.util.ListResourceBundle;
+import java.util.Locale;
+import java.util.ResourceBundle;
+import javax.el.ELContext;
+import javax.el.ValueExpression;
import javax.faces.FacesException;
+import javax.faces.component.UIOutput;
import javax.faces.component.UIViewRoot;
import javax.faces.context.FacesContext;
-import java.util.ListResourceBundle;
-import java.util.Locale;
-import java.util.ResourceBundle;
-
import junit.framework.TestCase;
+import org.apache.myfaces.config.RuntimeConfig;
+import org.apache.myfaces.test.TestRunnable;
+import org.apache.shale.test.mock.MockFacesContext;
+
/**
* @author Mathias Broekelmann (latest modification by $Author$)
* @version $Revision$ $Date$
@@ -118,6 +126,20 @@
context.setViewRoot(viewRoot);
viewRoot.setLocale(locale);
assertGetResourceBundleWithLocale(locale);
+ }
+
+ public void testCreateComponentCallSetValueOnExpressionIfValueNull() throws Exception
+ {
+ ValueExpression expr = createMock(ValueExpression.class);
+ FacesContext context = createMock(FacesContext.class);
+ ELContext elcontext = createMock(ELContext.class);
+ expect(context.getELContext()).andReturn(elcontext);
+ expect(expr.getValue(elcontext)).andReturn(null);
+ expr.setValue(eq(elcontext), isA(UIOutput.class));
+ app.addComponent("testComponent", UIOutput.class.getName());
+ replay(context);
+ replay(expr);
+ assertTrue(UIOutput.class.isAssignableFrom(app.createComponent(expr, context, "testComponent").getClass()));
}
private void assertGetResourceBundleWithLocale(final Locale expectedLocale)