[Safer intents] Permission controller
To avoid implicit intents, make intents launch explicitly. Test: build, manual Bug: 323061508 Change-Id: Ib95b417fc8682f690890fc55f321b4fece2c0369
This commit is contained in:
@@ -20,13 +20,16 @@ import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.Mockito.doNothing;
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.doThrow;
|
||||
import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.content.ActivityNotFoundException;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.PackageManager;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
@@ -52,7 +55,6 @@ public class TopLevelSafetyCenterEntryPreferenceControllerTest {
|
||||
@Mock
|
||||
private SafetyCenterManagerWrapper mSafetyCenterManagerWrapper;
|
||||
|
||||
@Mock
|
||||
private Context mContext;
|
||||
|
||||
@Before
|
||||
@@ -60,7 +62,12 @@ public class TopLevelSafetyCenterEntryPreferenceControllerTest {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
SafetyCenterManagerWrapper.sInstance = mSafetyCenterManagerWrapper;
|
||||
|
||||
mPreference = new Preference(ApplicationProvider.getApplicationContext());
|
||||
mContext = spy(ApplicationProvider.getApplicationContext());
|
||||
PackageManager pm = spy(mContext.getPackageManager());
|
||||
doReturn(pm).when(mContext).getPackageManager();
|
||||
doReturn("com.android.permissioncontroller").when(pm).getPermissionControllerPackageName();
|
||||
|
||||
mPreference = new Preference(mContext);
|
||||
mPreference.setKey(PREFERENCE_KEY);
|
||||
|
||||
doNothing().when(mContext).startActivity(any(Intent.class));
|
||||
@@ -75,7 +82,7 @@ public class TopLevelSafetyCenterEntryPreferenceControllerTest {
|
||||
|
||||
@Test
|
||||
public void handlePreferenceTreeClick_forDifferentPreferenceKey_isNotHandled() {
|
||||
Preference preference = new Preference(ApplicationProvider.getApplicationContext());
|
||||
Preference preference = new Preference(mContext);
|
||||
preference.setKey("some_other_preference");
|
||||
|
||||
boolean preferenceHandled =
|
||||
|
@@ -20,6 +20,8 @@ import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.Mockito.doNothing;
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.times;
|
||||
import static org.mockito.Mockito.verify;
|
||||
@@ -27,6 +29,7 @@ import static org.mockito.Mockito.when;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.PackageManager;
|
||||
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
import androidx.test.platform.app.InstrumentationRegistry;
|
||||
@@ -80,6 +83,10 @@ public class SecurityDashboardActivityTest {
|
||||
}
|
||||
});
|
||||
doNothing().when(mActivity).startActivity(any(Intent.class));
|
||||
|
||||
PackageManager pm = mock(PackageManager.class);
|
||||
doReturn(pm).when(mActivity).getPackageManager();
|
||||
doReturn("com.android.permissioncontroller").when(pm).getPermissionControllerPackageName();
|
||||
}
|
||||
|
||||
@Test
|
||||
|
Reference in New Issue
Block a user