Polishing
This commit is contained in:
parent
f532607d4b
commit
9aefa0334f
|
|
@ -175,6 +175,7 @@ public class SpelReproTests extends ExpressionTestCase {
|
|||
return sb.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "instance";
|
||||
}
|
||||
|
|
@ -559,24 +560,24 @@ public class SpelReproTests extends ExpressionTestCase {
|
|||
// ---
|
||||
|
||||
private void checkTemplateParsing(String expression, String expectedValue) throws Exception {
|
||||
checkTemplateParsing(expression,TemplateExpressionParsingTests.DEFAULT_TEMPLATE_PARSER_CONTEXT, expectedValue);
|
||||
checkTemplateParsing(expression, TemplateExpressionParsingTests.DEFAULT_TEMPLATE_PARSER_CONTEXT, expectedValue);
|
||||
}
|
||||
|
||||
private void checkTemplateParsing(String expression, ParserContext context, String expectedValue) throws Exception {
|
||||
SpelExpressionParser parser = new SpelExpressionParser();
|
||||
Expression expr = parser.parseExpression(expression,context);
|
||||
assertEquals(expectedValue,expr.getValue(TestScenarioCreator.getTestEvaluationContext()));
|
||||
assertEquals(expectedValue, expr.getValue(TestScenarioCreator.getTestEvaluationContext()));
|
||||
}
|
||||
|
||||
private void checkTemplateParsingError(String expression,String expectedMessage) throws Exception {
|
||||
checkTemplateParsingError(expression, TemplateExpressionParsingTests.DEFAULT_TEMPLATE_PARSER_CONTEXT,expectedMessage);
|
||||
private void checkTemplateParsingError(String expression, String expectedMessage) throws Exception {
|
||||
checkTemplateParsingError(expression, TemplateExpressionParsingTests.DEFAULT_TEMPLATE_PARSER_CONTEXT, expectedMessage);
|
||||
}
|
||||
|
||||
private void checkTemplateParsingError(String expression,ParserContext context, String expectedMessage) throws Exception {
|
||||
private void checkTemplateParsingError(String expression, ParserContext context, String expectedMessage) throws Exception {
|
||||
SpelExpressionParser parser = new SpelExpressionParser();
|
||||
try {
|
||||
parser.parseExpression(expression,context);
|
||||
fail("Should have failed");
|
||||
parser.parseExpression(expression, context);
|
||||
fail("Should have failed with message: " + expectedMessage);
|
||||
}
|
||||
catch (Exception ex) {
|
||||
if (!ex.getMessage().equals(expectedMessage)) {
|
||||
|
|
@ -587,17 +588,14 @@ public class SpelReproTests extends ExpressionTestCase {
|
|||
}
|
||||
|
||||
private static final ParserContext DOLLARSQUARE_TEMPLATE_PARSER_CONTEXT = new ParserContext() {
|
||||
|
||||
@Override
|
||||
public String getExpressionPrefix() {
|
||||
return "$[";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getExpressionSuffix() {
|
||||
return "]";
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isTemplate() {
|
||||
return true;
|
||||
|
|
@ -826,6 +824,7 @@ public class SpelReproTests extends ExpressionTestCase {
|
|||
a=s;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "D("+a+")";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2002-2012 the original author or authors.
|
||||
* Copyright 2002-2013 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
@ -16,12 +16,8 @@
|
|||
|
||||
package org.springframework.expression.spel;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import org.springframework.expression.EvaluationContext;
|
||||
import org.springframework.expression.EvaluationException;
|
||||
import org.springframework.expression.Expression;
|
||||
|
|
@ -32,6 +28,8 @@ import org.springframework.expression.common.TemplateParserContext;
|
|||
import org.springframework.expression.spel.standard.SpelExpressionParser;
|
||||
import org.springframework.expression.spel.support.StandardEvaluationContext;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
/**
|
||||
* @author Andy Clement
|
||||
* @author Juergen Hoeller
|
||||
|
|
@ -68,8 +66,8 @@ public class TemplateExpressionParsingTests extends ExpressionTestCase {
|
|||
}
|
||||
};
|
||||
|
||||
@Test
|
||||
|
||||
@Test
|
||||
public void testParsingSimpleTemplateExpression01() throws Exception {
|
||||
SpelExpressionParser parser = new SpelExpressionParser();
|
||||
Expression expr = parser.parseExpression("hello ${'world'}", DEFAULT_TEMPLATE_PARSER_CONTEXT);
|
||||
|
|
@ -148,19 +146,22 @@ public class TemplateExpressionParsingTests extends ExpressionTestCase {
|
|||
try {
|
||||
ex.setValue(ctx, null);
|
||||
fail();
|
||||
} catch (EvaluationException ee) {
|
||||
}
|
||||
catch (EvaluationException ee) {
|
||||
// success
|
||||
}
|
||||
try {
|
||||
ex.setValue((Object)null, null);
|
||||
fail();
|
||||
} catch (EvaluationException ee) {
|
||||
}
|
||||
catch (EvaluationException ee) {
|
||||
// success
|
||||
}
|
||||
try {
|
||||
ex.setValue(ctx, null, null);
|
||||
fail();
|
||||
} catch (EvaluationException ee) {
|
||||
}
|
||||
catch (EvaluationException ee) {
|
||||
// success
|
||||
}
|
||||
}
|
||||
|
|
@ -192,15 +193,17 @@ public class TemplateExpressionParsingTests extends ExpressionTestCase {
|
|||
try {
|
||||
ex = parser.parseExpression("hello ${listOfNumbersUpToTen.$[#this<5]} ${listOfNumbersUpToTen.$[#this>5] world",DEFAULT_TEMPLATE_PARSER_CONTEXT);
|
||||
fail("Should have failed");
|
||||
} catch (ParseException pe) {
|
||||
assertEquals("No ending suffix '}' for expression starting at character 41: ${listOfNumbersUpToTen.$[#this>5] world",pe.getMessage());
|
||||
}
|
||||
catch (ParseException pe) {
|
||||
assertEquals("No ending suffix '}' for expression starting at character 41: ${listOfNumbersUpToTen.$[#this>5] world", pe.getMessage());
|
||||
}
|
||||
|
||||
try {
|
||||
ex = parser.parseExpression("hello ${listOfNumbersUpToTen.$[#root.listOfNumbersUpToTen.$[#this%2==1==3]} world",DEFAULT_TEMPLATE_PARSER_CONTEXT);
|
||||
fail("Should have failed");
|
||||
} catch (ParseException pe) {
|
||||
assertEquals("Found closing '}' at position 74 but most recent opening is '[' at position 30",pe.getMessage());
|
||||
}
|
||||
catch (ParseException pe) {
|
||||
assertEquals("Found closing '}' at position 74 but most recent opening is '[' at position 30", pe.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -234,21 +237,24 @@ public class TemplateExpressionParsingTests extends ExpressionTestCase {
|
|||
try {
|
||||
parser.parseExpression("hello ${'world'", DEFAULT_TEMPLATE_PARSER_CONTEXT);
|
||||
fail("Should have failed");
|
||||
} catch (ParseException pe) {
|
||||
assertEquals("No ending suffix '}' for expression starting at character 6: ${'world'",pe.getMessage());
|
||||
}
|
||||
catch (ParseException pe) {
|
||||
assertEquals("No ending suffix '}' for expression starting at character 6: ${'world'", pe.getMessage());
|
||||
assertEquals("hello ${'world'",pe.getExpressionString());
|
||||
}
|
||||
try {
|
||||
parser.parseExpression("hello ${'wibble'${'world'}", DEFAULT_TEMPLATE_PARSER_CONTEXT);
|
||||
fail("Should have failed");
|
||||
} catch (ParseException pe) {
|
||||
assertEquals("No ending suffix '}' for expression starting at character 6: ${'wibble'${'world'}",pe.getMessage());
|
||||
}
|
||||
catch (ParseException pe) {
|
||||
assertEquals("No ending suffix '}' for expression starting at character 6: ${'wibble'${'world'}", pe.getMessage());
|
||||
}
|
||||
try {
|
||||
parser.parseExpression("hello ${} world", DEFAULT_TEMPLATE_PARSER_CONTEXT);
|
||||
fail("Should have failed");
|
||||
} catch (ParseException pe) {
|
||||
assertEquals("No expression defined within delimiter '${}' at character 6",pe.getMessage());
|
||||
}
|
||||
catch (ParseException pe) {
|
||||
assertEquals("No expression defined within delimiter '${}' at character 6", pe.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue