Skip to content

Commit 8899b4f

Browse files
committed
fixed first test with forceNewTaints()
1 parent 053aa3b commit 8899b4f

6 files changed

Lines changed: 12 additions & 2 deletions

File tree

core/src/main/kotlin/org/evomaster/core/problem/rest/resource/RestResourceNode.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -559,6 +559,7 @@ open class RestResourceNode(
559559
action.randomize(randomness, false)
560560
else
561561
action.doInitialize(randomness)
562+
action.forceNewTaints()
562563
return action
563564
}
564565

core/src/main/kotlin/org/evomaster/core/problem/rest/service/HttpSemanticsService.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,7 @@ class HttpSemanticsService {
179179
?: return@forEach // we have a DELETE but no GET on this endpoint?
180180
val getOp = getDef.copy() as RestCallAction
181181
getOp.doInitialize(randomness)
182+
getOp.forceNewTaints()
182183
getOp.bindToSamePathResolution(last)
183184
getOp.auth = last.auth
184185
//TODO: what if the GET needs WM handling?
@@ -197,4 +198,4 @@ class HttpSemanticsService {
197198
}
198199
}
199200

200-
}
201+
}

core/src/main/kotlin/org/evomaster/core/problem/rest/service/RestIndividualBuilder.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ class RestIndividualBuilder {
155155
res.doInitialize(randomness)
156156
}
157157
res.auth = target.auth
158+
res.forceNewTaints()
158159
res.bindToSamePathResolution(target)
159160

160161
return res
@@ -191,6 +192,7 @@ class RestIndividualBuilder {
191192
res.doInitialize(randomness)
192193
}
193194
res.auth = previous.auth
195+
res.forceNewTaints()
194196
if(res.path.isEquivalent(previous.path)) {
195197
res.bindToSamePathResolution(previous)
196198
}

core/src/main/kotlin/org/evomaster/core/problem/rest/service/sampler/RestSampler.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ class RestSampler : AbstractRestSampler(){
128128
val copy = x.copy() as RestCallAction
129129
copy.doInitialize(randomness)
130130
copy.auth = rca.auth
131+
copy.forceNewTaints()
131132
/*
132133
This is bit tricky... the id does NOT uniquely identify the action inside an
133134
individual, but rather its type.
@@ -338,6 +339,7 @@ class RestSampler : AbstractRestSampler(){
338339
val copy = a.value.copy() as RestCallAction
339340
copy.auth = auth
340341
copy.doInitialize(randomness)
342+
copy.forceNewTaints()
341343
val ind = createIndividual(SampleType.SMART, mutableListOf(copy))
342344
adHocInitialIndividuals.add(ind)
343345
}

core/src/main/kotlin/org/evomaster/core/problem/rpc/service/RPCSampler.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ class RPCSampler: ApiWsSampler<RPCIndividual>() {
9999
action.setNoAuth()
100100
}else
101101
rpcHandler.actionWithRandomAuth(action)
102+
action.forceNewTaints()
102103

103104
rpcHandler.actionWithRandomSeeded(action, noSeedProbability)
104105

@@ -114,6 +115,7 @@ class RPCSampler: ApiWsSampler<RPCIndividual>() {
114115
throw IllegalStateException("cannot sample schedule action with empty cluster")
115116
val action = randomness.choose(scheduleActionCluster).copy() as ScheduleTaskAction
116117
action.doInitialize(randomness)
118+
action.forceNewTaints()
117119
rpcHandler.scheduleActionWithRandomSeeded(action, noSeedProbability)
118120
return action
119121
}
@@ -183,6 +185,7 @@ class RPCSampler: ApiWsSampler<RPCIndividual>() {
183185
.forEach { a ->
184186
val copy = a.value.copy() as RPCCallAction
185187
copy.doInitialize(randomness)
188+
copy.forceNewTaints()
186189
rpcHandler.actionWithAllAuth(copy).forEach { actionWithAuth->
187190
rpcHandler.actionWithAllCandidates(actionWithAuth)
188191
.forEach { actionWithSeeded->

core/src/main/kotlin/org/evomaster/core/seeding/service/rest/PirToRest.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ class PirToRest: PirToIndividual(){
7171

7272
val x = candidates[0].copy() as RestCallAction
7373
x.doInitialize(randomness)
74+
x.forceNewTaints()
7475

7576
/*
7677
* looking at all existing parameters in the candidate template.
@@ -140,4 +141,4 @@ class PirToRest: PirToIndividual(){
140141
return x
141142
}
142143

143-
}
144+
}

0 commit comments

Comments
 (0)