Add tests for tracing frame

This commit is contained in:
Natalia Ukhorskaya
2014-06-24 18:07:16 +04:00
parent 670e71bdd6
commit 6440884a40
31 changed files with 899 additions and 19 deletions
@@ -0,0 +1,23 @@
package frameAnonymousObject
fun main(args: Array<String>) {
val val1 = 1
val o = object {
val obProp = 1
fun run() {
foo {
//Breakpoint!
val1 + obProp
}
}
}
o.run()
}
fun foo(f: () -> Unit) {
f()
}
// PRINT_FRAME
@@ -0,0 +1,24 @@
package frameClassObject
fun main(args: Array<String>) {
A().test()
}
class A {
class object {
val prop = 1
}
fun test() {
foo {
//Breakpoint!
prop
}
}
}
fun foo(f: () -> Unit) {
f()
}
// PRINT_FRAME
@@ -0,0 +1,46 @@
package frameExtFunExtFun
fun main(args: Array<String>) {
Outer().run()
}
class A {
val aProp = 1
}
class Outer {
val outerProp = 1
fun A.foo() {
val valFoo = 1
class LocalClass {
val lcProp = 1
fun B.test() {
val valTest = 1
lambda {
//Breakpoint!
outerProp + aProp + lcProp + bProp + valFoo + valTest
}
}
fun run() {
B().test()
}
}
LocalClass().run()
}
fun run() {
A().foo()
}
}
class B {
val bProp = 1
}
fun lambda(f: () -> Unit) {
f()
}
// PRINT_FRAME
@@ -0,0 +1,16 @@
package frameExtensionFun
fun main(args: Array<String>) {
A().foo()
}
class A {
val prop = 1
}
fun A.foo() {
//Breakpoint!
prop
}
// PRINT_FRAME
@@ -0,0 +1,20 @@
package frameInnerClass
fun main(args: Array<String>) {
A().Inner().test()
}
class A {
val prop1 = 1
inner class Inner {
val prop2 = 1
fun test() {
//Breakpoint!
prop1 + prop2
}
}
}
// PRINT_FRAME
@@ -0,0 +1,18 @@
package frameInnerLambda
fun main(args: Array<String>) {
val val1 = 1
foo {
val val2 = 1
foo {
//Breakpoint!
val1 + val2
}
}
}
fun foo(f: () -> Unit) {
f()
}
// PRINT_FRAME
@@ -0,0 +1,15 @@
package frameLambda
fun main(args: Array<String>) {
val val1 = 1
foo {
//Breakpoint!
val1
}
}
fun foo(f: () -> Unit) {
f()
}
// PRINT_FRAME
@@ -0,0 +1,18 @@
package frameObject
fun main(args: Array<String>) {
foo {
//Breakpoint!
O.obProp
}
}
object O {
val obProp = 1
}
fun foo(f: () -> Unit) {
f()
}
// PRINT_FRAME
@@ -0,0 +1,15 @@
package frameSharedVar
fun main(args: Array<String>) {
var var1 = 1
foo {
//Breakpoint!
var1 = 2
}
}
fun foo(f: () -> Unit) {
f()
}
// PRINT_FRAME
@@ -0,0 +1,11 @@
package frameSimple
val topVal1 = 1
fun main(args: Array<String>) {
val val1 = 1
//Breakpoint!
val1 + topVal1
}
// PRINT_FRAME
@@ -0,0 +1,24 @@
package frameThis0
fun main(args: Array<String>) {
A().test()
}
class A {
val prop1 = 1
fun test() {
val val1 = 1
foo {
val val2 = 1
//Breakpoint!
prop1 + val1 + val2
}
}
}
fun foo(f: () -> Unit) {
f()
}
// PRINT_FRAME
@@ -0,0 +1,31 @@
package frameThis0Ext
fun main(args: Array<String>) {
A().test()
}
class A {
val prop1 = 1
fun AExt.testExt() {
val val1 = 1
foo {
//Breakpoint!
prop1 + prop2 + val1
}
}
fun test() {
AExt().testExt()
}
}
class AExt {
val prop2 = 1
}
fun foo(f: () -> Unit) {
f()
}
// PRINT_FRAME
@@ -0,0 +1,26 @@
package frameThis0This0
fun main(args: Array<String>) {
A().test()
}
class A {
val prop1 = 1
fun test() {
val val1 = 1
foo {
val val2 = 1
foo {
//Breakpoint!
prop1 + val1 + val2
}
}
}
}
fun foo(f: () -> Unit) {
f()
}
// PRINT_FRAME