Fix getters to return null on failure.

Per API review comment, changed getters for hotspot and
known network to return null on failure.
Fixed tests to correspond to the fix.

Bug: 271178371
Test: atest SharedConnectivityManagerTest
Change-Id: I6a1aac661d1d0f7a730d52a1ee92fd6ea2705cf5
This commit is contained in:
Isaac Katzenelson
2023-03-08 00:34:42 +00:00
parent 649a3e61e4
commit 61fcbaf7a3
3 changed files with 20 additions and 18 deletions

View File

@@ -10141,9 +10141,9 @@ package android.net.wifi.sharedconnectivity.app {
method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean disconnectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean forgetKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus getHotspotNetworkConnectionStatus();
method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.net.wifi.sharedconnectivity.app.HotspotNetwork> getHotspotNetworks();
method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.net.wifi.sharedconnectivity.app.HotspotNetwork> getHotspotNetworks();
method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus getKnownNetworkConnectionStatus();
method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.net.wifi.sharedconnectivity.app.KnownNetwork> getKnownNetworks();
method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.net.wifi.sharedconnectivity.app.KnownNetwork> getKnownNetworks();
method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState getSettingsState();
method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void registerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivityClientCallback);
method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean unregisterCallback(@NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivityClientCallback);

View File

@@ -434,14 +434,15 @@ public class SharedConnectivityManager {
/**
* Gets the list of hotspot networks the user can select to connect to.
*
* @return Returns a {@link List} of {@link HotspotNetwork} objects, empty list on failure.
* @return Returns a {@link List} of {@link HotspotNetwork} objects, null on failure.
*/
@RequiresPermission(anyOf = {android.Manifest.permission.NETWORK_SETTINGS,
android.Manifest.permission.NETWORK_SETUP_WIZARD})
@NonNull
@SuppressWarnings("NullableCollection")
@Nullable
public List<HotspotNetwork> getHotspotNetworks() {
if (mService == null) {
return List.of();
return null;
}
try {
@@ -449,20 +450,21 @@ public class SharedConnectivityManager {
} catch (RemoteException e) {
Log.e(TAG, "Exception in getHotspotNetworks", e);
}
return List.of();
return null;
}
/**
* Gets the list of known networks the user can select to connect to.
*
* @return Returns a {@link List} of {@link KnownNetwork} objects, empty list on failure.
* @return Returns a {@link List} of {@link KnownNetwork} objects, null on failure.
*/
@RequiresPermission(anyOf = {android.Manifest.permission.NETWORK_SETTINGS,
android.Manifest.permission.NETWORK_SETUP_WIZARD})
@NonNull
@SuppressWarnings("NullableCollection")
@Nullable
public List<KnownNetwork> getKnownNetworks() {
if (mService == null) {
return List.of();
return null;
}
try {
@@ -470,7 +472,7 @@ public class SharedConnectivityManager {
} catch (RemoteException e) {
Log.e(TAG, "Exception in getKnownNetworks", e);
}
return List.of();
return null;
}
/**

View File

@@ -423,20 +423,20 @@ public class SharedConnectivityManagerTest {
* Verify getters.
*/
@Test
public void getHotspotNetworks_serviceNotConnected_shouldReturnEmptyList() {
public void getHotspotNetworks_serviceNotConnected_shouldReturnNull() {
SharedConnectivityManager manager = SharedConnectivityManager.create(mContext);
manager.setService(null);
assertThat(manager.getKnownNetworks()).isEmpty();
assertThat(manager.getHotspotNetworks()).isNull();
}
@Test
public void getHotspotNetworks_remoteException_shouldReturnEmptyList() throws RemoteException {
public void getHotspotNetworks_remoteException_shouldReturnNull() throws RemoteException {
SharedConnectivityManager manager = SharedConnectivityManager.create(mContext);
manager.setService(mService);
doThrow(new RemoteException()).when(mService).getHotspotNetworks();
assertThat(manager.getKnownNetworks()).isEmpty();
assertThat(manager.getHotspotNetworks()).isNull();
}
@Test
@@ -450,21 +450,21 @@ public class SharedConnectivityManagerTest {
}
@Test
public void getKnownNetworks_serviceNotConnected_shouldReturnEmptyList()
public void getKnownNetworks_serviceNotConnected_shouldReturnNull()
throws RemoteException {
SharedConnectivityManager manager = SharedConnectivityManager.create(mContext);
manager.setService(null);
assertThat(manager.getKnownNetworks()).isEmpty();
assertThat(manager.getKnownNetworks()).isNull();
}
@Test
public void getKnownNetworks_remoteException_shouldReturnEmptyList() throws RemoteException {
public void getKnownNetworks_remoteException_shouldReturnNull() throws RemoteException {
SharedConnectivityManager manager = SharedConnectivityManager.create(mContext);
manager.setService(mService);
doThrow(new RemoteException()).when(mService).getKnownNetworks();
assertThat(manager.getKnownNetworks()).isEmpty();
assertThat(manager.getKnownNetworks()).isNull();
}
@Test