Merge "Fix crash on Wi-Fi Slice when it's continuously pinned and unpinned"

This commit is contained in:
TreeHugger Robot
2018-10-26 19:10:29 +00:00
committed by Android (Google) Code Review
4 changed files with 64 additions and 21 deletions

View File

@@ -67,6 +67,7 @@ import org.robolectric.annotation.Implementation;
import org.robolectric.annotation.Implements;
import org.robolectric.annotation.Resetter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -485,11 +486,15 @@ public class SettingsSliceProviderTest {
final SliceBackgroundWorker worker = spy(new SliceBackgroundWorker(
mContext.getContentResolver(), uri) {
@Override
public void onSlicePinned() {
protected void onSlicePinned() {
}
@Override
public void onSliceUnpinned() {
protected void onSliceUnpinned() {
}
@Override
public void close() {
}
});
final WifiSlice wifiSlice = spy(new WifiSlice(mContext));
@@ -519,6 +524,17 @@ public class SettingsSliceProviderTest {
verify(worker).onSliceUnpinned();
}
@Test
public void shutdown_backgroundWorker_closed() throws IOException {
final Uri uri = WifiSlice.WIFI_URI;
final SliceBackgroundWorker worker = initBackgroundWorker(uri);
mProvider.onSlicePinned(uri);
mProvider.shutdown();
verify(worker).close();
}
@Test
public void grantWhitelistedPackagePermissions_noWhitelist_shouldNotGrant() {
final List<Uri> uris = new ArrayList<>();