Merge "Tempates with different subscriber ID should be not equal"
This commit is contained in:
@@ -383,8 +383,9 @@ public final class NetworkTemplate implements Parcelable {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return Objects.hash(mMatchRule, Arrays.hashCode(mMatchWifiNetworkKeys),
|
return Objects.hash(mMatchRule, Arrays.hashCode(mMatchSubscriberIds),
|
||||||
mMetered, mRoaming, mDefaultNetwork, mRatType, mOemManaged);
|
Arrays.hashCode(mMatchWifiNetworkKeys), mMetered, mRoaming, mDefaultNetwork,
|
||||||
|
mRatType, mOemManaged);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -397,6 +398,7 @@ public final class NetworkTemplate implements Parcelable {
|
|||||||
&& mDefaultNetwork == other.mDefaultNetwork
|
&& mDefaultNetwork == other.mDefaultNetwork
|
||||||
&& mRatType == other.mRatType
|
&& mRatType == other.mRatType
|
||||||
&& mOemManaged == other.mOemManaged
|
&& mOemManaged == other.mOemManaged
|
||||||
|
&& Arrays.equals(mMatchSubscriberIds, other.mMatchSubscriberIds)
|
||||||
&& Arrays.equals(mMatchWifiNetworkKeys, other.mMatchWifiNetworkKeys);
|
&& Arrays.equals(mMatchWifiNetworkKeys, other.mMatchWifiNetworkKeys);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -442,6 +442,35 @@ class NetworkTemplateTest {
|
|||||||
templateUnknownNonMetered.assertDoesNotMatch(identWifi)
|
templateUnknownNonMetered.assertDoesNotMatch(identWifi)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun testEquals() {
|
||||||
|
val templateImsi1 = NetworkTemplate.Builder(MATCH_MOBILE).setMeteredness(METERED_YES)
|
||||||
|
.setSubscriberIds(setOf(TEST_IMSI1)).setRatType(TelephonyManager.NETWORK_TYPE_UMTS)
|
||||||
|
.build()
|
||||||
|
val dupTemplateImsi1 = NetworkTemplate(MATCH_MOBILE, arrayOf(TEST_IMSI1),
|
||||||
|
emptyArray<String>(), METERED_YES, ROAMING_ALL, DEFAULT_NETWORK_ALL,
|
||||||
|
TelephonyManager.NETWORK_TYPE_UMTS, OEM_MANAGED_ALL)
|
||||||
|
val templateImsi2 = NetworkTemplate.Builder(MATCH_MOBILE).setMeteredness(METERED_YES)
|
||||||
|
.setSubscriberIds(setOf(TEST_IMSI2)).setRatType(TelephonyManager.NETWORK_TYPE_UMTS)
|
||||||
|
.build()
|
||||||
|
|
||||||
|
assertEquals(templateImsi1, dupTemplateImsi1)
|
||||||
|
assertEquals(dupTemplateImsi1, templateImsi1)
|
||||||
|
assertNotEquals(templateImsi1, templateImsi2)
|
||||||
|
|
||||||
|
val templateWifiKey1 = NetworkTemplate.Builder(MATCH_WIFI)
|
||||||
|
.setWifiNetworkKeys(setOf(TEST_WIFI_KEY1)).build()
|
||||||
|
val dupTemplateWifiKey1 = NetworkTemplate(MATCH_WIFI, emptyArray<String>(),
|
||||||
|
arrayOf(TEST_WIFI_KEY1), METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL,
|
||||||
|
NETWORK_TYPE_ALL, OEM_MANAGED_ALL)
|
||||||
|
val templateWifiKey2 = NetworkTemplate.Builder(MATCH_WIFI)
|
||||||
|
.setWifiNetworkKeys(setOf(TEST_WIFI_KEY2)).build()
|
||||||
|
|
||||||
|
assertEquals(templateWifiKey1, dupTemplateWifiKey1)
|
||||||
|
assertEquals(dupTemplateWifiKey1, templateWifiKey1)
|
||||||
|
assertNotEquals(templateWifiKey1, templateWifiKey2)
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun testParcelUnparcel() {
|
fun testParcelUnparcel() {
|
||||||
val templateMobile = NetworkTemplate(MATCH_MOBILE, arrayOf(TEST_IMSI1),
|
val templateMobile = NetworkTemplate(MATCH_MOBILE, arrayOf(TEST_IMSI1),
|
||||||
|
|||||||
Reference in New Issue
Block a user