Repository navigation
test: collect #746 bus events on the event loop to keep their order - #784
Merged
GreenGrassBlueOcean merged 1 commit intoOct 23, 2026
Merged
Conversation
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
test_issue_746_switch_04_wall_and_ha_toggling_and_scenario_6_eventsfailed once on theHA Compatibility (beta)job of #781 (run 39998271332):Both CEN events were fired (the count assertion passed) but landed in the wrong order. That PR only changed comments. The same test passed on its previous run, on
v2-phase1-architectureseven minutes earlier, and on the stable and dev jobs of the same run.Cause
The test registered
cen_events.append(and the scene / general-light lists) as plain event-bus listeners. Home Assistant runs a listener that is neither a coroutine function nor marked@callbackas an executor job, so two events fired back to back can be appended in either order.Fix
Register the listeners through a small
@callbackhelper. They then run on the event loop, in firing order.Verification
list.appendlisteners (test_access_policy.py,test_issue_368_resync.py). They wait for a single event, so order cannot matter there, and I left them alone.🤖 Generated with Claude Code