skitching 2004/11/29 20:36:46 Modified: digester/src/test/org/apache/commons/digester SetNestedPropertiesRuleTestCase.java Log: Added test case for bugzilla#31393, reported by James Pine. SetNestedPropertiesRule fails when invoked re-entrantly. Revision Changes Path 1.4 +33 -1 jakarta-commons/digester/src/test/org/apache/commons/digester/SetNestedPropertiesRuleTestCase.java Index: SetNestedPropertiesRuleTestCase.java =================================================================== RCS file: /home/cvs/jakarta-commons/digester/src/test/org/apache/commons/digester/SetNestedPropertiesRuleTestCase.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- SetNestedPropertiesRuleTestCase.java 7 May 2004 01:29:59 -0000 1.3 +++ SetNestedPropertiesRuleTestCase.java 30 Nov 2004 04:36:46 -0000 1.4 @@ -330,6 +330,38 @@ assertNotNull(bean); } + /** + * Test that the rule works in a sane manner when the associated pattern + * is a wildcard such that the rule matches one of its own child elements. + * <p> + * See bugzilla entry 31393. + */ + public void testRecursiveNestedProperties() + throws SAXException, IOException { + + String testXml = + "<?xml version='1.0'?>" + + "<testbean>" + + "<beta>BETA BODY</beta>" + + "<testbean>" + + "<beta>BETA BODY</beta>" + + "</testbean>" + + "</testbean>"; + + Reader reader = new StringReader(testXml); + + // going to be setting properties on a SimpleTestBean + digester.addObjectCreate("*/testbean", + "org.apache.commons.digester.SimpleTestBean"); + + SetNestedPropertiesRule rule = new SetNestedPropertiesRule(); + rule.setAllowUnknownChildElements(true); + digester.addRule("*/testbean", rule); + + SimpleTestBean bean = (SimpleTestBean) digester.parse(reader); + assertNotNull(bean); + } + /** * Get input stream from [EMAIL PROTECTED] #TEST_XML}.
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]