Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
硅谷海盗
kotlin
提交
36ae75de
K
kotlin
项目概览
硅谷海盗
/
kotlin
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kotlin
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
36ae75de
编写于
4月 07, 2011
作者:
D
Dmitry Jemerov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
delete obsolete test (it's now fully covered by NamespaceGenTest)
上级
30d83492
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
0 addition
and
49 deletion
+0
-49
idea/tests/org/jetbrains/jet/codegen/ExpressionGenTest.java
idea/tests/org/jetbrains/jet/codegen/ExpressionGenTest.java
+0
-49
未找到文件。
idea/tests/org/jetbrains/jet/codegen/ExpressionGenTest.java
已删除
100644 → 0
浏览文件 @
30d83492
package
org.jetbrains.jet.codegen
;
import
com.intellij.codeInsight.daemon.LightDaemonAnalyzerTestCase
;
import
com.intellij.psi.util.PsiTreeUtil
;
import
org.jetbrains.jet.lang.psi.JetProperty
;
import
org.objectweb.asm.Type
;
import
org.objectweb.asm.util.TraceMethodVisitor
;
import
java.io.IOException
;
import
java.io.PrintWriter
;
import
java.io.StringWriter
;
/**
* @author max
*/
public
class
ExpressionGenTest
extends
LightDaemonAnalyzerTestCase
{
public
void
testIf
()
throws
Exception
{
checkCode
(
"if (false) else 20"
,
"LDC false\n"
+
"INVOKESTATIC java/lang/Boolean.valueOf (Z)Ljava/lang/Boolean;\n"
+
"INVOKEVIRTUAL java/lang/Boolean.booleanValue ()Z\n"
+
"IFNE L0\n"
+
"LDC 20\n"
+
"INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer;\n"
+
"POP\n"
+
"L0"
);
}
private
void
checkCode
(
String
expr
,
String
expectation
)
throws
IOException
{
configureFromFileText
(
"test.jet"
,
"val x = "
+
expr
);
JetProperty
p
=
PsiTreeUtil
.
getParentOfType
(
getFile
().
findElementAt
(
0
),
JetProperty
.
class
);
TraceMethodVisitor
trace
=
new
TraceMethodVisitor
();
p
.
getInitializer
().
accept
(
new
ExpressionCodegen
(
trace
,
null
,
null
,
new
FrameMap
(),
new
JetTypeMapper
(
null
),
Type
.
VOID_TYPE
));
StringWriter
out
=
new
StringWriter
();
trace
.
print
(
new
PrintWriter
(
out
));
assertEquals
(
trimLines
(
expectation
),
trimLines
(
out
.
getBuffer
().
toString
()));
}
private
static
String
trimLines
(
String
s
)
{
StringBuilder
b
=
new
StringBuilder
();
for
(
String
line
:
s
.
split
(
"\\n"
))
{
b
.
append
(
line
.
trim
()).
append
(
'\n'
);
}
return
b
.
toString
();
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录