From commits-return-18344-archive-asf-public=cust-asf.ponee.io@struts.apache.org Sun Feb 24 15:21:19 2019 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id EC134180654 for ; Sun, 24 Feb 2019 16:21:17 +0100 (CET) Received: (qmail 4613 invoked by uid 500); 24 Feb 2019 15:21:17 -0000 Mailing-List: contact commits-help@struts.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@struts.apache.org Delivered-To: mailing list commits@struts.apache.org Received: (qmail 4604 invoked by uid 99); 24 Feb 2019 15:21:17 -0000 Received: from ec2-52-202-80-70.compute-1.amazonaws.com (HELO gitbox.apache.org) (52.202.80.70) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 24 Feb 2019 15:21:17 +0000 Received: by gitbox.apache.org (ASF Mail Server at gitbox.apache.org, from userid 33) id 2EC5782E8A; Sun, 24 Feb 2019 15:21:16 +0000 (UTC) Date: Sun, 24 Feb 2019 15:21:16 +0000 To: "commits@struts.apache.org" Subject: [struts] branch master updated: add properties support to XWorkTestCase.loadButAdd MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Message-ID: <155102167591.21873.5310603812638552543@gitbox.apache.org> From: yasserzamani@apache.org X-Git-Host: gitbox.apache.org X-Git-Repo: struts X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: 3ee47f19c32b151aad190f56ad322eede10792cd X-Git-Newrev: ce4f192676aeb433f8aa020977b62cda0fedf27b X-Git-Rev: ce4f192676aeb433f8aa020977b62cda0fedf27b X-Git-NotificationType: ref_changed_plus_diff X-Git-Multimail-Version: 1.5.dev Auto-Submitted: auto-generated This is an automated email from the ASF dual-hosted git repository. yasserzamani pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/struts.git The following commit(s) were added to refs/heads/master by this push: new ce4f192 add properties support to XWorkTestCase.loadButAdd ce4f192 is described below commit ce4f192676aeb433f8aa020977b62cda0fedf27b Author: Yasser Zamani AuthorDate: Sun Feb 24 17:53:45 2019 +0330 add properties support to XWorkTestCase.loadButAdd also includes cleanups for PRs #292 and #320 (cherry picked from commit a15c12a) --- .../com/opensymphony/xwork2/XWorkTestCase.java | 23 +++--- .../com/opensymphony/xwork2/ognl/OgnlUtilTest.java | 76 +++++-------------- .../xwork2/ognl/OgnlValueStackTest.java | 33 -------- .../xwork-test-allowstatic-devmode-false.xml | 86 --------------------- .../xwork-test-allowstatic-devmode-true.xml | 86 --------------------- .../providers/xwork-test-allowstatic-true.xml | 86 --------------------- .../config/providers/xwork-test-devmode-true.xml | 86 --------------------- .../providers/xwork-test-staticfield-false.xml | 87 ---------------------- .../providers/xwork-test-staticfield-true.xml | 87 ---------------------- 9 files changed, 34 insertions(+), 616 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java b/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java index 21442da..bc6b0a8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java @@ -27,6 +27,7 @@ import com.opensymphony.xwork2.test.StubConfigurationProvider; import com.opensymphony.xwork2.util.XWorkTestCaseHelper; import com.opensymphony.xwork2.util.location.LocatableProperties; import junit.framework.TestCase; +import org.apache.commons.lang3.ClassUtils; /** * Base JUnit TestCase to extend for XWork specific JUnit tests. Uses @@ -78,16 +79,20 @@ public abstract class XWorkTestCase extends TestCase { @Override public void register(ContainerBuilder builder, LocatableProperties props) throws ConfigurationException { - builder.factory(type, name, new Factory() { - public Object create(Context context) throws Exception { - return impl; - } + if (impl instanceof String || ClassUtils.isPrimitiveOrWrapper(impl.getClass())) { + props.setProperty(name, "" + impl); + } else { + builder.factory(type, name, new Factory() { + public Object create(Context context) throws Exception { + return impl; + } - @Override - public Class type() { - return impl.getClass(); - } - }, Scope.SINGLETON); + @Override + public Class type() { + return impl.getClass(); + } + }, Scope.SINGLETON); + } } }); } diff --git a/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlUtilTest.java b/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlUtilTest.java index 81308f0..c226bb8 100644 --- a/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlUtilTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlUtilTest.java @@ -19,19 +19,19 @@ package com.opensymphony.xwork2.ognl; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.ActionProxyFactory; import com.opensymphony.xwork2.XWorkException; import com.opensymphony.xwork2.XWorkTestCase; -import com.opensymphony.xwork2.config.ConfigurationManager; -import com.opensymphony.xwork2.config.ConfigurationProvider; -import com.opensymphony.xwork2.config.providers.XmlConfigurationProvider; +import com.opensymphony.xwork2.config.ConfigurationException; import com.opensymphony.xwork2.conversion.impl.XWorkConverter; -import com.opensymphony.xwork2.inject.Container; +import com.opensymphony.xwork2.inject.ContainerBuilder; import com.opensymphony.xwork2.interceptor.ChainingInterceptor; +import com.opensymphony.xwork2.test.StubConfigurationProvider; import com.opensymphony.xwork2.test.User; import com.opensymphony.xwork2.util.*; +import com.opensymphony.xwork2.util.location.LocatableProperties; import com.opensymphony.xwork2.util.reflection.ReflectionContextState; import ognl.*; +import org.apache.struts2.StrutsConstants; import java.lang.reflect.Method; import java.text.DateFormat; @@ -1312,61 +1312,25 @@ public class OgnlUtilTest extends XWorkTestCase { } private void reloadTestContainerConfiguration(boolean devMode, boolean allowStaticMethod) throws Exception { - super.tearDown(); - - ConfigurationProvider configurationProvider; - if (devMode == true && allowStaticMethod == true) { - configurationProvider = new XmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-devmode-true.xml", true); - } - else if (devMode == true && allowStaticMethod == false) { - configurationProvider = new XmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-devmode-true.xml", true); - } - else if (devMode == false && allowStaticMethod == true) { - configurationProvider = new XmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-true.xml", true); - } - else { // devMode, allowStatic both false - configurationProvider = new XmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-devmode-false.xml", true); - } - - configurationManager = new ConfigurationManager(Container.DEFAULT_NAME); - configurationManager.addContainerProvider(configurationProvider); - configuration = configurationManager.getConfiguration(); - container = configuration.getContainer(); - container.inject(configurationProvider); - configurationProvider.init(configuration); - actionProxyFactory = container.getInstance(ActionProxyFactory.class); - - // Reset the value stack - ValueStack stack = container.getInstance(ValueStackFactory.class).createValueStack(); - stack.getContext().put(ActionContext.CONTAINER, container); - ActionContext.setContext(new ActionContext(stack.getContext())); - + loadConfigurationProviders(new StubConfigurationProvider() { + @Override + public void register(ContainerBuilder builder, + LocatableProperties props) throws ConfigurationException { + props.setProperty(StrutsConstants.STRUTS_DEVMODE, "" + devMode); + props.setProperty(StrutsConstants.STRUTS_ALLOW_STATIC_METHOD_ACCESS, "" + allowStaticMethod); + } + }); ognlUtil = container.getInstance(OgnlUtil.class); } private void reloadTestContainerConfiguration(boolean allowStaticField) throws Exception { - super.tearDown(); - - ConfigurationProvider configurationProvider; - if (allowStaticField) { - configurationProvider = new XmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-staticfield-true.xml", true); - } else { - configurationProvider = new XmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-staticfield-false.xml", true); - } - - configurationManager = new ConfigurationManager(Container.DEFAULT_NAME); - configurationManager.addContainerProvider(configurationProvider); - configuration = configurationManager.getConfiguration(); - container = configuration.getContainer(); - container.inject(configurationProvider); - configurationProvider.init(configuration); - actionProxyFactory = container.getInstance(ActionProxyFactory.class); - - // Reset the value stack - ValueStack stack = container.getInstance(ValueStackFactory.class).createValueStack(); - stack.getContext().put(ActionContext.CONTAINER, container); - ActionContext.setContext(new ActionContext(stack.getContext())); - + loadConfigurationProviders(new StubConfigurationProvider() { + @Override + public void register(ContainerBuilder builder, + LocatableProperties props) throws ConfigurationException { + props.setProperty(StrutsConstants.STRUTS_ALLOW_STATIC_FIELD_ACCESS, "" + allowStaticField); + } + }); ognlUtil = container.getInstance(OgnlUtil.class); } diff --git a/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlValueStackTest.java b/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlValueStackTest.java index c7fd368..9209e73 100644 --- a/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlValueStackTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlValueStackTest.java @@ -980,39 +980,6 @@ public class OgnlValueStackTest extends XWorkTestCase { assertEquals(null, stack.findValue("address.country.name", String.class)); } - private void reloadTestContainerConfiguration(boolean devMode, boolean allowStatic) throws Exception { - super.tearDown(); - - ConfigurationProvider configurationProvider; - if (devMode == true && allowStatic == true) { - configurationProvider = new XmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-devmode-true.xml", true); - } - else if (devMode == true && allowStatic == false) { - configurationProvider = new XmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-devmode-true.xml", true); - } - else if (devMode == false && allowStatic == true) { - configurationProvider = new XmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-true.xml", true); - } - else { // devMode, allowStatic both false - configurationProvider = new XmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-devmode-false.xml", true); - } - - configurationManager = new ConfigurationManager(Container.DEFAULT_NAME); - configurationManager.addContainerProvider(configurationProvider); - configuration = configurationManager.getConfiguration(); - container = configuration.getContainer(); - container.inject(configurationProvider); - configurationProvider.init(configuration); - actionProxyFactory = container.getInstance(ActionProxyFactory.class); - - // Reset the value stack - ValueStack stack = container.getInstance(ValueStackFactory.class).createValueStack(); - stack.getContext().put(ActionContext.CONTAINER, container); - ActionContext.setContext(new ActionContext(stack.getContext())); - - ognlUtil = container.getInstance(OgnlUtil.class); - } - class BadJavaBean { private int count; private int count2; diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-devmode-false.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-devmode-false.xml deleted file mode 100644 index b277946..0000000 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-devmode-false.xml +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-devmode-true.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-devmode-true.xml deleted file mode 100644 index c04dc9e..0000000 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-devmode-true.xml +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-true.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-true.xml deleted file mode 100644 index 816d654..0000000 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-allowstatic-true.xml +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-devmode-true.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-devmode-true.xml deleted file mode 100644 index 0a2f09d..0000000 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-devmode-true.xml +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-staticfield-false.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-staticfield-false.xml deleted file mode 100644 index c6aeb4a..0000000 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-staticfield-false.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-staticfield-true.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-staticfield-true.xml deleted file mode 100644 index 8cde065..0000000 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-staticfield-true.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file