Skip to content

Commit 1e6371e

Browse files
committed
add unit test
1 parent 2472df8 commit 1e6371e

1 file changed

Lines changed: 36 additions & 0 deletions

File tree

core/src/test/kotlin/org/evomaster/core/problem/rest/RestCallResultTest.kt

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,4 +233,40 @@ internal class RestCallResultTest {
233233
assertNull(staticObservation.execIndex)
234234
assertEquals("""{"id":"$UUID_MARKER"}""", staticObservation.differences[ResponseField.BODY])
235235
}
236+
237+
@Test
238+
fun testMergedFlakyBodyCombinesDifferentExecutionDeltas(){
239+
val original = createCallResult("""{"stable":"same","first":"a","second":"b"}""")
240+
val firstDiff = createCallResult("""{"stable":"same","first":"x","second":"b"}""")
241+
val secondDiff = createCallResult("""{"stable":"same","first":"a","second":"y"}""")
242+
243+
original.recordFlakyObservation(firstDiff, 1)
244+
original.recordFlakyObservation(secondDiff, 2)
245+
246+
assertEquals("""{"stable":"same","first":"x","second":"y"}""", original.getMergedFlakyBody())
247+
}
248+
249+
@Test
250+
fun testMergedFlakyBodyCombinesNestedExecutionDeltas(){
251+
val original = createCallResult("""{"data":{"stable":"same","first":"a","second":"b"},"items":[{"id":"1"},{"id":"2"}]}""")
252+
val firstDiff = createCallResult("""{"data":{"stable":"same","first":"x","second":"b"},"items":[{"id":"1"},{"id":"2"}]}""")
253+
val secondDiff = createCallResult("""{"data":{"stable":"same","first":"a","second":"b"},"items":[{"id":"1"},{"id":"3"}]}""")
254+
255+
original.recordFlakyObservation(firstDiff, 1)
256+
original.recordFlakyObservation(secondDiff, 2)
257+
258+
assertEquals("""{"data":{"stable":"same","first":"x","second":"b"},"items":[{"id":"1"},{"id":"3"}]}""", original.getMergedFlakyBody())
259+
}
260+
261+
@Test
262+
fun testMergedFlakyBodyFallsBackToFirstObservedBodyForNonJson(){
263+
val original = createCallResult("original")
264+
val firstDiff = createCallResult("first")
265+
val secondDiff = createCallResult("second")
266+
267+
original.recordFlakyObservation(firstDiff, 1)
268+
original.recordFlakyObservation(secondDiff, 2)
269+
270+
assertEquals("first", original.getMergedFlakyBody())
271+
}
236272
}

0 commit comments

Comments
 (0)