Merge "[Wi-Fi] Quit worker thread of WifiPickerTracker" into rvc-dev

This commit is contained in:
TreeHugger Robot
2020-05-13 04:18:18 +00:00
committed by Android (Google) Code Review
2 changed files with 26 additions and 2 deletions

View File

@@ -124,6 +124,9 @@ public class AddAppNetworksFragment extends InstrumentedFragment implements
List<Integer> mResultCodeArrayList;
@VisibleForTesting
WifiPickerTracker mWifiPickerTracker;
// Worker thread used for WifiPickerTracker work
@VisibleForTesting
HandlerThread mWorkerThread;
private boolean mIsSingleNetwork;
private boolean mAnyNetworkSavedSuccess;
@@ -133,8 +136,6 @@ public class AddAppNetworksFragment extends InstrumentedFragment implements
private UiConfigurationItemAdapter mUiConfigurationItemAdapter;
private WifiManager.ActionListener mSaveListener;
private WifiManager mWifiManager;
// Worker thread used for WifiPickerTracker work
private HandlerThread mWorkerThread;
private final Handler mHandler = new Handler() {
@Override
@@ -202,6 +203,13 @@ public class AddAppNetworksFragment extends InstrumentedFragment implements
return inflater.inflate(R.layout.wifi_add_app_networks, container, false);
}
@Override
public void onDestroy() {
mWorkerThread.quit();
super.onDestroy();
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);

View File

@@ -19,7 +19,9 @@ package com.android.settings.wifi.addappnetworks;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.app.settings.SettingsEnums;
@@ -27,6 +29,7 @@ import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiManager;
import android.net.wifi.WifiNetworkSuggestion;
import android.os.Bundle;
import android.os.HandlerThread;
import android.os.Parcelable;
import android.provider.Settings;
import android.widget.TextView;
@@ -247,6 +250,19 @@ public class AddAppNetworksFragmentTest {
SCANED_LEVEL0);
}
@Test
public void onDestroy_quitWorkerThread() {
mAddAppNetworksFragment.mWorkerThread = mock(HandlerThread.class);
try {
mAddAppNetworksFragment.onDestroy();
} catch (IllegalArgumentException e) {
// Ignore the exception from super class.
}
verify(mAddAppNetworksFragment.mWorkerThread).quit();
}
private void setUpOneScannedNetworkWithScanedLevel4() {
final ArrayList list = new ArrayList<>();
list.add(mMockWifiEntry);