Skip to content

1.4.0

Latest

Choose a tag to compare

@VadimToptunov VadimToptunov released this 30 Jul 18:49
e9f4c49

Added

  • StabilizingSynchronizer (1.4.0) — additive, non-breaking.
    • A built-in, dependency-free KassSynchronizer that settles the app before
      each interaction attempt without an EarlGrey backend: it polls a cheap
      signature of the accessibility tree (XCUIApplication().debugDescription)
      and returns once that signature has held unchanged for stableFor
      (default 0.1s), or timeout elapses — whichever comes first. The
      classic "wait until the UI stops changing" idle heuristic, in pure
      Foundation/XCTest.
    • Tunable via stableFor/pollInterval (default 0.05s between polls —
      kept small but non-zero since debugDescription is relatively expensive
      to compute on every poll).
    • Fully opt-in: KassConfig(synchronizer: StabilizingSynchronizer()). The
      default remains NoOpSynchronizer, so existing suites are unaffected.