This is an automated email from the ASF dual-hosted git repository.

kusal pushed a commit to branch WW-5339-cleanup
in repository https://gitbox.apache.org/repos/asf/struts.git

commit 7bd31cf3159045f3dc285bfde008397a8ebae21f
Author: Kusal Kithul-Godage <g...@kusal.io>
AuthorDate: Wed Aug 30 13:56:25 2023 +1000

    WW-5339 Clean up OgnlValueStackTest
---
 .../xwork2/ognl/OgnlValueStackTest.java            | 245 +++++++--------------
 1 file changed, 75 insertions(+), 170 deletions(-)

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 f8e22dbf9..5f0ac5b26 100644
--- a/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlValueStackTest.java
+++ b/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlValueStackTest.java
@@ -48,13 +48,14 @@ import 
org.apache.logging.log4j.core.appender.AbstractAppender;
 import org.apache.struts2.StrutsConstants;
 import org.apache.struts2.StrutsException;
 import org.apache.struts2.config.DefaultPropertiesProvider;
+import org.apache.struts2.config.StrutsXmlConfigurationProvider;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
-import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.LinkedHashMap;
@@ -84,14 +85,13 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
     private OgnlUtil ognlUtil;
 
+    private OgnlValueStack vs;
+
     @Override
     public void setUp() throws Exception {
         super.setUp();
         ognlUtil = container.getInstance(OgnlUtil.class);
-    }
-
-    private OgnlValueStack createValueStack() {
-        return createValueStack(true);
+        vs = createValueStack(true);
     }
 
     private OgnlValueStack createValueStack(boolean allowStaticFieldAccess) {
@@ -134,7 +134,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
         Map expr1 = new LinkedHashMap();
         expr1.put("expr1", "'expr1value'");
 
-        OgnlValueStack vs = createValueStack();
         vs.setExprOverrides(expr1);
 
         assertEquals(vs.findValue("expr1"), "expr1value");
@@ -150,8 +149,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
 
     public void testArrayAsString() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         dog.setAge(12);
         dog.setName("Rover");
@@ -167,7 +164,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     private void testValuesFromContextAreConverted(String propertyName) {
-        final OgnlValueStack vs = createValueStack();
         final String propertyValue = "Rover";
         vs.getContext().put(propertyName, new String[]{propertyValue});
 
@@ -180,7 +176,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     private void testNullValueFromContextGetsConverted(String propertyName) {
-        final OgnlValueStack vs = createValueStack();
         final String propertyValue = null;
         vs.getContext().put(propertyName, propertyValue);
 
@@ -188,8 +183,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testFailOnException() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         vs.push(dog);
         try {
@@ -202,8 +195,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
     public void testFailOnErrorOnInheritedProperties() {
         //this shuld not fail as the property is defined on a parent class
-        OgnlValueStack vs = createValueStack();
-
         Foo foo = new Foo();
         BarJunior barjr = new BarJunior();
         foo.setBarJunior(barjr);
@@ -215,8 +206,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
     public void testSuccessFailOnErrorOnInheritedPropertiesWithMethods() {
         //this shuld not fail as the property is defined on a parent class
-        OgnlValueStack vs = createValueStack();
-
         Foo foo = new Foo();
         BarJunior barjr = new BarJunior();
         foo.setBarJunior(barjr);
@@ -227,8 +216,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testFailFailOnErrorOnInheritedPropertiesWithMethods() {
-        OgnlValueStack vs = createValueStack();
-
         Foo foo = new Foo();
         BarJunior barjr = new BarJunior();
         foo.setBarJunior(barjr);
@@ -243,8 +230,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testFailOnMissingProperty() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         vs.push(dog);
         try {
@@ -266,7 +251,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     private void testLogMissingProperties(boolean logMissingProperties) {
-        OgnlValueStack vs = createValueStack();
         vs.setLogMissingProperties("" + logMissingProperties);
 
         Dog dog = new Dog();
@@ -305,7 +289,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
      * @since 2.5.21
      */
     public void testNotLogUserExceptionsAsMissingProperties() {
-        OgnlValueStack vs = createValueStack();
         vs.setLogMissingProperties("true");
 
         Dog dog = new Dog();
@@ -347,8 +330,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testFailOnMissingMethod() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         vs.push(dog);
         try {
@@ -368,10 +349,9 @@ public class OgnlValueStackTest extends XWorkTestCase {
                     
props.setProperty(StrutsConstants.STRUTS_OGNL_EXPRESSION_MAX_LENGTH, "192");
                 }
             });
-            Integer repeat = Integer.parseInt(
+            int repeat = Integer.parseInt(
                 container.getInstance(String.class, 
StrutsConstants.STRUTS_OGNL_EXPRESSION_MAX_LENGTH));
 
-            OgnlValueStack vs = createValueStack();
             try {
                 vs.findValue(StringUtils.repeat('.', repeat + 1), true);
                 fail("Failed to throw exception on too long expression");
@@ -393,7 +373,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
         int defaultValue = 256;
 
-        OgnlValueStack vs = createValueStack();
         try {
             vs.findValue(StringUtils.repeat('.', defaultValue + 1), true);
             fail("findValue did not throw any exception (should either fail as 
invalid expression syntax or security exception) ?");
@@ -412,8 +391,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
         int defaultValue = 256;
 
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         vs.push(dog);
 
@@ -426,12 +403,11 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
     public void testFailsOnMethodThatThrowsException() {
         SimpleAction action = new SimpleAction();
-        OgnlValueStack stack = createValueStack();
-        stack.push(action);
+        vs.push(action);
 
         action.setThrowException(true);
         try {
-            stack.findValue("exceptionMethod12()", true);
+            vs.findValue("exceptionMethod12()", true);
             fail("Failed to throw exception on EL method exception");
         } catch (Exception ex) {
             //ok
@@ -442,8 +418,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     public void testDoesNotFailOnNonActionObjects() {
         //if a value is not found, then it will check for missing properties
         //it needs to check in all objects in the stack, not only actions, see 
WW-3306
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         dog.setHates(null);
         vs.push(dog);
@@ -452,8 +426,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
 
     public void testFailOnMissingNestedProperty() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         dog.setHates(new Cat());
         vs.push(dog);
@@ -466,8 +438,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testBasic() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         dog.setAge(12);
         dog.setName("Rover");
@@ -477,8 +447,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testStatic() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         dog.setDeity("fido");
         vs.push(dog);
@@ -489,16 +457,12 @@ public class OgnlValueStackTest extends XWorkTestCase {
      * Allow access Enums without enabling access to static methods
      */
     public void testEnum() throws Exception {
-        OgnlValueStack vs = createValueStack();
-
         assertEquals("ONE", 
vs.findValue("@com.opensymphony.xwork2.ognl.MyNumbers@values()[0]", 
String.class));
         assertEquals("TWO", 
vs.findValue("@com.opensymphony.xwork2.ognl.MyNumbers@values()[1]", 
String.class));
         assertEquals("THREE", 
vs.findValue("@com.opensymphony.xwork2.ognl.MyNumbers@values()[2]", 
String.class));
     }
 
     public void testStaticMethodDisallow() {
-        OgnlValueStack vs = createValueStack(true);
-
         Dog dog = new Dog();
         dog.setDeity("fido");
         vs.push(dog);
@@ -506,8 +470,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testBasicSet() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         dog.setAge(12);
         dog.setName("Rover");
@@ -517,38 +479,34 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testCallMethodOnNullObject() {
-        OgnlValueStack stack = createValueStack();
-        assertNull(stack.findValue("foo.size()"));
+        assertNull(vs.findValue("foo.size()"));
     }
 
     public void testCallMethodThatThrowsExceptionTwice() {
         SimpleAction action = new SimpleAction();
-        OgnlValueStack stack = createValueStack();
-        stack.push(action);
+        vs.push(action);
 
         action.setThrowException(true);
-        assertNull(stack.findValue("exceptionMethod1()"));
+        assertNull(vs.findValue("exceptionMethod1()"));
         action.setThrowException(false);
-        assertEquals("OK", stack.findValue("exceptionMethod()"));
+        assertEquals("OK", vs.findValue("exceptionMethod()"));
     }
 
 
     public void testCallMethodWithNullArg() {
         SimpleAction action = new SimpleAction();
-        OgnlValueStack stack = createValueStack();
-        stack.push(action);
+        vs.push(action);
 
-        stack.findValue("setName(blah)");
+        vs.findValue("setName(blah)");
         assertNull(action.getName());
 
         action.setBlah("blah");
-        stack.findValue("setName(blah)");
+        vs.findValue("setName(blah)");
         assertEquals("blah", action.getName());
     }
 
     public void testConvertStringArrayToList() {
         Foo foo = new Foo();
-        OgnlValueStack vs = createValueStack();
         vs.push(foo);
 
         vs.setValue("strings", new String[]{"one", "two"});
@@ -563,9 +521,8 @@ public class OgnlValueStackTest extends XWorkTestCase {
         // register converter
         TestBean2 tb2 = new TestBean2();
 
-        OgnlValueStack stack = createValueStack();
-        stack.push(tb2);
-        Map myContext = stack.getContext();
+        vs.push(tb2);
+        Map myContext = vs.getContext();
 
         Map props = new HashMap();
         props.put("cat", "Kitty");
@@ -574,12 +531,12 @@ public class OgnlValueStackTest extends XWorkTestCase {
         assertEquals("Kitty", tb2.getCat().getName());
 
         // findValue should be able to access the name
-        Object value = stack.findValue("cat.name == 'Kitty'", Boolean.class);
+        Object value = vs.findValue("cat.name == 'Kitty'", Boolean.class);
         assertNotNull(value);
         assertEquals(Boolean.class, value.getClass());
         assertEquals(Boolean.TRUE, value);
 
-        value = stack.findValue("cat == null", Boolean.class);
+        value = vs.findValue("cat == null", Boolean.class);
         assertNotNull(value);
         assertEquals(Boolean.class, value.getClass());
         assertEquals(Boolean.FALSE, value);
@@ -587,8 +544,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
 
     public void testDeepProperties() {
-        OgnlValueStack vs = createValueStack();
-
         Cat cat = new Cat();
         cat.setName("Smokey");
 
@@ -603,7 +558,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testFooBarAsString() {
-        OgnlValueStack vs = createValueStack();
         Foo foo = new Foo();
         Bar bar = new Bar();
         bar.setTitle("blah");
@@ -621,7 +575,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
         bar.setSomethingElse(123);
         foo.setBar(bar);
 
-        OgnlValueStack vs = createValueStack();
         vs.push(foo);
 
         String output = (String) vs.findValue("bar", String.class);
@@ -660,7 +613,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
         fooB.setBar(bar);
         fooC.setBar(bar);
 
-        OgnlValueStack vs = createValueStack();
         vs.push(foo);
 
         vs.getContext().put("foo", foo);
@@ -682,9 +634,8 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
     public void testGetNullValue() {
         Dog dog = new Dog();
-        OgnlValueStack stack = createValueStack();
-        stack.push(dog);
-        assertNull(stack.findValue("name"));
+        vs.push(dog);
+        assertNull(vs.findValue("name"));
     }
 
     public void testMapEntriesAvailableByKey() {
@@ -692,7 +643,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
         String title = "a title";
         foo.setTitle(title);
 
-        OgnlValueStack vs = createValueStack();
         vs.push(foo);
 
         Map map = new HashMap();
@@ -712,8 +662,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testMethodCalls() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog1 = new Dog();
         dog1.setAge(12);
         dog1.setName("Rover");
@@ -744,8 +692,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testMismatchedGettersAndSettersCauseExceptionInSet() {
-        OgnlValueStack vs = createValueStack();
-
         BadJavaBean bean = new BadJavaBean();
         vs.push(bean);
 
@@ -762,8 +708,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testNoExceptionInSetForDefault() {
-        OgnlValueStack vs = createValueStack();
-
         BadJavaBean bean = new BadJavaBean();
         vs.push(bean);
 
@@ -780,8 +724,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testNullEntry() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         dog.setName("Rover");
 
@@ -794,10 +736,9 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
     public void testNullMethod() {
         Dog dog = new Dog();
-        OgnlValueStack stack = createValueStack();
-        stack.push(dog);
-        assertNull(stack.findValue("nullMethod()"));
-        
assertNull(stack.findValue("@com.opensymphony.xwork2.ognl.OgnlValueStackTest@staticNullMethod()"));
+        vs.push(dog);
+        assertNull(vs.findValue("nullMethod()"));
+        
assertNull(vs.findValue("@com.opensymphony.xwork2.ognl.OgnlValueStackTest@staticNullMethod()"));
     }
 
     public void testPetSoarBug() {
@@ -809,7 +750,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
         bar.setSomethingElse(123);
         cat.getFoo().setBar(bar);
 
-        OgnlValueStack vs = createValueStack();
         vs.push(cat);
 
         assertEquals("bar:123", vs.findValue("foo.bar", String.class));
@@ -817,31 +757,29 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
     public void testPrimitiveSettingWithInvalidValueAddsFieldErrorInDevMode() 
throws Exception {
         SimpleAction action = new SimpleAction();
-        OgnlValueStack stack = createValueStack();
-        stack.getContext().put(XWorkConverter.REPORT_CONVERSION_ERRORS, 
Boolean.TRUE);
-        stack.setDevMode("true");
-        stack.push(action);
+        vs.getContext().put(XWorkConverter.REPORT_CONVERSION_ERRORS, 
Boolean.TRUE);
+        vs.setDevMode("true");
+        vs.push(action);
 
         try {
-            stack.setValue("bar", "3x");
+            vs.setValue("bar", "3x");
             fail("Attempt to set 'bar' int property to '3x' should result in 
RuntimeException");
         } catch (RuntimeException re) {
             assertTrue(true);
         }
 
-        Map<String, ConversionData> conversionErrors = 
stack.getActionContext().getConversionErrors();
+        Map<String, ConversionData> conversionErrors = 
vs.getActionContext().getConversionErrors();
         assertTrue(conversionErrors.containsKey("bar"));
     }
 
     public void 
testPrimitiveSettingWithInvalidValueAddsFieldErrorInNonDevMode() {
         SimpleAction action = new SimpleAction();
-        OgnlValueStack stack = createValueStack();
-        stack.getContext().put(XWorkConverter.REPORT_CONVERSION_ERRORS, 
Boolean.TRUE);
-        stack.setDevMode("false");
-        stack.push(action);
-        stack.setValue("bar", "3x");
+        vs.getContext().put(XWorkConverter.REPORT_CONVERSION_ERRORS, 
Boolean.TRUE);
+        vs.setDevMode("false");
+        vs.push(action);
+        vs.setValue("bar", "3x");
 
-        Map<String, ConversionData> conversionErrors = 
stack.getActionContext().getConversionErrors();
+        Map<String, ConversionData> conversionErrors = 
vs.getActionContext().getConversionErrors();
         assertTrue(conversionErrors.containsKey("bar"));
     }
 
@@ -849,25 +787,22 @@ public class OgnlValueStackTest extends XWorkTestCase {
     public void 
testObjectSettingWithInvalidValueDoesNotCauseSetCalledWithNull() {
         SimpleAction action = new SimpleAction();
         action.setBean(new TestBean());
-        OgnlValueStack stack = createValueStack();
-        stack.getContext().put(XWorkConverter.REPORT_CONVERSION_ERRORS, 
Boolean.TRUE);
-        stack.push(action);
+        vs.getContext().put(XWorkConverter.REPORT_CONVERSION_ERRORS, 
Boolean.TRUE);
+        vs.push(action);
         try {
-            stack.setValue("bean", "foobar", true);
+            vs.setValue("bean", "foobar", true);
             fail("Should have thrown a type conversion exception");
         } catch (StrutsException e) {
             // expected
         }
 
-        Map<String, ConversionData> conversionErrors = 
stack.getActionContext().getConversionErrors();
+        Map<String, ConversionData> conversionErrors = 
vs.getActionContext().getConversionErrors();
         assertTrue(conversionErrors.containsKey("bean"));
         assertNotNull(action.getBean());
     }
 
 
     public void testSerializable() throws IOException, ClassNotFoundException {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         dog.setAge(12);
         dog.setName("Rover");
@@ -889,8 +824,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testSetAfterPush() {
-        OgnlValueStack vs = createValueStack();
-
         Dog d = new Dog();
         d.setName("Rover");
         vs.push(d);
@@ -904,7 +837,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     public void testSetBarAsString() {
         Foo foo = new Foo();
 
-        OgnlValueStack vs = createValueStack();
         vs.push(foo);
 
         vs.setValue("bar", "bar:123");
@@ -914,8 +846,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testSetBeforePush() {
-        OgnlValueStack vs = createValueStack();
-
         vs.set("name", "Bill");
         Dog d = new Dog();
         d.setName("Rover");
@@ -930,7 +860,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
         Foo foo2 = new Foo();
         foo.setChild(foo2);
 
-        OgnlValueStack vs = createValueStack();
         vs.push(foo);
 
         vs.setValue("child.bar", "bar:123");
@@ -941,7 +870,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
     public void testSetNullList() {
         Foo foo = new Foo();
-        OgnlValueStack vs = createValueStack();
         vs.getContext().put(ReflectionContextState.CREATE_NULL_OBJECTS, 
Boolean.TRUE);
         vs.push(foo);
 
@@ -982,7 +910,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testSetMultiple() {
-        OgnlValueStack vs = createValueStack();
         int origSize = vs.getRoot().size();
         vs.set("something", new Object());
         vs.set("somethingElse", new Object());
@@ -993,7 +920,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
     public void testSetNullMap() {
         Foo foo = new Foo();
-        OgnlValueStack vs = createValueStack();
         vs.getContext().put(ReflectionContextState.CREATE_NULL_OBJECTS, 
Boolean.TRUE);
         vs.push(foo);
 
@@ -1020,7 +946,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
         Foo foo3 = new Foo();
         foo2.setChild(foo3);
 
-        OgnlValueStack vs = createValueStack();
         vs.push(foo);
 
         vs.setValue("child.child.bar", "bar:123");
@@ -1030,8 +955,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testSettingDogGender() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         vs.push(dog);
 
@@ -1041,8 +964,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testStatics() {
-        OgnlValueStack vs = createValueStack();
-
         Cat cat = new Cat();
         vs.push(cat);
 
@@ -1054,7 +975,7 @@ public class OgnlValueStackTest extends XWorkTestCase {
         assertEquals("Canine", vs.findValue("@vs@SCIENTIFIC_NAME"));
         assertEquals("Canine", vs.findValue("@vs1@SCIENTIFIC_NAME"));
         assertEquals("Feline", vs.findValue("@vs2@SCIENTIFIC_NAME"));
-        assertEquals(BigDecimal.ROUND_HALF_DOWN, 
vs.findValue("@java.math.BigDecimal@ROUND_HALF_DOWN"));
+        assertEquals(RoundingMode.HALF_DOWN, 
vs.findValue("@java.math.RoundingMode@HALF_DOWN"));
         assertNull(vs.findValue("@vs3@BLAH"));
         assertNull(vs.findValue("@com.nothing.here.Nothing@BLAH"));
     }
@@ -1065,8 +986,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
      * @since 2.5.21
      */
     public void testNotThrowExceptionOnTopMissingProperty() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         dog.setName("Rover");
         vs.push(dog);
@@ -1088,8 +1007,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
      * @since 2.5.21
      */
     public void testNotSkipUserReturnedNullValues() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog = new Dog();
         dog.setName("Rover");
         vs.push(dog);
@@ -1105,8 +1022,6 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testTop() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog1 = new Dog();
         dog1.setAge(12);
         dog1.setName("Rover");
@@ -1122,14 +1037,10 @@ public class OgnlValueStackTest extends XWorkTestCase {
     }
 
     public void testTopIsDefaultTextProvider() {
-        OgnlValueStack vs = createValueStack();
-
         assertEquals(container.getInstance(TextProvider.class, "system"), 
vs.findValue("top"));
     }
 
     public void testTwoDogs() {
-        OgnlValueStack vs = createValueStack();
-
         Dog dog1 = new Dog();
         dog1.setAge(12);
         dog1.setName("Rover");
@@ -1149,96 +1060,90 @@ public class OgnlValueStackTest extends XWorkTestCase {
 
     public void testTypeConversionError() {
         TestBean bean = new TestBean();
-        OgnlValueStack stack = createValueStack();
-        stack.push(bean);
-        stack.getContext().put(XWorkConverter.REPORT_CONVERSION_ERRORS, 
Boolean.TRUE);
+        vs.push(bean);
+        vs.getContext().put(XWorkConverter.REPORT_CONVERSION_ERRORS, 
Boolean.TRUE);
         try {
-            stack.setValue("count", "a", true);
+            vs.setValue("count", "a", true);
             fail("Should have thrown a type conversion exception");
         } catch (StrutsException e) {
             // expected
         }
 
-        Map<String, ConversionData> conversionErrors = 
stack.getActionContext().getConversionErrors();
+        Map<String, ConversionData> conversionErrors = 
vs.getActionContext().getConversionErrors();
         assertTrue(conversionErrors.containsKey("count"));
     }
 
     public void testConstructorWithAStack() {
-        OgnlValueStack stack = createValueStack();
-        stack.push("Hello World");
+        vs.push("Hello World");
 
-        OgnlValueStack stack2 = new OgnlValueStack(stack,
+        OgnlValueStack stack2 = new OgnlValueStack(vs,
             container.getInstance(XWorkConverter.class),
             (CompoundRootAccessor) 
container.getInstance(PropertyAccessor.class, CompoundRoot.class.getName()), 
true);
         container.inject(stack2);
 
-        assertEquals(stack.getRoot(), stack2.getRoot());
-        assertEquals(stack.peek(), stack2.peek());
+        assertEquals(vs.getRoot(), stack2.getRoot());
+        assertEquals(vs.peek(), stack2.peek());
         assertEquals("Hello World", stack2.pop());
 
     }
 
     public void testDefaultType() {
-        OgnlValueStack stack = createValueStack();
-        stack.setDefaultType(String.class);
-        stack.push("Hello World");
+        vs.setDefaultType(String.class);
+        vs.push("Hello World");
 
-        assertEquals("Hello World", stack.findValue("top"));
-        assertNull(stack.findValue(null));
+        assertEquals("Hello World", vs.findValue("top"));
+        assertNull(vs.findValue(null));
 
-        stack.setDefaultType(Integer.class);
-        stack.push(123);
-        assertEquals(123, stack.findValue("top"));
+        vs.setDefaultType(Integer.class);
+        vs.push(123);
+        assertEquals(123, vs.findValue("top"));
     }
 
     public void testFindString() {
-        OgnlValueStack stack = createValueStack();
-        stack.setDefaultType(Integer.class);
-        stack.push("Hello World");
+        vs.setDefaultType(Integer.class);
+        vs.push("Hello World");
 
-        assertEquals("Hello World", stack.findString("top"));
-        assertNull(stack.findString(null));
+        assertEquals("Hello World", vs.findString("top"));
+        assertNull(vs.findString(null));
     }
 
     public void testExpOverrides() {
         Map<Object, Object> overrides = new HashMap<>();
         overrides.put("claus", "top");
 
-        OgnlValueStack stack = createValueStack();
-        stack.setExprOverrides(overrides);
-        stack.push("Hello World");
+        vs.setExprOverrides(overrides);
+        vs.push("Hello World");
 
-        assertEquals("Hello World", stack.findValue("claus"));
-        assertEquals("Hello World", stack.findString("claus"));
-        assertEquals("Hello World", stack.findValue("top"));
-        assertEquals("Hello World", stack.findString("top"));
+        assertEquals("Hello World", vs.findValue("claus"));
+        assertEquals("Hello World", vs.findString("claus"));
+        assertEquals("Hello World", vs.findValue("top"));
+        assertEquals("Hello World", vs.findString("top"));
 
-        assertEquals("Hello World", stack.findValue("claus", String.class));
-        assertEquals("Hello World", stack.findValue("top", String.class));
+        assertEquals("Hello World", vs.findValue("claus", String.class));
+        assertEquals("Hello World", vs.findValue("top", String.class));
 
-        stack.getContext().put("santa", "Hello Santa");
-        assertEquals("Hello Santa", stack.findValue("santa", String.class));
-        assertNull(stack.findValue("unknown", String.class));
+        vs.getContext().put("santa", "Hello Santa");
+        assertEquals("Hello Santa", vs.findValue("santa", String.class));
+        assertNull(vs.findValue("unknown", String.class));
     }
 
     public void testWarnAboutInvalidProperties() {
-        OgnlValueStack stack = createValueStack();
         MyAction action = new MyAction();
         action.setName("Don");
-        stack.push(action);
+        vs.push(action);
 
         // how to test the warning was logged?
-        assertEquals("Don", stack.findValue("name", String.class));
-        assertNull(stack.findValue("address", String.class));
+        assertEquals("Don", vs.findValue("name", String.class));
+        assertNull(vs.findValue("address", String.class));
         // should log warning
-        assertNull(stack.findValue("address.invalidProperty", String.class));
+        assertNull(vs.findValue("address.invalidProperty", String.class));
 
         // if country is null, OGNL throws an exception
         /*action.setAddress(new Address());
         stack.push(action);*/
         // should log warning
-        assertNull(stack.findValue("address.country.id", String.class));
-        assertNull(stack.findValue("address.country.name", String.class));
+        assertNull(vs.findValue("address.country.id", String.class));
+        assertNull(vs.findValue("address.country.name", String.class));
     }
 
     /**

Reply via email to