@@ -9,97 +9,97 @@ import org.junit.jupiter.api.assertThrows
9
9
import org.utbot.taint.parser.constants.*
10
10
import org.utbot.taint.parser.model.*
11
11
12
- class ConditionParserTest {
12
+ class TaintConditionParserTest {
13
13
14
14
@Nested
15
15
@DisplayName(" parseCondition" )
16
16
inner class ParseConditionTest {
17
17
@Test
18
18
fun `should parse yaml null as ValueCondition` () {
19
19
val yamlNull = Yaml .default.parseToYamlNode(" null" )
20
- val expectedCondition = ValueCondition ( ArgumentValueNull )
20
+ val expectedCondition = DtoTaintConditionEqualValue ( DtoArgumentValueNull )
21
21
22
- val actualCondition = ConditionParser .parseCondition(yamlNull)
22
+ val actualCondition = TaintConditionParser .parseCondition(yamlNull)
23
23
assertEquals(expectedCondition, actualCondition)
24
24
}
25
25
26
26
@Test
27
27
fun `should parse yaml scalar with argument value as ValueCondition` () {
28
28
val yamlScalar = Yaml .default.parseToYamlNode(" some-string" )
29
- val expectedCondition = ValueCondition ( ArgumentValueString (" some-string" ))
29
+ val expectedCondition = DtoTaintConditionEqualValue ( DtoArgumentValueString (" some-string" ))
30
30
31
- val actualCondition = ConditionParser .parseCondition(yamlScalar)
31
+ val actualCondition = TaintConditionParser .parseCondition(yamlScalar)
32
32
assertEquals(expectedCondition, actualCondition)
33
33
}
34
34
35
35
@Test
36
36
fun `should parse yaml scalar with argument type as TypeCondition` () {
37
37
val yamlScalar = Yaml .default.parseToYamlNode(" ${k_lt} java.lang.Integer${k_gt} " )
38
- val expectedCondition = TypeCondition ( ArgumentTypeString (" java.lang.Integer" ))
38
+ val expectedCondition = DtoTaintConditionIsType ( DtoArgumentTypeString (" java.lang.Integer" ))
39
39
40
- val actualCondition = ConditionParser .parseCondition(yamlScalar)
40
+ val actualCondition = TaintConditionParser .parseCondition(yamlScalar)
41
41
assertEquals(expectedCondition, actualCondition)
42
42
}
43
43
44
44
@Test
45
45
fun `should parse yaml list as OrCondition` () {
46
46
val yamlList = Yaml .default.parseToYamlNode(" [ 1, true, ${k_lt} java.lang.Integer${k_gt} ]" )
47
- val expectedCondition = OrCondition (listOf (
48
- ValueCondition ( ArgumentValueLong (1L )),
49
- ValueCondition ( ArgumentValueBoolean (true )),
50
- TypeCondition ( ArgumentTypeString (" java.lang.Integer" )),
47
+ val expectedCondition = DtoTaintConditionOr (listOf (
48
+ DtoTaintConditionEqualValue ( DtoArgumentValueLong (1L )),
49
+ DtoTaintConditionEqualValue ( DtoArgumentValueBoolean (true )),
50
+ DtoTaintConditionIsType ( DtoArgumentTypeString (" java.lang.Integer" )),
51
51
))
52
52
53
- val actualCondition = ConditionParser .parseCondition(yamlList)
53
+ val actualCondition = TaintConditionParser .parseCondition(yamlList)
54
54
assertEquals(expectedCondition, actualCondition)
55
55
}
56
56
57
57
@Test
58
58
fun `should parse yaml map with a key 'not' as NotCondition` () {
59
59
val yamlMap = Yaml .default.parseToYamlNode(" $k_not : ${k_lt} int${k_gt} " )
60
- val expectedCondition = NotCondition ( TypeCondition ( ArgumentTypeString (" int" )))
60
+ val expectedCondition = DtoTaintConditionNot ( DtoTaintConditionIsType ( DtoArgumentTypeString (" int" )))
61
61
62
- val actualCondition = ConditionParser .parseCondition(yamlMap)
62
+ val actualCondition = TaintConditionParser .parseCondition(yamlMap)
63
63
assertEquals(expectedCondition, actualCondition)
64
64
}
65
65
66
66
@Test
67
67
fun `should fail on yaml map without a key 'not'` () {
68
68
val yamlMap = Yaml .default.parseToYamlNode(" net: ${k_lt} int${k_gt} " )
69
69
70
- assertThrows<ConfigurationParseError > {
71
- ConditionParser .parseCondition(yamlMap)
70
+ assertThrows<TaintParseError > {
71
+ TaintConditionParser .parseCondition(yamlMap)
72
72
}
73
73
}
74
74
75
75
@Test
76
76
fun `should fail on yaml map with unknown keys` () {
77
77
val yamlMap = Yaml .default.parseToYamlNode(" { $k_not : ${k_lt} int${k_gt} , unknown-key: 0 }" )
78
78
79
- assertThrows<ConfigurationParseError > {
80
- ConditionParser .parseCondition(yamlMap)
79
+ assertThrows<TaintParseError > {
80
+ TaintConditionParser .parseCondition(yamlMap)
81
81
}
82
82
}
83
83
84
84
@Test
85
85
fun `should parse complicated yaml node` () {
86
86
val yamlMap = Yaml .default.parseToYamlNode(" $k_not : [ { $k_not : 0 }, ${k_lt} int${k_gt} , { $k_not : null } ]" )
87
- val expectedCondition = NotCondition ( OrCondition (listOf (
88
- NotCondition ( ValueCondition ( ArgumentValueLong (0L ))),
89
- TypeCondition ( ArgumentTypeString (" int" )),
90
- NotCondition ( ValueCondition ( ArgumentValueNull ))
87
+ val expectedCondition = DtoTaintConditionNot ( DtoTaintConditionOr (listOf (
88
+ DtoTaintConditionNot ( DtoTaintConditionEqualValue ( DtoArgumentValueLong (0L ))),
89
+ DtoTaintConditionIsType ( DtoArgumentTypeString (" int" )),
90
+ DtoTaintConditionNot ( DtoTaintConditionEqualValue ( DtoArgumentValueNull ))
91
91
)))
92
92
93
- val actualCondition = ConditionParser .parseCondition(yamlMap)
93
+ val actualCondition = TaintConditionParser .parseCondition(yamlMap)
94
94
assertEquals(expectedCondition, actualCondition)
95
95
}
96
96
97
97
@Test
98
98
fun `should fail on another yaml type` () {
99
99
val yamlTaggedNode = YamlTaggedNode (" some-tag" , YamlNull (YamlPath .root))
100
100
101
- assertThrows<ConfigurationParseError > {
102
- ConditionParser .parseCondition(yamlTaggedNode)
101
+ assertThrows<TaintParseError > {
102
+ TaintConditionParser .parseCondition(yamlTaggedNode)
103
103
}
104
104
}
105
105
}
@@ -110,31 +110,31 @@ class ConditionParserTest {
110
110
@Test
111
111
fun `should parse correct yaml map as Conditions` () {
112
112
val yamlMap = Yaml .default.parseToYamlNode(" { $k_this : \"\" , ${k_arg} 2: { $k_not : ${k_lt} int${k_gt} }, $k_return : [ 0, 1 ] }" )
113
- val expectedConditions = ConditionsMap (mapOf (
114
- ThisObject to ValueCondition ( ArgumentValueString (" " )),
115
- MethodArgument (2u ) to NotCondition ( TypeCondition ( ArgumentTypeString (" int" ))),
116
- ReturnValue to OrCondition (listOf (ValueCondition ( ArgumentValueLong (0L )), ValueCondition ( ArgumentValueLong (1L ))))
113
+ val expectedConditions = DtoTaintConditionsMap (mapOf (
114
+ DtoTaintEntityThis to DtoTaintConditionEqualValue ( DtoArgumentValueString (" " )),
115
+ DtoTaintEntityArgument (2u ) to DtoTaintConditionNot ( DtoTaintConditionIsType ( DtoArgumentTypeString (" int" ))),
116
+ DtoTaintEntityReturn to DtoTaintConditionOr (listOf (DtoTaintConditionEqualValue ( DtoArgumentValueLong (0L )), DtoTaintConditionEqualValue ( DtoArgumentValueLong (1L ))))
117
117
))
118
118
119
- val actualConditions = ConditionParser .parseConditions(yamlMap)
119
+ val actualConditions = TaintConditionParser .parseConditions(yamlMap)
120
120
assertEquals(expectedConditions, actualConditions)
121
121
}
122
122
123
123
@Test
124
124
fun `should parse empty yaml map as NoConditions` () {
125
125
val yamlMap = Yaml .default.parseToYamlNode(" {}" )
126
- val expectedConditions = NoConditions
126
+ val expectedConditions = DtoNoTaintConditions
127
127
128
- val actualConditions = ConditionParser .parseConditions(yamlMap)
128
+ val actualConditions = TaintConditionParser .parseConditions(yamlMap)
129
129
assertEquals(expectedConditions, actualConditions)
130
130
}
131
131
132
132
@Test
133
133
fun `should fail on another yaml type` () {
134
134
val yamlList = Yaml .default.parseToYamlNode(" []" )
135
135
136
- assertThrows<ConfigurationParseError > {
137
- ConditionParser .parseConditions(yamlList)
136
+ assertThrows<TaintParseError > {
137
+ TaintConditionParser .parseConditions(yamlList)
138
138
}
139
139
}
140
140
}
@@ -145,18 +145,18 @@ class ConditionParserTest {
145
145
@Test
146
146
fun `should parse yaml map with a key 'conditions'` () {
147
147
val yamlMap = Yaml .default.parseToYamlNode(" $k_conditions : { $k_return : null }" ).yamlMap
148
- val expectedConditions = ConditionsMap (mapOf (ReturnValue to ValueCondition ( ArgumentValueNull )))
148
+ val expectedConditions = DtoTaintConditionsMap (mapOf (DtoTaintEntityReturn to DtoTaintConditionEqualValue ( DtoArgumentValueNull )))
149
149
150
- val actualConditions = ConditionParser .parseConditionsKey(yamlMap)
150
+ val actualConditions = TaintConditionParser .parseConditionsKey(yamlMap)
151
151
assertEquals(expectedConditions, actualConditions)
152
152
}
153
153
154
154
@Test
155
155
fun `should parse yaml map without a key 'conditions' as NoConditions` () {
156
156
val yamlMap = Yaml .default.parseToYamlNode(" $k_marks : []" ).yamlMap
157
- val expectedConditions = NoConditions
157
+ val expectedConditions = DtoNoTaintConditions
158
158
159
- val actualConditions = ConditionParser .parseConditionsKey(yamlMap)
159
+ val actualConditions = TaintConditionParser .parseConditionsKey(yamlMap)
160
160
assertEquals(expectedConditions, actualConditions)
161
161
}
162
162
}
0 commit comments