Skip to content
Commit aa7de1bf authored by Lorenzo Colitti's avatar Lorenzo Colitti
Browse files

BroadcastInterceptingContext: use passed-in broadcast Handler.

Currently, BroadcastInterceptingContext always runs broadcast
receivers on the thread that called sendBroadcast. This means:

1. Receivers might run on the wrong thread, making the test less
   realistic.
2. If any receiver checks what thread it's running on, then
   either the check needs to be modified or deleted, or the test
   must call sendBroadcast on the thread that the receiver
   expects to run on. The latter is impossible when there is more
   than one receiver that needs to run on more than one thread.

This CL adds a setUseRegisteredHandlers method that allows tests
to say that they want each receiver to run on the Handler
specified at registration time.

This CL also enables the new mode for ConnectivityServiceTest,
and resolves a TODO to re-enable a disabled thread check.

The new mode cannot be enabled by default because it would break
most of the tests.

[This is a partial cherry-pick of an AOSP change that also
made changes to ConnectivityServiceTest, and which conflicts in
mainline-prod. This CL only includes the changes to
BroadcastInterceptingContext.]

Bug: 173331190
Test: atest TetheringTests
Merged-In: I3303bb14516f07a55d82a16b59c111ab3f8b0389
Change-Id: I95c2371d4e9f51aab2bc6e6368d133e8a75987cd
parent 0c69c631
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment