[Wi-Fi] Fix data usage screen flash 1~2 times problem
Data loaders should be destroyed at onPause or the APP list will be updated twice. Bug: 146841747 Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageListTest Change-Id: Ic1b8ef443dd8e50777f1e3a16977add654748c54
This commit is contained in:
@@ -38,6 +38,7 @@ import android.widget.FrameLayout;
|
||||
import android.widget.Spinner;
|
||||
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.loader.app.LoaderManager;
|
||||
import androidx.preference.PreferenceManager;
|
||||
|
||||
import com.android.settings.R;
|
||||
@@ -71,6 +72,8 @@ public class DataUsageListTest {
|
||||
private MobileDataEnabledListener mMobileDataEnabledListener;
|
||||
@Mock
|
||||
private TemplatePreference.NetworkServices mNetworkServices;
|
||||
@Mock
|
||||
private LoaderManager mLoaderManager;
|
||||
|
||||
private Activity mActivity;
|
||||
private DataUsageList mDataUsageList;
|
||||
@@ -90,6 +93,7 @@ public class DataUsageListTest {
|
||||
ReflectionHelpers.setField(mDataUsageList, "mDataStateListener",
|
||||
mMobileDataEnabledListener);
|
||||
ReflectionHelpers.setField(mDataUsageList, "services", mNetworkServices);
|
||||
doReturn(mLoaderManager).when(mDataUsageList).getLoaderManager();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -216,6 +220,14 @@ public class DataUsageListTest {
|
||||
assertThat(spinner.getVisibility()).isEqualTo(View.VISIBLE);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onPause_shouldDestroyLoaders() {
|
||||
mDataUsageList.onPause();
|
||||
|
||||
verify(mLoaderManager).destroyLoader(DataUsageList.LOADER_CHART_DATA);
|
||||
verify(mLoaderManager).destroyLoader(DataUsageList.LOADER_SUMMARY);
|
||||
}
|
||||
|
||||
private View getHeader() {
|
||||
final View rootView = LayoutInflater.from(mActivity)
|
||||
.inflate(R.layout.preference_list_fragment, null, false);
|
||||
|
Reference in New Issue
Block a user