Slicer: Sort tree nodes to produce stable test data

This commit is contained in:
Alexey Sedunov
2018-02-05 16:11:03 +03:00
parent adca8eb7f1
commit c602c51642
31 changed files with 87 additions and 82 deletions
@@ -2,5 +2,5 @@
8 val x = <bold>a.foo()</bold>
4 fun <bold>foo() = 1</bold>
4 fun foo() = <bold>1</bold>
13 return <bold>4</bold>;
3 return <bold>2</bold>;
13 return <bold>4</bold>;
@@ -1,7 +1,7 @@
4 fun foo(n: Int, <bold>s: String = "???"</bold>) {
4 FunParamererWithDefaultKt.foo(1, <bold>"2"</bold>):
4 fun foo(n: Int, s: String = <bold>"???"</bold>) {
10 foo(1, <bold>"2"</bold>)
4 FunParamererWithDefaultKt.foo(1, <bold>"2"</bold>):
11 foo(1, s = <bold>"2"</bold>)
12 foo(n = 1, s = <bold>"2"</bold>)
13 foo(s = <bold>"2"</bold>, n = 1)
+1 -1
View File
@@ -1,5 +1,4 @@
5 fun <bold>bar(a: Int): Int = foo(a) { if (it > 0) it else return 0 }</bold>
5 fun bar(a: Int): Int = foo(a) { if (it > 0) it else return <bold>0</bold> }
5 fun bar(a: Int): Int = <bold>foo(a) { if (it > 0) it else return 0 }</bold>
3 inline fun <bold>foo(a: Int, f: (Int) -> Int) = f(a)</bold>
3 inline fun foo(a: Int, f: (Int) -> Int) = <bold>f(a)</bold>
@@ -9,3 +8,4 @@
5 fun bar(a: Int): Int = foo(a) <bold>{ if (it > 0) it else return 0 }</bold>
5 fun bar(a: Int): Int = foo(a) { <bold>if (it > 0) it else return 0</bold> }
5 fun bar(a: Int): Int = foo(a) { if (it > 0) <bold>it</bold> else return 0 }
5 fun bar(a: Int): Int = foo(a) { if (it > 0) it else return <bold>0</bold> }
@@ -6,13 +6,14 @@
7 else -> <bold>null</bold>
[NotNull Values]
6 n < 0 -> <bold>"-"</bold>
9 return <bold>s</bold>
4 var <bold>s = when {</bold>
4 var s = <bold>when {</bold>
6 n < 0 -> <bold>"-"</bold>
5 n > 0 -> <bold>"+"</bold>
9 return <bold>s</bold>
4 var <bold>s = when {</bold>
4 var s = <bold>when {</bold>
5 n > 0 -> <bold>"+"</bold>
6 n < 0 -> <bold>"-"</bold>
9 return <bold>s</bold>
4 var <bold>s = when {</bold>
4 var s = <bold>when {</bold>
6 n < 0 -> <bold>"-"</bold>
@@ -1,7 +1,7 @@
17 val <bold>y = b.foo()</bold>
17 val y = <bold>b.foo()</bold>
3 return <bold>5</bold>;
8 override fun <bold>foo() = 2</bold>
8 override fun foo() = <bold>2</bold>
3 return <bold>5</bold>;
12 override fun <bold>foo() = 3</bold>
12 override fun foo() = <bold>3</bold>
@@ -1,6 +1,6 @@
15 val <bold>y = b.foo</bold>
15 val y = <bold>b.foo</bold>
7 open class B(override val <bold>foo: Int</bold>) : A()
3 return <bold>5</bold>;
7 open class B(override val <bold>foo: Int</bold>) : A()
10 override val <bold>foo = 3</bold>
10 override val foo = <bold>3</bold>
@@ -1,7 +1,7 @@
20 val <bold>y = b.foo</bold>
20 val y = <bold>b.foo</bold>
3 return <bold>5</bold>;
9 override val <bold>foo: Int</bold>
10 get() = <bold>2</bold>
3 return <bold>5</bold>;
14 override val <bold>foo: Int</bold>
15 get() = <bold>3</bold>
@@ -1,7 +1,7 @@
17 val <bold>y = b.foo</bold>
17 val y = <bold>b.foo</bold>
3 return <bold>5</bold>;
8 override val <bold>foo = 2</bold>
8 override val foo = <bold>2</bold>
3 return <bold>5</bold>;
12 override val <bold>foo = 3</bold>
12 override val foo = <bold>3</bold>
@@ -1,17 +1,17 @@
3 open class A @JvmOverloads constructor(<bold>n: Int</bold>, s: String = "???")
3 super(<bold>n</bold>, s);
2 D(int <bold>n</bold>, String s) {
5 class B1: A(<bold>1</bold>)
7 super(<bold>n</bold>);
6 D(int <bold>n</bold>) {
6 class B2: A(<bold>1</bold>, "2")
7 class B3: A(<bold>1</bold>, s = "2")
11 new A(<bold>1</bold>);
8 class B4: A(n = <bold>1</bold>, s = "2")
12 new A(<bold>1</bold>, "2");
9 class B5: A(s = "2", n = <bold>1</bold>)
12 A(<bold>1</bold>)
13 A(<bold>1</bold>, "2")
14 A(<bold>1</bold>, s = "2")
15 A(n = <bold>1</bold>, s = "2")
16 A(s = "2", n = <bold>1</bold>)
3 super(<bold>n</bold>, s);
2 D(int <bold>n</bold>, String s) {
7 super(<bold>n</bold>);
6 D(int <bold>n</bold>) {
11 new A(<bold>1</bold>);
12 new A(<bold>1</bold>, "2");
@@ -1,13 +1,13 @@
3 open class A @JvmOverloads constructor(n: Int, <bold>s: String = "???"</bold>)
3 super(n, <bold>s</bold>);
2 D(int n, String <bold>s</bold>) {
3 open class A @JvmOverloads constructor(n: Int, s: String = <bold>"???"</bold>)
6 class B2: A(1, <bold>"2"</bold>)
7 class B3: A(1, s = <bold>"2"</bold>)
8 class B4: A(n = 1, s = <bold>"2"</bold>)
12 new A(1, <bold>"2"</bold>);
9 class B5: A(s = <bold>"2"</bold>, n = 1)
13 A(1, <bold>"2"</bold>)
14 A(1, s = <bold>"2"</bold>)
15 A(n = 1, s = <bold>"2"</bold>)
16 A(s = <bold>"2"</bold>, n = 1)
3 super(n, <bold>s</bold>);
2 D(int n, String <bold>s</bold>) {
12 new A(1, <bold>"2"</bold>);
@@ -1,17 +1,17 @@
4 @JvmOverloads constructor(<bold>n: Int</bold>, s: String = "???")
3 super(<bold>n</bold>, s);
2 D(int <bold>n</bold>, String s) {
7 class B1: A(<bold>1</bold>)
7 super(<bold>n</bold>);
6 D(int <bold>n</bold>) {
8 class B2: A(<bold>1</bold>, "2")
9 class B3: A(<bold>1</bold>, s = "2")
11 new A(<bold>1</bold>);
10 class B4: A(n = <bold>1</bold>, s = "2")
12 new A(<bold>1</bold>, "2");
11 class B5: A(s = "2", n = <bold>1</bold>)
14 A(<bold>1</bold>)
15 A(<bold>1</bold>, "2")
16 A(<bold>1</bold>, s = "2")
17 A(n = <bold>1</bold>, s = "2")
18 A(s = "2", n = <bold>1</bold>)
3 super(<bold>n</bold>, s);
2 D(int <bold>n</bold>, String s) {
7 super(<bold>n</bold>);
6 D(int <bold>n</bold>) {
11 new A(<bold>1</bold>);
12 new A(<bold>1</bold>, "2");
@@ -1,13 +1,13 @@
4 @JvmOverloads constructor(n: Int, <bold>s: String = "???"</bold>)
3 super(n, <bold>s</bold>);
2 D(int n, String <bold>s</bold>) {
4 @JvmOverloads constructor(n: Int, s: String = <bold>"???"</bold>)
8 class B2: A(1, <bold>"2"</bold>)
9 class B3: A(1, s = <bold>"2"</bold>)
12 new A(1, <bold>"2"</bold>);
10 class B4: A(n = 1, s = <bold>"2"</bold>)
11 class B5: A(s = <bold>"2"</bold>, n = 1)
15 A(1, <bold>"2"</bold>)
16 A(1, s = <bold>"2"</bold>)
17 A(n = 1, s = <bold>"2"</bold>)
18 A(s = <bold>"2"</bold>, n = 1)
3 super(n, <bold>s</bold>);
2 D(int n, String <bold>s</bold>) {
12 new A(1, <bold>"2"</bold>);
+1 -1
View File
@@ -1,4 +1,4 @@
3 var <bold>foo: Int = 1</bold>
3 var foo: Int = <bold>1</bold>
4 TopLevelVarKt.setFoo(<bold>3</bold>);
7 foo = <bold>2</bold>
4 TopLevelVarKt.setFoo(<bold>3</bold>);
+2 -2
View File
@@ -1,6 +1,6 @@
3 open class A(val <bold>n: Int</bold>)
5 class B : A(<bold>1</bold>)
8 val z = A(<bold>2</bold>).n
3 super(<bold>n</bold>);
2 D(int <bold>n</bold>) {
5 class B : A(<bold>1</bold>)
8 val z = A(<bold>2</bold>).n
7 A a = new A(<bold>3</bold>);
+3 -3
View File
@@ -1,10 +1,10 @@
3 open class A(var <bold>n: Int</bold>) {
20 class B : A(<bold>1</bold>)
23 val z = A(<bold>2</bold>).n
24 A(<bold>3</bold>).n = 2
3 super(<bold>n</bold>);
2 D(int <bold>n</bold>) {
7 A a = new A(<bold>3</bold>);
9 a.setN(<bold>4</bold>);
16 n = <bold>1</bold>
20 class B : A(<bold>1</bold>)
23 val z = A(<bold>2</bold>).n
24 A(<bold>3</bold>).n = 2
24 A(3).n = <bold>2</bold>