Loading wifi/java/android/net/wifi/p2p/WifiP2pDevice.java +5 −4 Original line number Diff line number Diff line Loading @@ -17,14 +17,13 @@ package android.net.wifi.p2p; import android.annotation.UnsupportedAppUsage; import android.os.Parcelable; import android.os.Parcel; import android.os.Parcelable; import android.util.Log; import java.util.Objects; import java.util.regex.Pattern; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * A class representing a Wi-Fi p2p device Loading Loading @@ -360,9 +359,11 @@ public class WifiP2pDevice implements Parcelable { deviceCapability = source.deviceCapability; groupCapability = source.groupCapability; status = source.status; if (source.wfdInfo != null) { wfdInfo = new WifiP2pWfdInfo(source.wfdInfo); } } } /** Implement the Parcelable interface */ @Override Loading wifi/tests/src/android/net/wifi/p2p/WifiP2pDeviceTest.java +73 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,31 @@ import org.junit.Test; @SmallTest public class WifiP2pDeviceTest { /** * Compare two p2p devices. * * @param devA is the first device to be compared * @param devB is the second device to be compared */ private void compareWifiP2pDevices(WifiP2pDevice devA, WifiP2pDevice devB) { assertEquals(devA.deviceName, devB.deviceName); assertEquals(devA.deviceAddress, devB.deviceAddress); assertEquals(devA.primaryDeviceType, devB.primaryDeviceType); assertEquals(devA.secondaryDeviceType, devB.secondaryDeviceType); assertEquals(devA.wpsConfigMethodsSupported, devB.wpsConfigMethodsSupported); assertEquals(devA.deviceCapability, devB.deviceCapability); assertEquals(devA.groupCapability, devB.groupCapability); assertEquals(devA.status, devB.status); if (devA.wfdInfo != null) { assertEquals(devA.wfdInfo.isWfdEnabled(), devB.wfdInfo.isWfdEnabled()); assertEquals(devA.wfdInfo.getDeviceInfoHex(), devB.wfdInfo.getDeviceInfoHex()); assertEquals(devA.wfdInfo.getControlPort(), devB.wfdInfo.getControlPort()); assertEquals(devA.wfdInfo.getMaxThroughput(), devB.wfdInfo.getMaxThroughput()); } else { assertEquals(devA.wfdInfo, devB.wfdInfo); } } /** * Check equals and hashCode consistency */ Loading @@ -42,4 +67,52 @@ public class WifiP2pDeviceTest { assertTrue(dev_a.equals(dev_b)); assertEquals(dev_a.hashCode(), dev_b.hashCode()); } /** * Check the copy constructor with default values. */ @Test public void testCopyConstructorWithDefaultValues() throws Exception { WifiP2pDevice device = new WifiP2pDevice(); WifiP2pDevice copy = new WifiP2pDevice(device); compareWifiP2pDevices(device, copy); } /** * Check the copy constructor with updated values. */ @Test public void testCopyConstructorWithUpdatedValues() throws Exception { WifiP2pDevice device = new WifiP2pDevice(); device.deviceName = "deviceName"; device.deviceAddress = "11:22:33:44:55:66"; device.primaryDeviceType = "primaryDeviceType"; device.secondaryDeviceType = "secondaryDeviceType"; device.wpsConfigMethodsSupported = 0x0008; device.deviceCapability = 1; device.groupCapability = 1; device.status = WifiP2pDevice.CONNECTED; device.wfdInfo = new WifiP2pWfdInfo(); WifiP2pDevice copy = new WifiP2pDevice(device); compareWifiP2pDevices(device, copy); } /** * Check the copy constructor when the wfdInfo of the source object is null. */ @Test public void testCopyConstructorWithNullWfdInfo() throws Exception { WifiP2pDevice device = new WifiP2pDevice(); device.deviceName = "deviceName"; device.deviceAddress = "11:22:33:44:55:66"; device.primaryDeviceType = "primaryDeviceType"; device.secondaryDeviceType = "secondaryDeviceType"; device.wpsConfigMethodsSupported = 0x0008; device.deviceCapability = 1; device.groupCapability = 1; device.status = WifiP2pDevice.CONNECTED; device.wfdInfo = null; WifiP2pDevice copy = new WifiP2pDevice(device); compareWifiP2pDevices(device, copy); } } Loading
wifi/java/android/net/wifi/p2p/WifiP2pDevice.java +5 −4 Original line number Diff line number Diff line Loading @@ -17,14 +17,13 @@ package android.net.wifi.p2p; import android.annotation.UnsupportedAppUsage; import android.os.Parcelable; import android.os.Parcel; import android.os.Parcelable; import android.util.Log; import java.util.Objects; import java.util.regex.Pattern; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * A class representing a Wi-Fi p2p device Loading Loading @@ -360,9 +359,11 @@ public class WifiP2pDevice implements Parcelable { deviceCapability = source.deviceCapability; groupCapability = source.groupCapability; status = source.status; if (source.wfdInfo != null) { wfdInfo = new WifiP2pWfdInfo(source.wfdInfo); } } } /** Implement the Parcelable interface */ @Override Loading
wifi/tests/src/android/net/wifi/p2p/WifiP2pDeviceTest.java +73 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,31 @@ import org.junit.Test; @SmallTest public class WifiP2pDeviceTest { /** * Compare two p2p devices. * * @param devA is the first device to be compared * @param devB is the second device to be compared */ private void compareWifiP2pDevices(WifiP2pDevice devA, WifiP2pDevice devB) { assertEquals(devA.deviceName, devB.deviceName); assertEquals(devA.deviceAddress, devB.deviceAddress); assertEquals(devA.primaryDeviceType, devB.primaryDeviceType); assertEquals(devA.secondaryDeviceType, devB.secondaryDeviceType); assertEquals(devA.wpsConfigMethodsSupported, devB.wpsConfigMethodsSupported); assertEquals(devA.deviceCapability, devB.deviceCapability); assertEquals(devA.groupCapability, devB.groupCapability); assertEquals(devA.status, devB.status); if (devA.wfdInfo != null) { assertEquals(devA.wfdInfo.isWfdEnabled(), devB.wfdInfo.isWfdEnabled()); assertEquals(devA.wfdInfo.getDeviceInfoHex(), devB.wfdInfo.getDeviceInfoHex()); assertEquals(devA.wfdInfo.getControlPort(), devB.wfdInfo.getControlPort()); assertEquals(devA.wfdInfo.getMaxThroughput(), devB.wfdInfo.getMaxThroughput()); } else { assertEquals(devA.wfdInfo, devB.wfdInfo); } } /** * Check equals and hashCode consistency */ Loading @@ -42,4 +67,52 @@ public class WifiP2pDeviceTest { assertTrue(dev_a.equals(dev_b)); assertEquals(dev_a.hashCode(), dev_b.hashCode()); } /** * Check the copy constructor with default values. */ @Test public void testCopyConstructorWithDefaultValues() throws Exception { WifiP2pDevice device = new WifiP2pDevice(); WifiP2pDevice copy = new WifiP2pDevice(device); compareWifiP2pDevices(device, copy); } /** * Check the copy constructor with updated values. */ @Test public void testCopyConstructorWithUpdatedValues() throws Exception { WifiP2pDevice device = new WifiP2pDevice(); device.deviceName = "deviceName"; device.deviceAddress = "11:22:33:44:55:66"; device.primaryDeviceType = "primaryDeviceType"; device.secondaryDeviceType = "secondaryDeviceType"; device.wpsConfigMethodsSupported = 0x0008; device.deviceCapability = 1; device.groupCapability = 1; device.status = WifiP2pDevice.CONNECTED; device.wfdInfo = new WifiP2pWfdInfo(); WifiP2pDevice copy = new WifiP2pDevice(device); compareWifiP2pDevices(device, copy); } /** * Check the copy constructor when the wfdInfo of the source object is null. */ @Test public void testCopyConstructorWithNullWfdInfo() throws Exception { WifiP2pDevice device = new WifiP2pDevice(); device.deviceName = "deviceName"; device.deviceAddress = "11:22:33:44:55:66"; device.primaryDeviceType = "primaryDeviceType"; device.secondaryDeviceType = "secondaryDeviceType"; device.wpsConfigMethodsSupported = 0x0008; device.deviceCapability = 1; device.groupCapability = 1; device.status = WifiP2pDevice.CONNECTED; device.wfdInfo = null; WifiP2pDevice copy = new WifiP2pDevice(device); compareWifiP2pDevices(device, copy); } }