Die Init läuft in einem Thread und feuert irgendwann den OnXXXX.
Kommt also sofort wieder.
Ich müsste also im TestCase eigentlich einen Anonymen Thread starten der auf das Ergebnis warten kann (5 Sekunden oder was auch immer) um in der Testcase procedure dann true oder false zu erzeugen.
Besser wäre es, der Code, der im Thread ausgeführt wird, kann direkt geprüft werden. Das käme der Intention eines Unittests eigentlich näher.