Loading core/java/android/net/RecommendationRequest.java +18 −2 Original line number Diff line number Diff line Loading @@ -105,7 +105,16 @@ public final class RecommendationRequest implements Parcelable { } protected RecommendationRequest(Parcel in) { mScanResults = (ScanResult[]) in.readParcelableArray(ScanResult.class.getClassLoader()); final int resultCount = in.readInt(); if (resultCount > 0) { mScanResults = new ScanResult[resultCount]; for (int i = 0; i < resultCount; i++) { mScanResults[i] = in.readParcelable(ScanResult.class.getClassLoader()); } } else { mScanResults = null; } mCurrentSelectedConfig = in.readParcelable(WifiConfiguration.class.getClassLoader()); mRequiredCapabilities = in.readParcelable(NetworkCapabilities.class.getClassLoader()); } Loading @@ -117,7 +126,14 @@ public final class RecommendationRequest implements Parcelable { @Override public void writeToParcel(Parcel dest, int flags) { dest.writeParcelableArray(mScanResults, flags); if (mScanResults != null) { dest.writeInt(mScanResults.length); for (int i = 0; i < mScanResults.length; i++) { dest.writeParcelable(mScanResults[i], flags); } } else { dest.writeInt(0); } dest.writeParcelable(mCurrentSelectedConfig, flags); dest.writeParcelable(mRequiredCapabilities, flags); } Loading core/tests/coretests/src/android/net/RecommendationRequestTest.java 0 → 100644 +84 −0 Original line number Diff line number Diff line package android.net; import android.net.wifi.ScanResult; import android.net.wifi.WifiConfiguration; import android.os.Parcel; import android.test.AndroidTestCase; public class RecommendationRequestTest extends AndroidTestCase { private ScanResult[] mScanResults; private WifiConfiguration mConfiguration; private NetworkCapabilities mCapabilities; @Override public void setUp() throws Exception { mScanResults = new ScanResult[2]; mScanResults[0] = new ScanResult(); mScanResults[1] = new ScanResult( "ssid", "bssid", 0L /*hessid*/, 1 /*anqpDominId*/, "caps", 2 /*level*/, 3 /*frequency*/, 4L /*tsf*/, 5 /*distCm*/, 6 /*distSdCm*/, 7 /*channelWidth*/, 8 /*centerFreq0*/, 9 /*centerFreq1*/, false /*is80211McRTTResponder*/); mConfiguration = new WifiConfiguration(); mConfiguration.SSID = "RecommendationRequestTest"; mCapabilities = new NetworkCapabilities() .removeCapability(NetworkCapabilities.NET_CAPABILITY_TRUSTED); } public void testParceling() throws Exception { RecommendationRequest request = new RecommendationRequest.Builder() .setCurrentRecommendedWifiConfig(mConfiguration) .setScanResults(mScanResults) .setNetworkCapabilities(mCapabilities) .build(); RecommendationRequest parceled = passThroughParcel(request); assertEquals(request.getCurrentSelectedConfig().SSID, parceled.getCurrentSelectedConfig().SSID); assertEquals(request.getRequiredCapabilities(), parceled.getRequiredCapabilities()); ScanResult[] parceledScanResults = parceled.getScanResults(); assertNotNull(parceledScanResults); assertEquals(mScanResults.length, parceledScanResults.length); for (int i = 0; i < mScanResults.length; i++) { assertEquals(mScanResults[i].SSID, parceledScanResults[i].SSID); } } public void testParceling_nullScanResults() throws Exception { RecommendationRequest request = new RecommendationRequest.Builder() .setCurrentRecommendedWifiConfig(mConfiguration) .setNetworkCapabilities(mCapabilities) .build(); RecommendationRequest parceled = passThroughParcel(request); assertEquals(request.getCurrentSelectedConfig().SSID, parceled.getCurrentSelectedConfig().SSID); assertEquals(request.getRequiredCapabilities(), parceled.getRequiredCapabilities()); ScanResult[] parceledScanResults = parceled.getScanResults(); assertNull(parceledScanResults); } private RecommendationRequest passThroughParcel(RecommendationRequest request) { Parcel p = Parcel.obtain(); RecommendationRequest output = null; try { request.writeToParcel(p, 0); p.setDataPosition(0); output = RecommendationRequest.CREATOR.createFromParcel(p); } finally { p.recycle(); } assertNotNull(output); return output; } } Loading
core/java/android/net/RecommendationRequest.java +18 −2 Original line number Diff line number Diff line Loading @@ -105,7 +105,16 @@ public final class RecommendationRequest implements Parcelable { } protected RecommendationRequest(Parcel in) { mScanResults = (ScanResult[]) in.readParcelableArray(ScanResult.class.getClassLoader()); final int resultCount = in.readInt(); if (resultCount > 0) { mScanResults = new ScanResult[resultCount]; for (int i = 0; i < resultCount; i++) { mScanResults[i] = in.readParcelable(ScanResult.class.getClassLoader()); } } else { mScanResults = null; } mCurrentSelectedConfig = in.readParcelable(WifiConfiguration.class.getClassLoader()); mRequiredCapabilities = in.readParcelable(NetworkCapabilities.class.getClassLoader()); } Loading @@ -117,7 +126,14 @@ public final class RecommendationRequest implements Parcelable { @Override public void writeToParcel(Parcel dest, int flags) { dest.writeParcelableArray(mScanResults, flags); if (mScanResults != null) { dest.writeInt(mScanResults.length); for (int i = 0; i < mScanResults.length; i++) { dest.writeParcelable(mScanResults[i], flags); } } else { dest.writeInt(0); } dest.writeParcelable(mCurrentSelectedConfig, flags); dest.writeParcelable(mRequiredCapabilities, flags); } Loading
core/tests/coretests/src/android/net/RecommendationRequestTest.java 0 → 100644 +84 −0 Original line number Diff line number Diff line package android.net; import android.net.wifi.ScanResult; import android.net.wifi.WifiConfiguration; import android.os.Parcel; import android.test.AndroidTestCase; public class RecommendationRequestTest extends AndroidTestCase { private ScanResult[] mScanResults; private WifiConfiguration mConfiguration; private NetworkCapabilities mCapabilities; @Override public void setUp() throws Exception { mScanResults = new ScanResult[2]; mScanResults[0] = new ScanResult(); mScanResults[1] = new ScanResult( "ssid", "bssid", 0L /*hessid*/, 1 /*anqpDominId*/, "caps", 2 /*level*/, 3 /*frequency*/, 4L /*tsf*/, 5 /*distCm*/, 6 /*distSdCm*/, 7 /*channelWidth*/, 8 /*centerFreq0*/, 9 /*centerFreq1*/, false /*is80211McRTTResponder*/); mConfiguration = new WifiConfiguration(); mConfiguration.SSID = "RecommendationRequestTest"; mCapabilities = new NetworkCapabilities() .removeCapability(NetworkCapabilities.NET_CAPABILITY_TRUSTED); } public void testParceling() throws Exception { RecommendationRequest request = new RecommendationRequest.Builder() .setCurrentRecommendedWifiConfig(mConfiguration) .setScanResults(mScanResults) .setNetworkCapabilities(mCapabilities) .build(); RecommendationRequest parceled = passThroughParcel(request); assertEquals(request.getCurrentSelectedConfig().SSID, parceled.getCurrentSelectedConfig().SSID); assertEquals(request.getRequiredCapabilities(), parceled.getRequiredCapabilities()); ScanResult[] parceledScanResults = parceled.getScanResults(); assertNotNull(parceledScanResults); assertEquals(mScanResults.length, parceledScanResults.length); for (int i = 0; i < mScanResults.length; i++) { assertEquals(mScanResults[i].SSID, parceledScanResults[i].SSID); } } public void testParceling_nullScanResults() throws Exception { RecommendationRequest request = new RecommendationRequest.Builder() .setCurrentRecommendedWifiConfig(mConfiguration) .setNetworkCapabilities(mCapabilities) .build(); RecommendationRequest parceled = passThroughParcel(request); assertEquals(request.getCurrentSelectedConfig().SSID, parceled.getCurrentSelectedConfig().SSID); assertEquals(request.getRequiredCapabilities(), parceled.getRequiredCapabilities()); ScanResult[] parceledScanResults = parceled.getScanResults(); assertNull(parceledScanResults); } private RecommendationRequest passThroughParcel(RecommendationRequest request) { Parcel p = Parcel.obtain(); RecommendationRequest output = null; try { request.writeToParcel(p, 0); p.setDataPosition(0); output = RecommendationRequest.CREATOR.createFromParcel(p); } finally { p.recycle(); } assertNotNull(output); return output; } }