Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Meiracle
spring-framework
提交
7b3f53de
S
spring-framework
项目概览
Meiracle
/
spring-framework
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
spring-framework
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
7b3f53de
编写于
12月 04, 2020
作者:
S
Sam Brannen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Polish SpelParserTests
上级
ec7425c1
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
28 addition
and
30 deletion
+28
-30
spring-expression/src/test/java/org/springframework/expression/spel/standard/SpelParserTests.java
...ngframework/expression/spel/standard/SpelParserTests.java
+28
-30
未找到文件。
spring-expression/src/test/java/org/springframework/expression/spel/standard/SpelParserTests.java
浏览文件 @
7b3f53de
/*
* Copyright 2002-20
19
the original author or authors.
* Copyright 2002-20
20
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.
...
...
@@ -36,10 +36,10 @@ import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
* @author Andy Clement
* @author Juergen Hoeller
*/
public
class
SpelParserTests
{
class
SpelParserTests
{
@Test
public
void
theMostBasic
()
{
void
theMostBasic
()
{
SpelExpressionParser
parser
=
new
SpelExpressionParser
();
SpelExpression
expr
=
parser
.
parseRaw
(
"2"
);
assertThat
(
expr
).
isNotNull
();
...
...
@@ -50,7 +50,7 @@ public class SpelParserTests {
}
@Test
public
void
valueType
()
{
void
valueType
()
{
SpelExpressionParser
parser
=
new
SpelExpressionParser
();
EvaluationContext
ctx
=
new
StandardEvaluationContext
();
Class
<?>
c
=
parser
.
parseRaw
(
"2"
).
getValueType
();
...
...
@@ -66,7 +66,7 @@ public class SpelParserTests {
}
@Test
public
void
whitespace
()
{
void
whitespace
()
{
SpelExpressionParser
parser
=
new
SpelExpressionParser
();
SpelExpression
expr
=
parser
.
parseRaw
(
"2 + 3"
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
5
);
...
...
@@ -79,7 +79,7 @@ public class SpelParserTests {
}
@Test
public
void
arithmeticPlus1
()
{
void
arithmeticPlus1
()
{
SpelExpressionParser
parser
=
new
SpelExpressionParser
();
SpelExpression
expr
=
parser
.
parseRaw
(
"2+2"
);
assertThat
(
expr
).
isNotNull
();
...
...
@@ -88,31 +88,30 @@ public class SpelParserTests {
}
@Test
public
void
arithmeticPlus2
()
{
void
arithmeticPlus2
()
{
SpelExpressionParser
parser
=
new
SpelExpressionParser
();
SpelExpression
expr
=
parser
.
parseRaw
(
"37+41"
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
78
);
}
@Test
public
void
arithmeticMultiply1
()
{
void
arithmeticMultiply1
()
{
SpelExpressionParser
parser
=
new
SpelExpressionParser
();
SpelExpression
expr
=
parser
.
parseRaw
(
"2*3"
);
assertThat
(
expr
).
isNotNull
();
assertThat
(
expr
.
getAST
()).
isNotNull
();
// printAst(expr.getAST(),0);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
6
);
}
@Test
public
void
arithmeticPrecedence1
()
{
void
arithmeticPrecedence1
()
{
SpelExpressionParser
parser
=
new
SpelExpressionParser
();
SpelExpression
expr
=
parser
.
parseRaw
(
"2*3+5"
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
11
);
}
@Test
public
void
generalExpressions
()
{
void
generalExpressions
()
{
assertThatExceptionOfType
(
SpelParseException
.
class
).
isThrownBy
(()
->
{
SpelExpressionParser
parser
=
new
SpelExpressionParser
();
parser
.
parseRaw
(
"new String"
);
...
...
@@ -161,38 +160,38 @@ public class SpelParserTests {
}
@Test
public
void
arithmeticPrecedence2
()
{
void
arithmeticPrecedence2
()
{
SpelExpressionParser
parser
=
new
SpelExpressionParser
();
SpelExpression
expr
=
parser
.
parseRaw
(
"2+3*5"
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
17
);
}
@Test
public
void
arithmeticPrecedence3
()
{
void
arithmeticPrecedence3
()
{
SpelExpression
expr
=
new
SpelExpressionParser
().
parseRaw
(
"3+10/2"
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
8
);
}
@Test
public
void
arithmeticPrecedence4
()
{
void
arithmeticPrecedence4
()
{
SpelExpression
expr
=
new
SpelExpressionParser
().
parseRaw
(
"10/2+3"
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
8
);
}
@Test
public
void
arithmeticPrecedence5
()
{
void
arithmeticPrecedence5
()
{
SpelExpression
expr
=
new
SpelExpressionParser
().
parseRaw
(
"(4+10)/2"
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
7
);
}
@Test
public
void
arithmeticPrecedence6
()
{
void
arithmeticPrecedence6
()
{
SpelExpression
expr
=
new
SpelExpressionParser
().
parseRaw
(
"(3+2)*2"
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
10
);
}
@Test
public
void
booleanOperators
()
{
void
booleanOperators
()
{
SpelExpression
expr
=
new
SpelExpressionParser
().
parseRaw
(
"true"
);
assertThat
(
expr
.
getValue
(
Boolean
.
class
)).
isEqualTo
(
Boolean
.
TRUE
);
expr
=
new
SpelExpressionParser
().
parseRaw
(
"false"
);
...
...
@@ -210,7 +209,7 @@ public class SpelParserTests {
}
@Test
public
void
booleanOperators_symbolic_spr9614
()
{
void
booleanOperators_symbolic_spr9614
()
{
SpelExpression
expr
=
new
SpelExpressionParser
().
parseRaw
(
"true"
);
assertThat
(
expr
.
getValue
(
Boolean
.
class
)).
isEqualTo
(
Boolean
.
TRUE
);
expr
=
new
SpelExpressionParser
().
parseRaw
(
"false"
);
...
...
@@ -228,7 +227,7 @@ public class SpelParserTests {
}
@Test
public
void
stringLiterals
()
{
void
stringLiterals
()
{
SpelExpression
expr
=
new
SpelExpressionParser
().
parseRaw
(
"'howdy'"
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
"howdy"
);
expr
=
new
SpelExpressionParser
().
parseRaw
(
"'hello '' world'"
);
...
...
@@ -236,13 +235,13 @@ public class SpelParserTests {
}
@Test
public
void
stringLiterals2
()
{
void
stringLiterals2
()
{
SpelExpression
expr
=
new
SpelExpressionParser
().
parseRaw
(
"'howdy'.substring(0,2)"
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
"ho"
);
}
@Test
public
void
testStringLiterals_DoubleQuotes_spr9620
()
{
void
testStringLiterals_DoubleQuotes_spr9620
()
{
SpelExpression
expr
=
new
SpelExpressionParser
().
parseRaw
(
"\"double quote: \"\".\""
);
assertThat
(
expr
.
getValue
()).
isEqualTo
(
"double quote: \"."
);
expr
=
new
SpelExpressionParser
().
parseRaw
(
"\"hello \"\" world\""
);
...
...
@@ -250,7 +249,7 @@ public class SpelParserTests {
}
@Test
public
void
testStringLiterals_DoubleQuotes_spr9620_2
()
{
void
testStringLiterals_DoubleQuotes_spr9620_2
()
{
assertThatExceptionOfType
(
SpelParseException
.
class
).
isThrownBy
(()
->
new
SpelExpressionParser
().
parseRaw
(
"\"double quote: \\\"\\\".\""
))
.
satisfies
(
ex
->
{
...
...
@@ -260,7 +259,7 @@ public class SpelParserTests {
}
@Test
public
void
positionalInformation
()
{
void
positionalInformation
()
{
SpelExpression
expr
=
new
SpelExpressionParser
().
parseRaw
(
"true and true or false"
);
SpelNode
rootAst
=
expr
.
getAST
();
OpOr
operatorOr
=
(
OpOr
)
rootAst
;
...
...
@@ -289,7 +288,7 @@ public class SpelParserTests {
}
@Test
public
void
tokenKind
()
{
void
tokenKind
()
{
TokenKind
tk
=
TokenKind
.
NOT
;
assertThat
(
tk
.
hasPayload
()).
isFalse
();
assertThat
(
tk
.
toString
()).
isEqualTo
(
"NOT(!)"
);
...
...
@@ -304,7 +303,7 @@ public class SpelParserTests {
}
@Test
public
void
token
()
{
void
token
()
{
Token
token
=
new
Token
(
TokenKind
.
NOT
,
0
,
3
);
assertThat
(
token
.
kind
).
isEqualTo
(
TokenKind
.
NOT
);
assertThat
(
token
.
startPos
).
isEqualTo
(
0
);
...
...
@@ -319,7 +318,7 @@ public class SpelParserTests {
}
@Test
public
void
exceptions
()
{
void
exceptions
()
{
ExpressionException
exprEx
=
new
ExpressionException
(
"test"
);
assertThat
(
exprEx
.
getSimpleMessage
()).
isEqualTo
(
"test"
);
assertThat
(
exprEx
.
toDetailedString
()).
isEqualTo
(
"test"
);
...
...
@@ -337,13 +336,13 @@ public class SpelParserTests {
}
@Test
public
void
parseMethodsOnNumbers
()
{
void
parseMethodsOnNumbers
()
{
checkNumber
(
"3.14.toString()"
,
"3.14"
,
String
.
class
);
checkNumber
(
"3.toString()"
,
"3"
,
String
.
class
);
}
@Test
public
void
numerics
()
{
void
numerics
()
{
checkNumber
(
"2"
,
2
,
Integer
.
class
);
checkNumber
(
"22"
,
22
,
Integer
.
class
);
checkNumber
(
"+22"
,
22
,
Integer
.
class
);
...
...
@@ -385,8 +384,7 @@ public class SpelParserTests {
private
void
checkNumberError
(
String
expression
,
SpelMessage
expectedMessage
)
{
SpelExpressionParser
parser
=
new
SpelExpressionParser
();
assertThatExceptionOfType
(
SpelParseException
.
class
).
isThrownBy
(()
->
parser
.
parseRaw
(
expression
))
assertThatExceptionOfType
(
SpelParseException
.
class
).
isThrownBy
(()
->
parser
.
parseRaw
(
expression
))
.
satisfies
(
ex
->
assertThat
(
ex
.
getMessageCode
()).
isEqualTo
(
expectedMessage
));
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录