Merge "Resolve resource ID at runtime to stabilize tests"
am: f9b69119bf
Change-Id: I441a025af2263522fc4c14cb2fd17ccffe149819
This commit is contained in:
@@ -44,6 +44,7 @@ import android.content.Context;
|
|||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
|
import android.content.res.Resources;
|
||||||
import android.net.ConnectivityManager;
|
import android.net.ConnectivityManager;
|
||||||
import android.net.ConnectivityManager.NetworkCallback;
|
import android.net.ConnectivityManager.NetworkCallback;
|
||||||
import android.net.IpSecManager;
|
import android.net.IpSecManager;
|
||||||
@@ -75,9 +76,6 @@ import android.util.Pair;
|
|||||||
|
|
||||||
import androidx.test.InstrumentationRegistry;
|
import androidx.test.InstrumentationRegistry;
|
||||||
|
|
||||||
import com.android.internal.R;
|
|
||||||
import com.android.internal.telephony.PhoneConstants;
|
|
||||||
|
|
||||||
import libcore.io.Streams;
|
import libcore.io.Streams;
|
||||||
|
|
||||||
import java.io.FileDescriptor;
|
import java.io.FileDescriptor;
|
||||||
@@ -129,6 +127,13 @@ public class ConnectivityManagerTest extends AndroidTestCase {
|
|||||||
public static final int MIN_SUPPORTED_CELLULAR_KEEPALIVE_COUNT = 1;
|
public static final int MIN_SUPPORTED_CELLULAR_KEEPALIVE_COUNT = 1;
|
||||||
public static final int MIN_SUPPORTED_WIFI_KEEPALIVE_COUNT = 3;
|
public static final int MIN_SUPPORTED_WIFI_KEEPALIVE_COUNT = 3;
|
||||||
|
|
||||||
|
private static final String NETWORK_METERED_MULTIPATH_PREFERENCE_RES_NAME =
|
||||||
|
"config_networkMeteredMultipathPreference";
|
||||||
|
private static final String KEEPALIVE_ALLOWED_UNPRIVILEGED_RES_NAME =
|
||||||
|
"config_allowedUnprivilegedKeepalivePerUid";
|
||||||
|
private static final String KEEPALIVE_RESERVED_PER_SLOT_RES_NAME =
|
||||||
|
"config_reservedPrivilegedKeepaliveSlots";
|
||||||
|
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
private Instrumentation mInstrumentation;
|
private Instrumentation mInstrumentation;
|
||||||
private ConnectivityManager mCm;
|
private ConnectivityManager mCm;
|
||||||
@@ -376,9 +381,6 @@ public class ConnectivityManagerTest extends AndroidTestCase {
|
|||||||
|
|
||||||
final String invalidateFeature = "invalidateFeature";
|
final String invalidateFeature = "invalidateFeature";
|
||||||
final String mmsFeature = "enableMMS";
|
final String mmsFeature = "enableMMS";
|
||||||
final int failureCode = -1;
|
|
||||||
final int wifiOnlyStartFailureCode = PhoneConstants.APN_REQUEST_FAILED;
|
|
||||||
final int wifiOnlyStopFailureCode = -1;
|
|
||||||
|
|
||||||
assertStartUsingNetworkFeatureUnsupported(TYPE_MOBILE, invalidateFeature);
|
assertStartUsingNetworkFeatureUnsupported(TYPE_MOBILE, invalidateFeature);
|
||||||
assertStopUsingNetworkFeatureUnsupported(TYPE_MOBILE, invalidateFeature);
|
assertStopUsingNetworkFeatureUnsupported(TYPE_MOBILE, invalidateFeature);
|
||||||
@@ -672,7 +674,7 @@ public class ConnectivityManagerTest extends AndroidTestCase {
|
|||||||
final String rawMeteredPref = Settings.Global.getString(resolver,
|
final String rawMeteredPref = Settings.Global.getString(resolver,
|
||||||
NETWORK_METERED_MULTIPATH_PREFERENCE);
|
NETWORK_METERED_MULTIPATH_PREFERENCE);
|
||||||
return TextUtils.isEmpty(rawMeteredPref)
|
return TextUtils.isEmpty(rawMeteredPref)
|
||||||
? mContext.getResources().getInteger(R.integer.config_networkMeteredMultipathPreference)
|
? getIntResourceForName(NETWORK_METERED_MULTIPATH_PREFERENCE_RES_NAME)
|
||||||
: Integer.parseInt(rawMeteredPref);
|
: Integer.parseInt(rawMeteredPref);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1216,6 +1218,12 @@ public class ConnectivityManagerTest extends AndroidTestCase {
|
|||||||
dropShellPermissionIdentity();
|
dropShellPermissionIdentity();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private int getIntResourceForName(@NonNull String resName) {
|
||||||
|
final Resources r = mContext.getResources();
|
||||||
|
final int resId = r.getIdentifier(resName, "integer", "android");
|
||||||
|
return r.getInteger(resId);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Verifies that the keepalive slots are limited as customized for unprivileged requests.
|
* Verifies that the keepalive slots are limited as customized for unprivileged requests.
|
||||||
*/
|
*/
|
||||||
@@ -1233,10 +1241,12 @@ public class ConnectivityManagerTest extends AndroidTestCase {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
final int allowedUnprivilegedPerUid = mContext.getResources().getInteger(
|
// Resource ID might be shifted on devices that compiled with different symbols.
|
||||||
R.integer.config_allowedUnprivilegedKeepalivePerUid);
|
// Thus, resolve ID at runtime is needed.
|
||||||
final int reservedPrivilegedSlots = mContext.getResources().getInteger(
|
final int allowedUnprivilegedPerUid =
|
||||||
R.integer.config_reservedPrivilegedKeepaliveSlots);
|
getIntResourceForName(KEEPALIVE_ALLOWED_UNPRIVILEGED_RES_NAME);
|
||||||
|
final int reservedPrivilegedSlots =
|
||||||
|
getIntResourceForName(KEEPALIVE_RESERVED_PER_SLOT_RES_NAME);
|
||||||
// Verifies that unprivileged request per uid cannot exceed the limit customized in the
|
// Verifies that unprivileged request per uid cannot exceed the limit customized in the
|
||||||
// resource. Currently, unprivileged keepalive slots are limited to Nat-T only, this test
|
// resource. Currently, unprivileged keepalive slots are limited to Nat-T only, this test
|
||||||
// does not apply to TCP.
|
// does not apply to TCP.
|
||||||
|
|||||||
Reference in New Issue
Block a user