Skip to content

Commit fbc5d4e

Browse files
committed
Add a new unit test for throwTaintErrorForEachMarkSeparately setting
1 parent 1dd1547 commit fbc5d4e

3 files changed

Lines changed: 37 additions & 3 deletions

File tree

utbot-framework-test/src/test/kotlin/org/utbot/examples/taint/TaintSeveralMarksTest.kt

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,28 @@ internal class TaintSeveralMarksTest : UtValueTestCaseCheckerForTaint(
5454
}
5555
}
5656

57+
@Test
58+
fun testTaintBad123() {
59+
checkWithException(
60+
TaintSeveralMarks::bad123,
61+
eq(3), // success & taint error (x2, for each mark separately)
62+
{ r -> r.isException<TaintAnalysisError>() },
63+
{ r -> r.isSuccess },
64+
)
65+
}
66+
67+
@Test
68+
fun testTaintBad123Separately() {
69+
withoutThrowTaintErrorForEachMarkSeparately {
70+
checkWithException(
71+
TaintSeveralMarks::bad123,
72+
eq(2), // success & taint error (one for two marks)
73+
{ r -> r.isException<TaintAnalysisError>() },
74+
{ r -> r.isSuccess },
75+
)
76+
}
77+
}
78+
5779
@Test
5880
fun testTaintBadSourceAll() {
5981
checkWithException(

utbot-sample/src/main/java/org/utbot/examples/taint/TaintSeveralMarks.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public String source2() {
1313
return "2";
1414
}
1515

16-
public String sourceAll() {
16+
public String source12() {
1717
return "12";
1818
}
1919

@@ -46,6 +46,10 @@ public void sink13(String s) {
4646
//
4747
}
4848

49+
public void sink123(String s) {
50+
//
51+
}
52+
4953
public void sinkAll(String s) {
5054
//
5155
}
@@ -67,8 +71,13 @@ public void bad13() {
6771
sink13(s);
6872
}
6973

74+
public void bad123() {
75+
String s12 = source12();
76+
sink123(s12);
77+
}
78+
7079
public void badSourceAll() {
71-
String s = sourceAll();
80+
String s = source12();
7281
sink1(s);
7382
sink2(s);
7483
sinkAll(s);

utbot-sample/src/main/resources/taint/TaintSeveralMarksConfig.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ sources:
55
- org.utbot.examples.taint.TaintSeveralMarks.source2:
66
add-to: return
77
marks: mark2
8-
- org.utbot.examples.taint.TaintSeveralMarks.sourceAll:
8+
- org.utbot.examples.taint.TaintSeveralMarks.source12:
99
add-to: return
1010
marks: [ mark1, mark2 ]
1111

@@ -37,6 +37,9 @@ sinks:
3737
- org.utbot.examples.taint.TaintSeveralMarks.sink13:
3838
check: arg1
3939
marks: [ mark1, mark3 ]
40+
- org.utbot.examples.taint.TaintSeveralMarks.sink123:
41+
check: arg1
42+
marks: [ mark1, mark2, mark3 ]
4043
- org.utbot.examples.taint.TaintSeveralMarks.sinkAll:
4144
check: arg1
4245
marks: []

0 commit comments

Comments
 (0)