Add tests for CellIdentityLte/Nr getBands
Test: atest TelephonyManagerTest
Bug: 150481691
Change-Id: I822948b68d44bc10849645808262c9a9fbda912c
diff --git a/tests/tests/telephony/current/src/android/telephony/cts/TelephonyManagerTest.java b/tests/tests/telephony/current/src/android/telephony/cts/TelephonyManagerTest.java
index e32b9f8..02a2971 100644
--- a/tests/tests/telephony/current/src/android/telephony/cts/TelephonyManagerTest.java
+++ b/tests/tests/telephony/current/src/android/telephony/cts/TelephonyManagerTest.java
@@ -58,6 +58,9 @@
import android.telephony.CallQuality;
import android.telephony.CarrierBandwidth;
import android.telephony.CarrierConfigManager;
+import android.telephony.CellIdentity;
+import android.telephony.CellIdentityLte;
+import android.telephony.CellIdentityNr;
import android.telephony.CellInfo;
import android.telephony.CellLocation;
import android.telephony.DataThrottlingRequest;
@@ -182,6 +185,7 @@
private static final String TESTING_PLMN = "12345";
private static final int RADIO_HAL_VERSION_1_3 = makeRadioVersion(1, 3);
+ private static final int RADIO_HAL_VERSION_1_5 = makeRadioVersion(1, 5);
private static final int RADIO_HAL_VERSION_1_6 = makeRadioVersion(1, 6);
static {
@@ -3355,6 +3359,40 @@
assertFalse(mTelephonyManager.isRadioInterfaceCapabilitySupported(""));
}
+ @Test
+ public void testGetAllCellInfo() {
+ if (!mPackageManager.hasSystemFeature(PackageManager.FEATURE_TELEPHONY)) return;
+
+ // For IRadio <1.5, just verify that calling the method doesn't throw an error.
+ if (mRadioVersion < RADIO_HAL_VERSION_1_5) {
+ mTelephonyManager.getAllCellInfo();
+ return;
+ }
+
+ for (CellInfo cellInfo : mTelephonyManager.getAllCellInfo()) {
+ CellIdentity cellIdentity = cellInfo.getCellIdentity();
+ int[] bands;
+ if (cellIdentity instanceof CellIdentityLte) {
+ bands = ((CellIdentityLte) cellIdentity).getBands();
+ for (int band : bands) {
+ assertTrue(band >= AccessNetworkConstants.EutranBand.BAND_1
+ && band <= AccessNetworkConstants.EutranBand.BAND_88);
+ }
+ } else if (cellIdentity instanceof CellIdentityNr) {
+ bands = ((CellIdentityNr) cellIdentity).getBands();
+ for (int band : bands) {
+ assertTrue((band >= AccessNetworkConstants.NgranBands.BAND_1
+ && band <= AccessNetworkConstants.NgranBands.BAND_95)
+ || (band >= AccessNetworkConstants.NgranBands.BAND_257
+ && band <= AccessNetworkConstants.NgranBands.BAND_261));
+ }
+ } else {
+ continue;
+ }
+ assertTrue(bands.length > 0);
+ }
+ }
+
/**
* Validate Emergency Number address that only contains the dialable character.
*