Properly re-arm session_manager.SignalListener

Previously, the listener would pick up any stale signals that haven't
been fully consumed. This adds a new reset() function that will
guarantee only signals received *after* reset() will be picked up. Stale
signals get ignored.

BUG=chromium:422948
TEST=This improves test infrastructure, existing tests should remain functional. Ran all tests that use session_manager.SignalListener manually to verify they still work.

Change-Id: Ied8ea744f87d0b9d93b30d7b4761fad38454f83b
Reviewed-on: https://chromium-review.googlesource.com/223083
Tested-by: Mattias Nissler <mnissler@chromium.org>
Reviewed-by: Chris Masone <cmasone@chromium.org>
Commit-Queue: Mattias Nissler <mnissler@chromium.org>
2 files changed