~ubuntu-branches/debian/sid/tomcat6/sid

« back to all changes in this revision

Viewing changes to test/org/apache/el/TestELEvaluation.java

  • Committer: Package Import Robot
  • Author(s): Emmanuel Bourg
  • Date: 2014-05-22 10:03:04 UTC
  • mfrom: (1.2.11)
  • Revision ID: package-import@ubuntu.com-20140522100304-mihmp51mlvi4mr0m
Tags: 6.0.41-1
* New upstream release.
  - Refreshed the patches

Show diffs side-by-side

added added

removed removed

Lines of Context:
73
73
        assertEquals("many", evaluateExpression(
74
74
                "${0 lt 2 ? 1 lt 2 ? 'many': 'one': 'none'}"));
75
75
    }
76
 
    
77
 
    
 
76
 
 
77
 
78
78
    public void testParserBug45511() {
79
79
        // Test cases provided by OP
80
80
        assertEquals("true", evaluateExpression("${empty ('')}"));
102
102
        assertEquals("\\", evaluateExpression("\\"));
103
103
        assertEquals("$", evaluateExpression("$"));
104
104
        assertEquals("#", evaluateExpression("#"));
105
 
        assertEquals("\\$", evaluateExpression("\\$"));
106
 
        assertEquals("\\#", evaluateExpression("\\#"));
107
 
        assertEquals("\\\\$", evaluateExpression("\\\\$"));
108
 
        assertEquals("\\\\#", evaluateExpression("\\\\#"));
 
105
        assertEquals("$", evaluateExpression("\\$"));
 
106
        assertEquals("#", evaluateExpression("\\#"));
 
107
        assertEquals("\\$", evaluateExpression("\\\\$"));
 
108
        assertEquals("\\#", evaluateExpression("\\\\#"));
109
109
        assertEquals("${", evaluateExpression("\\${"));
110
110
        assertEquals("#{", evaluateExpression("\\#{"));
111
111
        assertEquals("\\${", evaluateExpression("\\\\${"));
112
112
        assertEquals("\\#{", evaluateExpression("\\\\#{"));
 
113
 
 
114
        // '\' is only an escape for '$' and '#'.
 
115
        assertEquals("$", evaluateExpression("\\$"));
 
116
        assertEquals("${", evaluateExpression("\\${"));
 
117
        assertEquals("$a", evaluateExpression("\\$a"));
 
118
        assertEquals("\\a", evaluateExpression("\\a"));
 
119
        assertEquals("\\\\", evaluateExpression("\\\\"));
113
120
    }
114
121
 
115
122
    public void testParserStringLiteral() {
171
178
        assertTrue(null == null);
172
179
    }
173
180
 
 
181
    /**
 
182
     * Test mixing ${...} and #{...} in the same expression.
 
183
     */
 
184
    public void testMixedTypes() {
 
185
        // Mixing types should throw an error
 
186
        Exception e = null;
 
187
        try {
 
188
            evaluateExpression("${1+1}#{1+1}");
 
189
        } catch (ELException el) {
 
190
            e = el;
 
191
        }
 
192
        assertNotNull(e);
 
193
    }
 
194
 
174
195
    // ************************************************************************
175
196
 
176
197
    private String evaluateExpression(String expression) {