diff options
Diffstat (limited to 'tests/telephonytests/src/com/android/internal/telephony/NetworkScanRequestTest.java')
-rw-r--r-- | tests/telephonytests/src/com/android/internal/telephony/NetworkScanRequestTest.java | 157 |
1 files changed, 149 insertions, 8 deletions
diff --git a/tests/telephonytests/src/com/android/internal/telephony/NetworkScanRequestTest.java b/tests/telephonytests/src/com/android/internal/telephony/NetworkScanRequestTest.java index 4538deaed0..02780bd253 100644 --- a/tests/telephonytests/src/com/android/internal/telephony/NetworkScanRequestTest.java +++ b/tests/telephonytests/src/com/android/internal/telephony/NetworkScanRequestTest.java @@ -17,6 +17,7 @@ package com.android.internal.telephony; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotEquals; import android.os.Parcel; import android.telephony.AccessNetworkConstants.AccessNetworkType; @@ -30,6 +31,7 @@ import androidx.test.filters.SmallTest; import org.junit.Test; import java.util.ArrayList; +import java.util.List; /** Unit tests for {@link NetworkScanRequest}. */ public class NetworkScanRequestTest { @@ -37,6 +39,137 @@ public class NetworkScanRequestTest { @Test @SmallTest public void testParcel() { + NetworkScanRequest nsq = createNetworkScanRequest(); + + Parcel p = Parcel.obtain(); + nsq.writeToParcel(p, 0); + p.setDataPosition(0); + + NetworkScanRequest newNsq = NetworkScanRequest.CREATOR.createFromParcel(p); + assertEquals(nsq, newNsq); + } + + @Test + @SmallTest + public void testEquals_identity_allFieldsNonNull() { + NetworkScanRequest nsq = createNetworkScanRequest(); + + assertEquals(nsq, nsq); + } + + @Test + @SmallTest + public void testEquals_identify_nullRadioAccessSpecifiers() { + NetworkScanRequest nsq = createNetworkScanRequest(null, List.of("310480")); + + assertEquals(nsq, nsq); + } + + @Test + @SmallTest + public void testEquals_identify_emptyRadioAccessSpecifiers() { + NetworkScanRequest nsq = createNetworkScanRequest(new RadioAccessSpecifier[]{}, + List.of("310480")); + + assertEquals(nsq, nsq); + } + + @Test + @SmallTest + public void testEquals_identify_nullPlmns() { + NetworkScanRequest nsq = createNetworkScanRequest(new RadioAccessSpecifier[]{ + new RadioAccessSpecifier(AccessNetworkType.GERAN, null, null)}, null); + + assertEquals(nsq, nsq); + } + + @Test + @SmallTest + public void testEquals_identify_emptyPlmns() { + NetworkScanRequest nsq = createNetworkScanRequest(new RadioAccessSpecifier[]{ + new RadioAccessSpecifier(AccessNetworkType.GERAN, null, null)}, List.of()); + + assertEquals(nsq, nsq); + } + + @Test + @SmallTest + public void testEquals_identify_nullRasAndPlmns() { + NetworkScanRequest nsq = createNetworkScanRequest(null, null); + + assertEquals(nsq, nsq); + } + + @Test + @SmallTest + public void testEquals_sameValues_allFieldsNonNull() { + NetworkScanRequest nsq1 = createNetworkScanRequest(); + NetworkScanRequest nsq2 = createNetworkScanRequest(); + + assertEquals(nsq1, nsq2); + } + + @Test + @SmallTest + public void testEquals_sameValues_nullRadioAccessSpecifiers() { + NetworkScanRequest nsq1 = createNetworkScanRequest(null, List.of("310480")); + NetworkScanRequest nsq2 = createNetworkScanRequest(null, List.of("310480")); + + assertEquals(nsq1, nsq2); + } + + @Test + @SmallTest + public void testEquals_sameValues_emptyRadioAccessSpecifiers() { + NetworkScanRequest nsq1 = createNetworkScanRequest(new RadioAccessSpecifier[]{}, + List.of("310480")); + NetworkScanRequest nsq2 = createNetworkScanRequest(new RadioAccessSpecifier[]{}, + List.of("310480")); + + assertEquals(nsq1, nsq2); + } + + @Test + @SmallTest + public void testEquals_sameValues_nullPlmns() { + NetworkScanRequest nsq1 = createNetworkScanRequest(new RadioAccessSpecifier[]{ + new RadioAccessSpecifier(AccessNetworkType.GERAN, null, null)}, null); + NetworkScanRequest nsq2 = createNetworkScanRequest(new RadioAccessSpecifier[]{ + new RadioAccessSpecifier(AccessNetworkType.GERAN, null, null)}, null); + + assertEquals(nsq1, nsq2); + } + + @Test + @SmallTest + public void testEquals_sameValues_emptyPlmns() { + NetworkScanRequest nsq1 = createNetworkScanRequest(new RadioAccessSpecifier[]{ + new RadioAccessSpecifier(AccessNetworkType.GERAN, null, null)}, List.of()); + NetworkScanRequest nsq2 = createNetworkScanRequest(new RadioAccessSpecifier[]{ + new RadioAccessSpecifier(AccessNetworkType.GERAN, null, null)}, List.of()); + + assertEquals(nsq1, nsq2); + } + + @Test + @SmallTest + public void testEquals_sameValues_nullRasAndPlmns() { + NetworkScanRequest nsq1 = createNetworkScanRequest(null, null); + NetworkScanRequest nsq2 = createNetworkScanRequest(null, null); + + assertEquals(nsq1, nsq2); + } + + @Test + @SmallTest + public void testEquals_plmnsInDifferentOrder_shouldNotEqual() { + NetworkScanRequest nsq1 = createNetworkScanRequest(null, List.of("123456", "987654")); + NetworkScanRequest nsq2 = createNetworkScanRequest(null, List.of("987654", "123456")); + + assertNotEquals(nsq1, nsq2); + } + + private NetworkScanRequest createNetworkScanRequest() { int ranGsm = AccessNetworkType.GERAN; int[] gsmBands = {GeranBand.BAND_T380, GeranBand.BAND_T410}; int[] gsmChannels = {1, 2, 3, 4}; @@ -46,22 +179,30 @@ public class NetworkScanRequestTest { int[] lteChannels = {5, 6, 7, 8}; RadioAccessSpecifier lte = new RadioAccessSpecifier(ranLte, lteBands, lteChannels); RadioAccessSpecifier[] ras = {gsm, lte}; + int searchPeriodicity = 70; int maxSearchTime = 200; boolean incrementalResults = true; int incrementalResultsPeriodicity = 7; + ArrayList<String> mccmncs = new ArrayList<String>(); mccmncs.add("310480"); mccmncs.add("21002"); - NetworkScanRequest nsq = new NetworkScanRequest(NetworkScanRequest.SCAN_TYPE_ONE_SHOT, ras, - searchPeriodicity, maxSearchTime, incrementalResults, - incrementalResultsPeriodicity, mccmncs); - Parcel p = Parcel.obtain(); - nsq.writeToParcel(p, 0); - p.setDataPosition(0); + return new NetworkScanRequest(NetworkScanRequest.SCAN_TYPE_ONE_SHOT, ras, + searchPeriodicity, maxSearchTime, incrementalResults, + incrementalResultsPeriodicity, mccmncs); + } - NetworkScanRequest newNsq = NetworkScanRequest.CREATOR.createFromParcel(p); - assertEquals(nsq, newNsq); + private NetworkScanRequest createNetworkScanRequest( + RadioAccessSpecifier[] radioAccessSpecifiers, List<String> plmns) { + int searchPeriodicity = 70; + int maxSearchTime = 200; + boolean incrementalResults = true; + int incrementalResultsPeriodicity = 7; + + return new NetworkScanRequest(NetworkScanRequest.SCAN_TYPE_ONE_SHOT, radioAccessSpecifiers, + searchPeriodicity, maxSearchTime, incrementalResults, + incrementalResultsPeriodicity, plmns != null ? new ArrayList<>(plmns) : null); } } |