Improve SatelliteAccessControllerTest (unit test) isolation
Also, improve incomplete environment handling in SatelliteAccessController
Bug: 365800992
Test: com.android.phone.satellite.accesscontrol.SatelliteAccessControllerTest
Test: com.android.phone.satellite.entitlement.SatelliteEntitlementControllerTest
Flag: EXEMPT bugfix
Change-Id: Ibe257752ef3c0a174e9455042082d0369ac864fb
diff --git a/tests/src/com/android/TestContext.java b/tests/src/com/android/TestContext.java
index a684ef5..fe88ae6 100644
--- a/tests/src/com/android/TestContext.java
+++ b/tests/src/com/android/TestContext.java
@@ -21,6 +21,8 @@
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.when;
+import android.annotation.NonNull;
+import android.annotation.Nullable;
import android.content.AttributionSource;
import android.content.BroadcastReceiver;
import android.content.ContentResolver;
@@ -28,6 +30,8 @@
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.PackageManager;
+import android.content.res.AssetManager;
+import android.content.res.Resources;
import android.os.Binder;
import android.os.Handler;
import android.os.Looper;
@@ -44,7 +48,10 @@
import android.util.Log;
import android.util.SparseArray;
+import androidx.test.InstrumentationRegistry;
+
import org.mockito.Mock;
+import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.mockito.stubbing.Answer;
@@ -87,6 +94,11 @@
}
@Override
+ public AssetManager getAssets() {
+ return Mockito.mock(AssetManager.class);
+ }
+
+ @Override
public Executor getMainExecutor() {
// Just run on current thread
return Runnable::run;
@@ -98,6 +110,11 @@
}
@Override
+ public @NonNull Context createAttributionContext(@Nullable String attributionTag) {
+ return this;
+ }
+
+ @Override
public String getPackageName() {
return "com.android.phone.tests";
}
@@ -226,6 +243,11 @@
return new Handler(Looper.getMainLooper());
}
+ @Override
+ public Resources.Theme getTheme() {
+ return InstrumentationRegistry.getTargetContext().getTheme();
+ }
+
/**
* @return CarrierConfig PersistableBundle for the subscription specified.
*/