resetHintKit function
void
resetHintKit()
Puts the package's process-global state back to how it starts.
HintRegistry outlives any widget tree — that is the point of it, since
the overlay it arbitrates is not scoped to a subtree — so without this a
test inherits the previous test's open hint, showOnce keys and observers.
Symptoms are a hint that mysteriously refuses to appear, or an observer
that counts events from two tests at once.
Call it in setUp:
setUp(resetHintKit);
It closes whatever hint holds the floor, drops every registered observer, and replaces HintRegistry.storage with a fresh InMemoryTourStorage.
Implementation
void resetHintKit() {
HintRegistry.instance
..closeAll()
..removeAllObservers()
..storage = InMemoryTourStorage();
}