test: remove non det async_sleep test
diff --git a/tests/elab/async_sleep.lean b/tests/elab/async_sleep.lean
deleted file mode 100644
index e26f200..0000000
--- a/tests/elab/async_sleep.lean
+++ /dev/null
@@ -1,393 +0,0 @@
-import Std.Internal.UV
-open Std.Internal.UV
-
-def assertElapsed (t1 t2 : Nat) (should : Nat) (eps : Nat) : IO Unit := do
-  let dur := t2 - t1
-  if (Int.ofNat dur - Int.ofNat should).natAbs > eps then
-    throw <| .userError s!"elapsed time was too different, measured {dur}, should: {should}, tolerance: {eps}"
-
-def assertDuration (should : Nat) (eps : Nat) (x : IO α) : IO α := do
-  let t1 ← IO.monoMsNow
-  let res ← x
-  let t2 ← IO.monoMsNow
-  assertElapsed t1 t2 should eps
-  return res
-
-def BASE_DURATION : Nat := 1000
-
--- generous tolerance for slow CI systems
-def EPS : Nat := 150
-
-def await (x : Task α) : IO α := pure x.get
-
-namespace SleepTest
-
-def oneShotSleep : IO Unit := do
-  assertDuration BASE_DURATION EPS do
-    let timer ← Timer.mk BASE_DURATION.toUInt64 false
-    let p ← timer.next
-    await p.result!
-
-def promiseBehavior1 : IO Unit := do
-    let timer ← Timer.mk BASE_DURATION.toUInt64 false
-    let p ← timer.next
-    let r := p.result!
-    assert! (← IO.getTaskState r) != .finished
-    IO.sleep (BASE_DURATION + EPS).toUInt32
-    assert! (← IO.getTaskState r) == .finished
-
-def promiseBehavior2 : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 false
-  let p1 ← timer.next
-  let p2 ← timer.next
-  assert! (← IO.getTaskState p1.result!) != .finished
-  assert! (← IO.getTaskState p2.result!) != .finished
-  IO.sleep (BASE_DURATION + EPS).toUInt32
-  assert! (← IO.getTaskState p1.result!) == .finished
-  assert! (← IO.getTaskState p2.result!) == .finished
-
-def promiseBehavior3 : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 false
-  let p1 ← timer.next
-  assert! (← IO.getTaskState p1.result!) != .finished
-  IO.sleep (BASE_DURATION + EPS).toUInt32
-  assert! (← IO.getTaskState p1.result!) == .finished
-  let p3 ← timer.next
-  assert! (← IO.getTaskState p3.result!) == .finished
-
-def resetBehavior : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 false
-  let p ← timer.next
-  assert! (← IO.getTaskState p.result!) != .finished
-
-  IO.sleep (BASE_DURATION / 2).toUInt32
-  assert! (← IO.getTaskState p.result!) != .finished
-  timer.reset
-
-  IO.sleep (BASE_DURATION / 2).toUInt32
-  assert! (← IO.getTaskState p.result!) != .finished
-
-  IO.sleep ((BASE_DURATION / 2) + EPS).toUInt32
-  assert! (← IO.getTaskState p.result!) == .finished
-
-def cancelBehaviorNoRepeat : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 false
-  let prom ← timer.next
-  assert! (← IO.getTaskState prom.result?) != IO.TaskState.finished
-  timer.cancel
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-
-def stopBehaviorNoRepeat : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 false
-  let prom ← timer.next
-  assert! (← IO.getTaskState prom.result?) != IO.TaskState.finished
-  timer.stop
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-  let prom ← timer.next
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-  let prom ← timer.next
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-  let prom ← timer.next
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-  let prom ← timer.next
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-
-def stopCancelNoRepeat : IO Unit := do
-  let timer ← Timer.mk 1000 false
-  let prom ← timer.next
-  timer.stop
-  timer.cancel
-  timer.stop
-  timer.cancel
-  timer.stop
-  timer.cancel
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-
-def cancelStopNoRepeat : IO Unit := do
-  let timer ← Timer.mk 1000 false
-  let prom ← timer.next
-  timer.cancel
-  timer.stop
-  timer.cancel
-  timer.stop
-  timer.cancel
-  timer.stop
-  timer.cancel
-  timer.stop
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-
-def stopNoRepeat : IO Unit := do
-  let timer ← Timer.mk 1000 false
-  let prom ← timer.next
-
-  timer.stop
-
-  assert! prom.result?.get == none
-
-  let prom ← timer.next
-
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-
-def cancelNoRepeat : IO Unit := do
-  let timer ← Timer.mk 1000 false
-  timer.cancel
-
-  let prom ← timer.next
-  assert! prom.result?.get == some ()
-
-#eval cancelBehaviorNoRepeat
-#eval stopBehaviorNoRepeat
-
-#eval stopCancelNoRepeat
-#eval cancelStopNoRepeat
-
-#eval stopNoRepeat
-#eval cancelNoRepeat
-
-#eval oneShotSleep
-#eval promiseBehavior1
-#eval promiseBehavior2
-#eval promiseBehavior3
-#eval resetBehavior
-#eval oneShotSleep
-
-end SleepTest
-
-namespace IntervalTest
-
-def sleepFirst : IO Unit := do
-  assertDuration 0 EPS go
-where
-  go : IO Unit := do
-    let timer ← Timer.mk BASE_DURATION.toUInt64 true
-    let prom ← timer.next
-    await prom.result!
-    timer.stop
-
-def sleepSecond : IO Unit := do
-  discard <| assertDuration BASE_DURATION EPS go
-where
-  go : IO Unit := do
-    let timer ← Timer.mk BASE_DURATION.toUInt64 true
-
-    let task ←
-      IO.bindTask (← timer.next).result! fun _ => do
-      IO.bindTask (← timer.next).result! fun _ => pure (Task.pure (.ok 2))
-
-    discard <| await task
-    timer.stop
-
-def promiseBehavior1 : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let p1 ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState p1.result!) == .finished
-  let p2 ← timer.next
-  assert! (← IO.getTaskState p2.result!) != .finished
-  IO.sleep (BASE_DURATION + EPS).toUInt32
-  assert! (← IO.getTaskState p2.result!) == .finished
-  timer.stop
-
-def promiseBehavior2 : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let p1 ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState p1.result!) == .finished
-
-  let prom1 ← timer.next
-  let prom2 ← timer.next
-  assert! (← IO.getTaskState prom1.result!) != .finished
-  assert! (← IO.getTaskState prom2.result!) != .finished
-  IO.sleep (BASE_DURATION + EPS).toUInt32
-  assert! (← IO.getTaskState prom1.result!) == .finished
-  assert! (← IO.getTaskState prom2.result!) == .finished
-  timer.stop
-
-def promiseBehavior3 : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let p1 ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState p1.result!) == .finished
-
-  let prom1 ← timer.next
-  assert! (← IO.getTaskState prom1.result!) != .finished
-  IO.sleep (BASE_DURATION + EPS).toUInt32
-  assert! (← IO.getTaskState prom1.result!) == .finished
-  let prom2 ← timer.next
-  assert! (← IO.getTaskState prom2.result!) != .finished
-  IO.sleep (BASE_DURATION + EPS).toUInt32
-  assert! (← IO.getTaskState prom2.result!) == .finished
-  timer.stop
-
-def delayedTickBehavior : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let p1 ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState p1.result!) == .finished
-
-  IO.sleep (BASE_DURATION / 2).toUInt32
-  let p2 ← timer.next
-  assert! (← IO.getTaskState p2.result!) != .finished
-  IO.sleep ((BASE_DURATION / 2) + EPS).toUInt32
-  assert! (← IO.getTaskState p2.result!) == .finished
-  timer.stop
-
-def skippedTickBehavior : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let p1 ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState p1.result!) == .finished
-
-  IO.sleep (2 * BASE_DURATION + BASE_DURATION / 2).toUInt32
-  let p2 ← timer.next
-  assert! (← IO.getTaskState p2.result!) != .finished
-  IO.sleep ((BASE_DURATION / 2) + EPS).toUInt32
-  assert! (← IO.getTaskState p2.result!) == .finished
-  timer.stop
-
-def resetBehavior : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let p1 ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState p1.result!) == .finished
-
-  let prom ← timer.next
-  assert! (← IO.getTaskState prom.result!) != .finished
-
-  IO.sleep (BASE_DURATION / 2).toUInt32
-  assert! (← IO.getTaskState prom.result!) != .finished
-  timer.reset
-
-  IO.sleep (BASE_DURATION / 2).toUInt32
-  assert! (← IO.getTaskState prom.result!) != .finished
-
-  IO.sleep ((BASE_DURATION / 2) + EPS).toUInt32
-  assert! (← IO.getTaskState prom.result!) == .finished
-  timer.stop
-
-def sequentialSleep : IO Unit := do
-  discard <| assertDuration BASE_DURATION EPS go
-where
-  go : IO Unit := do
-    let timer ← Timer.mk (BASE_DURATION / 2).toUInt64 true
-    -- 0th interval ticks instantly
-    let task ←
-      IO.bindTask (← timer.next).result! fun _ => do
-      IO.bindTask (← timer.next).result! fun _ => do
-      IO.bindTask (← timer.next).result! fun _ => pure (Task.pure (.ok 2))
-
-    discard <| await task
-    timer.stop
-
-def cancelBehaviorRepeat : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let prom ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  let prom ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState prom.result?) != IO.TaskState.finished
-  timer.cancel
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  let prom ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState prom.result?) != IO.TaskState.finished
-  timer.cancel
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-
-def stopBehaviorRepeat : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let prom ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  let prom ← timer.next
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState prom.result?) != IO.TaskState.finished
-  timer.stop
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-
-def stopCancelRepeat : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let prom ← timer.next
-  assert! prom.result?.get == some ()
-  let prom ← timer.next
-  timer.stop
-  timer.cancel
-  timer.stop
-  timer.cancel
-  timer.stop
-  timer.cancel
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-
-def cancelStopRepeat : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let prom ← timer.next
-  assert! prom.result?.get == some ()
-  let prom ← timer.next
-  timer.cancel
-  timer.stop
-  timer.cancel
-  timer.stop
-  timer.cancel
-  timer.stop
-  timer.cancel
-  timer.stop
-  IO.sleep EPS.toUInt32
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-
-def stopRepeat : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  let prom ← timer.next
-
-  assert! prom.result?.get == some ()
-
-  timer.stop
-
-  let prom ← timer.next
-
-  assert! (← IO.getTaskState prom.result?) == IO.TaskState.finished
-  assert! prom.result?.get == none
-
-def cancelRepeat : IO Unit := do
-  let timer ← Timer.mk BASE_DURATION.toUInt64 true
-  timer.cancel
-
-  let prom ← timer.next
-  assert! prom.result?.get == some ()
-
-#eval cancelBehaviorRepeat
-#eval stopBehaviorRepeat
-
-#eval stopCancelRepeat
-#eval cancelStopRepeat
-
-#eval stopRepeat
-#eval cancelRepeat
-
-#eval sleepFirst
-#eval sleepSecond
-#eval promiseBehavior1
-#eval promiseBehavior2
-#eval promiseBehavior3
-#eval delayedTickBehavior
-#eval skippedTickBehavior
-#eval resetBehavior
-#eval sequentialSleep
-
-end IntervalTest