Skip to content

Commit 6aecd22

Browse files
authored
Merge pull request #1330 from ahoppen/non-deterministic-task-scheduler-test
Fix a non-deterministic test failure of `testTaskSuspension`
2 parents 44acd0d + 2036729 commit 6aecd22

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

Tests/SKCoreTests/TaskSchedulerTests.swift

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,13 @@ final class TaskSchedulerTests: XCTestCase {
155155
)
156156
},
157157
validate: { (recordings: [Set<TaskID>]) in
158-
XCTAssertEqual(recordings.filter({ !$0.isEmpty }), [[suspendedTaskId], [suspenderTaskId], [suspendedTaskId]])
158+
let nonEmptyRecordings = recordings.filter({ !$0.isEmpty })
159+
// The suspended task might get cancelled to be rescheduled before or after we run the body. Allow either.
160+
XCTAssert(
161+
nonEmptyRecordings == [[suspendedTaskId], [suspenderTaskId], [suspendedTaskId]]
162+
|| nonEmptyRecordings == [[suspenderTaskId], [suspendedTaskId]],
163+
"Recordings did not match expected: \(nonEmptyRecordings)"
164+
)
159165
}
160166
)
161167
}

0 commit comments

Comments
 (0)