// GC can't sweep Objc-Kotlin objects in one pass due to different lifetime models
// Two passes do not guarantee it either, this test can break in future
kotlin.native.internal.GC.collect()
kotlin.native.internal.GC.collect()
assertTrue(mockNSRunLoop.displayLinks.isEmpty(),"displayLinks must be empty after MetalRedrawer is disposed. This test can be flaky and depends on assumptions about GC implementation.")