Skip to content

Commit 131e1c1

Browse files
authored
Cleanup tests (#260)
1 parent 62f8400 commit 131e1c1

31 files changed

+354
-357
lines changed

usvm-ts/src/test/kotlin/org/usvm/samples/And.kt

Lines changed: 50 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,10 @@ private fun EtsMethodParameter.toRef(): EtsParameterRef {
4646

4747
class And : TsMethodTestRunner() {
4848

49+
private val className = this::class.simpleName!!
50+
4951
override val scene: EtsScene = run {
50-
val name = "And.ts"
52+
val name = "$className.ts"
5153
val path = getResourcePath("/samples/$name")
5254
val file = loadEtsFileAutoConvert(path)
5355
EtsScene(listOf(file))
@@ -58,13 +60,13 @@ class And : TsMethodTestRunner() {
5860

5961
@Test
6062
fun `test andOfBooleanAndBoolean`() {
61-
val method = getMethod("And", "andOfBooleanAndBoolean")
63+
val method = getMethod(className, "andOfBooleanAndBoolean")
6264
discoverProperties<TsValue.TsBoolean, TsValue.TsBoolean, TsValue.TsNumber>(
6365
method = method,
64-
{ a, b, r -> a.value && b.value && r.number == 1.0 },
65-
{ a, b, r -> a.value && !b.value && r.number == 2.0 },
66-
{ a, b, r -> !a.value && b.value && r.number == 3.0 },
67-
{ a, b, r -> !a.value && !b.value && r.number == 4.0 },
66+
{ a, b, r -> a.value && b.value && (r.number == 1.0) },
67+
{ a, b, r -> a.value && !b.value && (r.number == 2.0) },
68+
{ a, b, r -> !a.value && b.value && (r.number == 3.0) },
69+
{ a, b, r -> !a.value && !b.value && (r.number == 4.0) },
6870
)
6971
}
7072

@@ -109,16 +111,16 @@ class And : TsMethodTestRunner() {
109111

110112
discoverProperties<TsValue.TsBoolean, TsValue.TsBoolean, TsValue.TsNumber>(
111113
method = method,
112-
{ a, b, r -> a.value && b.value && r.number == 1.0 },
113-
{ a, b, r -> a.value && !b.value && r.number == 2.0 },
114-
{ a, b, r -> !a.value && b.value && r.number == 3.0 },
115-
{ a, b, r -> !a.value && !b.value && r.number == 4.0 },
114+
{ a, b, r -> a.value && b.value && (r.number == 1.0) },
115+
{ a, b, r -> a.value && !b.value && (r.number == 2.0) },
116+
{ a, b, r -> !a.value && b.value && (r.number == 3.0) },
117+
{ a, b, r -> !a.value && !b.value && (r.number == 4.0) },
116118
)
117119
}
118120

119121
@Test
120122
fun `test andOfNumberAndNumber`() {
121-
// val method = getMethod("And", "andOfNumberAndNumber")
123+
// val method = getMethod(className, "andOfNumberAndNumber")
122124
//
123125
// andOfNumberAndNumber(a: number, b: number): number {
124126
// if (a && b) return 1
@@ -234,21 +236,21 @@ class And : TsMethodTestRunner() {
234236

235237
discoverProperties<TsValue.TsNumber, TsValue.TsNumber, TsValue.TsNumber>(
236238
method = method,
237-
{ a, b, r -> isTruthy(a) && isTruthy(b) && r.number == 1.0 },
238-
{ a, b, r -> isTruthy(a) && b.number.isNaN() && r.number == 2.0 },
239-
{ a, b, r -> isTruthy(a) && b.number == 0.0 && r.number == 3.0 },
240-
{ a, b, r -> a.number.isNaN() && isTruthy(b) && r.number == 4.0 },
241-
{ a, b, r -> a.number.isNaN() && b.number.isNaN() && r.number == 5.0 },
242-
{ a, b, r -> a.number.isNaN() && b.number == 0.0 && r.number == 6.0 },
243-
{ a, b, r -> a.number == 0.0 && isTruthy(b) && r.number == 7.0 },
244-
{ a, b, r -> a.number == 0.0 && b.number.isNaN() && r.number == 8.0 },
245-
{ a, b, r -> a.number == 0.0 && b.number == 0.0 && r.number == 9.0 },
239+
{ a, b, r -> isTruthy(a) && isTruthy(b) && (r.number == 1.0) },
240+
{ a, b, r -> isTruthy(a) && b.number.isNaN() && (r.number == 2.0) },
241+
{ a, b, r -> isTruthy(a) && (b.number == 0.0) && (r.number == 3.0) },
242+
{ a, b, r -> a.number.isNaN() && isTruthy(b) && (r.number == 4.0) },
243+
{ a, b, r -> a.number.isNaN() && b.number.isNaN() && (r.number == 5.0) },
244+
{ a, b, r -> a.number.isNaN() && (b.number == 0.0) && (r.number == 6.0) },
245+
{ a, b, r -> (a.number == 0.0) && isTruthy(b) && (r.number == 7.0) },
246+
{ a, b, r -> (a.number == 0.0) && b.number.isNaN() && (r.number == 8.0) },
247+
{ a, b, r -> (a.number == 0.0) && (b.number == 0.0) && (r.number == 9.0) },
246248
)
247249
}
248250

249251
@Test
250252
fun `test andOfBooleanAndNumber`() {
251-
// val method = getMethod("And", "andOfBooleanAndNumber")
253+
// val method = getMethod(className, "andOfBooleanAndNumber")
252254
//
253255
// andOfBooleanAndNumber(a: boolean, b: number): number {
254256
// if (a && b) return 1
@@ -337,18 +339,18 @@ class And : TsMethodTestRunner() {
337339

338340
discoverProperties<TsValue.TsBoolean, TsValue.TsNumber, TsValue.TsNumber>(
339341
method = method,
340-
{ a, b, r -> a.value && isTruthy(b) && r.number == 1.0 },
341-
{ a, b, r -> a.value && b.number.isNaN() && r.number == 2.0 },
342-
{ a, b, r -> a.value && b.number == 0.0 && r.number == 3.0 },
343-
{ a, b, r -> !a.value && isTruthy(b) && r.number == 4.0 },
344-
{ a, b, r -> !a.value && b.number.isNaN() && r.number == 5.0 },
345-
{ a, b, r -> !a.value && b.number == 0.0 && r.number == 6.0 },
342+
{ a, b, r -> a.value && isTruthy(b) && (r.number == 1.0) },
343+
{ a, b, r -> a.value && b.number.isNaN() && (r.number == 2.0) },
344+
{ a, b, r -> a.value && (b.number == 0.0) && (r.number == 3.0) },
345+
{ a, b, r -> !a.value && isTruthy(b) && (r.number == 4.0) },
346+
{ a, b, r -> !a.value && b.number.isNaN() && (r.number == 5.0) },
347+
{ a, b, r -> !a.value && (b.number == 0.0) && (r.number == 6.0) },
346348
)
347349
}
348350

349351
@Test
350352
fun `test andOfNumberAndBoolean`() {
351-
// val method = getMethod("And", "andOfNumberAndBoolean")
353+
// val method = getMethod(className, "andOfNumberAndBoolean")
352354
//
353355
// andOfNumberAndBoolean(a: number, b: boolean): number {
354356
// if (a && b) return 1
@@ -437,74 +439,74 @@ class And : TsMethodTestRunner() {
437439

438440
discoverProperties<TsValue.TsNumber, TsValue.TsBoolean, TsValue.TsNumber>(
439441
method = method,
440-
{ a, b, r -> isTruthy(a) && b.value && r.number == 1.0 },
441-
{ a, b, r -> isTruthy(a) && !b.value && r.number == 2.0 },
442-
{ a, b, r -> a.number.isNaN() && b.value && r.number == 3.0 },
443-
{ a, b, r -> a.number.isNaN() && !b.value && r.number == 4.0 },
444-
{ a, b, r -> a.number == 0.0 && b.value && r.number == 5.0 },
445-
{ a, b, r -> a.number == 0.0 && !b.value && r.number == 6.0 },
442+
{ a, b, r -> isTruthy(a) && b.value && (r.number == 1.0) },
443+
{ a, b, r -> isTruthy(a) && !b.value && (r.number == 2.0) },
444+
{ a, b, r -> a.number.isNaN() && b.value && (r.number == 3.0) },
445+
{ a, b, r -> a.number.isNaN() && !b.value && (r.number == 4.0) },
446+
{ a, b, r -> (a.number == 0.0) && b.value && (r.number == 5.0) },
447+
{ a, b, r -> (a.number == 0.0) && !b.value && (r.number == 6.0) },
446448
)
447449
}
448450

449451
@Test
450452
@Disabled("Does not work because objects cannot be null")
451453
fun `test andOfObjectAndObject`() {
452-
val method = getMethod("And", "andOfObjectAndObject")
454+
val method = getMethod(className, "andOfObjectAndObject")
453455
discoverProperties<TsValue.TsClass, TsValue.TsClass, TsValue.TsNumber>(
454456
method = method,
455-
{ a, b, r -> isTruthy(a) && isTruthy(b) && r.number == 1.0 },
456-
{ a, b, r -> isTruthy(a) && !isTruthy(b) && r.number == 2.0 },
457-
{ a, b, r -> !isTruthy(a) && isTruthy(b) && r.number == 3.0 },
458-
{ a, b, r -> !isTruthy(a) && !isTruthy(b) && r.number == 4.0 },
457+
{ a, b, r -> isTruthy(a) && isTruthy(b) && (r.number == 1.0) },
458+
{ a, b, r -> isTruthy(a) && !isTruthy(b) && (r.number == 2.0) },
459+
{ a, b, r -> !isTruthy(a) && isTruthy(b) && (r.number == 3.0) },
460+
{ a, b, r -> !isTruthy(a) && !isTruthy(b) && (r.number == 4.0) },
459461
)
460462
}
461463

462464
@Test
463465
fun `test andOfUnknown`() {
464-
val method = getMethod("And", "andOfUnknown")
466+
val method = getMethod(className, "andOfUnknown")
465467
discoverProperties<TsValue, TsValue, TsValue.TsNumber>(
466468
method = method,
467469
{ a, b, r ->
468470
if (a is TsValue.TsBoolean && b is TsValue.TsBoolean) {
469-
a.value && b.value && r.number == 1.0
471+
a.value && b.value && (r.number == 1.0)
470472
} else true
471473
},
472474
{ a, b, r ->
473475
if (a is TsValue.TsBoolean && b is TsValue.TsBoolean) {
474-
a.value && !b.value && r.number == 2.0
476+
a.value && !b.value && (r.number == 2.0)
475477
} else true
476478
},
477479
{ a, b, r ->
478480
if (a is TsValue.TsBoolean && b is TsValue.TsBoolean) {
479-
!a.value && b.value && r.number == 3.0
481+
!a.value && b.value && (r.number == 3.0)
480482
} else true
481483
},
482484
{ a, b, r ->
483485
if (a is TsValue.TsBoolean && b is TsValue.TsBoolean) {
484-
!a.value && !b.value && r.number == 4.0
486+
!a.value && !b.value && (r.number == 4.0)
485487
} else true
486488
},
487489
)
488490
}
489491

490492
@Test
491493
fun `test truthyUnknown`() {
492-
val method = getMethod("And", "truthyUnknown")
494+
val method = getMethod(className, "truthyUnknown")
493495
discoverProperties<TsValue, TsValue, TsValue.TsNumber>(
494496
method = method,
495497
{ a, b, r ->
496498
if (a is TsValue.TsBoolean && b is TsValue.TsBoolean) {
497-
a.value && !b.value && r.number == 1.0
499+
a.value && !b.value && (r.number == 1.0)
498500
} else true
499501
},
500502
{ a, b, r ->
501503
if (a is TsValue.TsBoolean && b is TsValue.TsBoolean) {
502-
!a.value && b.value && r.number == 2.0
504+
!a.value && b.value && (r.number == 2.0)
503505
} else true
504506
},
505507
{ a, b, r ->
506508
if (a is TsValue.TsBoolean && b is TsValue.TsBoolean) {
507-
!a.value && !b.value && r.number == 99.0
509+
!a.value && !b.value && (r.number == 99.0)
508510
} else true
509511
},
510512
)

usvm-ts/src/test/kotlin/org/usvm/samples/Arguments.kt

Lines changed: 0 additions & 60 deletions
This file was deleted.

usvm-ts/src/test/kotlin/org/usvm/samples/Arrays.kt

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,19 @@ import org.usvm.util.TsMethodTestRunner
88
import org.usvm.util.getResourcePath
99

1010
class Arrays : TsMethodTestRunner() {
11+
12+
private val className = this::class.simpleName!!
13+
1114
override val scene: EtsScene = run {
12-
val name = "Arrays.ts"
15+
val name = "$className.ts"
1316
val path = getResourcePath("/samples/$name")
1417
val file = loadEtsFileAutoConvert(path)
1518
EtsScene(listOf(file))
1619
}
1720

1821
@Test
1922
fun testCreateConstantArrayOfNumbers() {
20-
val method = getMethod("Arrays", "createConstantArrayOfNumbers")
23+
val method = getMethod(className, "createConstantArrayOfNumbers")
2124
discoverProperties<TsValue.TsNumber>(
2225
method = method,
2326
{ r -> r.number == 1.0 },
@@ -29,7 +32,7 @@ class Arrays : TsMethodTestRunner() {
2932

3033
@Test
3134
fun testCreateAndReturnConstantArrayOfNumbers() {
32-
val method = getMethod("Arrays", "createAndReturnConstantArrayOfNumbers")
35+
val method = getMethod(className, "createAndReturnConstantArrayOfNumbers")
3336
discoverProperties<TsValue.TsArray<TsValue.TsNumber>>(
3437
method = method,
3538
{ r -> r.values.map { it.number } == listOf(1.0, 2.0, 3.0) },
@@ -38,7 +41,7 @@ class Arrays : TsMethodTestRunner() {
3841

3942
@Test
4043
fun testCreateAndAccessArrayOfBooleans() {
41-
val method = getMethod("Arrays", "createAndAccessArrayOfBooleans")
44+
val method = getMethod(className, "createAndAccessArrayOfBooleans")
4245
discoverProperties<TsValue.TsNumber>(
4346
method = method,
4447
{ r -> r.number == 1.0 },
@@ -50,7 +53,7 @@ class Arrays : TsMethodTestRunner() {
5053

5154
@Test
5255
fun testCreateArrayOfBooleans() {
53-
val method = getMethod("Arrays", "createArrayOfBooleans")
56+
val method = getMethod(className, "createArrayOfBooleans")
5457
discoverProperties<TsValue.TsArray<TsValue.TsBoolean>>(
5558
method = method,
5659
{ r -> r.values.map { it.value } == listOf(true, false, true) },
@@ -59,7 +62,7 @@ class Arrays : TsMethodTestRunner() {
5962

6063
@Test
6164
fun testCreateMixedArray() {
62-
val method = getMethod("Arrays", "createMixedArray")
65+
val method = getMethod(className, "createMixedArray")
6366
discoverProperties<TsValue.TsArray<*>>(
6467
method = method,
6568
{ r ->
@@ -74,7 +77,7 @@ class Arrays : TsMethodTestRunner() {
7477

7578
@Test
7679
fun testCreateArrayOfUnknownValues() {
77-
val method = getMethod("Arrays", "createArrayOfUnknownValues")
80+
val method = getMethod(className, "createArrayOfUnknownValues")
7881
discoverProperties<TsValue, TsValue, TsValue, TsValue.TsArray<*>>(
7982
method = method,
8083
{ a, _, _, r -> r.values[0] == a && (a as TsValue.TsNumber).number == 1.1 },
@@ -88,7 +91,7 @@ class Arrays : TsMethodTestRunner() {
8891

8992
@Test
9093
fun testCreateArrayOfNumbersAndPutDifferentTypes() {
91-
val method = getMethod("Arrays", "createArrayOfNumbersAndPutDifferentTypes")
94+
val method = getMethod(className, "createArrayOfNumbersAndPutDifferentTypes")
9295
discoverProperties<TsValue.TsArray<*>>(
9396
method = method,
9497
{ r ->
@@ -103,7 +106,7 @@ class Arrays : TsMethodTestRunner() {
103106

104107
@Test
105108
fun testAllocatedArrayLengthExpansion() {
106-
val method = getMethod("Arrays", "allocatedArrayLengthExpansion")
109+
val method = getMethod(className, "allocatedArrayLengthExpansion")
107110
discoverProperties<TsValue.TsArray<*>>(
108111
method = method,
109112
{ r ->
@@ -120,7 +123,7 @@ class Arrays : TsMethodTestRunner() {
120123

121124
@Test
122125
fun testWriteInTheIndexEqualToLength() {
123-
val method = getMethod("Arrays", "writeInTheIndexEqualToLength")
126+
val method = getMethod(className, "writeInTheIndexEqualToLength")
124127
discoverProperties<TsValue.TsArray<TsValue.TsNumber>>(
125128
method = method,
126129
{ r -> r.values.map { it.number } == listOf(1.0, 2.0, 3.0, 4.0) },

usvm-ts/src/test/kotlin/org/usvm/samples/Call.kt

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,18 @@ import org.usvm.util.getResourcePath
99

1010
class Call : TsMethodTestRunner() {
1111

12+
private val className = this::class.simpleName!!
13+
1214
override val scene: EtsScene = run {
13-
val name = "Call.ts"
15+
val name = "$className.ts"
1416
val path = getResourcePath("/samples/$name")
1517
val file = loadEtsFileAutoConvert(path)
1618
EtsScene(listOf(file))
1719
}
1820

1921
@Test
2022
fun `test simpleCall`() {
21-
val method = getMethod("Call", "simpleCall")
23+
val method = getMethod(className, "simpleCall")
2224
discoverProperties<TsValue.TsNumber>(
2325
method = method,
2426
{ r -> r.number == 42.0 },
@@ -27,7 +29,7 @@ class Call : TsMethodTestRunner() {
2729

2830
@Test
2931
fun `test fib`() {
30-
val method = getMethod("Call", "fib")
32+
val method = getMethod(className, "fib")
3133
discoverProperties<TsValue.TsNumber, TsValue.TsNumber>(
3234
method = method,
3335
{ n, r -> n.number.isNaN() && r.number == 0.0 },

0 commit comments

Comments
 (0)