Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3d749d67 authored by Jayachandran C's avatar Jayachandran C
Browse files

Override equals and hashCode methods for EpsBearerQosSessionAttributes and NrQosSessionAttributes

Added equals and hashCode methods to simplify CTS tests

Bug: 183239573
Bug: 184396753
Test: atest android.telephony.cts
Change-Id: I545d940b3e77b40ef13e7ca0e5e7169b97e17f1e
parent b84e5cda
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -206,6 +206,26 @@ public final class EpsBearerQosSessionAttributes implements Parcelable, QosSessi
        }
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        EpsBearerQosSessionAttributes epsBearerAttr = (EpsBearerQosSessionAttributes) o;
        return mQci == epsBearerAttr.mQci
                && mMaxUplinkBitRate == epsBearerAttr.mMaxUplinkBitRate
                && mMaxDownlinkBitRate == epsBearerAttr.mMaxDownlinkBitRate
                && mGuaranteedUplinkBitRate == epsBearerAttr.mGuaranteedUplinkBitRate
                && mGuaranteedDownlinkBitRate == epsBearerAttr.mGuaranteedDownlinkBitRate
                && mRemoteAddresses.size() == epsBearerAttr.mRemoteAddresses.size()
                && mRemoteAddresses.containsAll(epsBearerAttr.mRemoteAddresses);
    }

    @Override
    public int hashCode() {
        return Objects.hash(mQci, mMaxUplinkBitRate, mMaxDownlinkBitRate,
                mGuaranteedUplinkBitRate, mGuaranteedDownlinkBitRate, mRemoteAddresses);
    }

    @NonNull
    public static final Creator<EpsBearerQosSessionAttributes> CREATOR =
            new Creator<EpsBearerQosSessionAttributes>() {
+24 −0
Original line number Diff line number Diff line
@@ -241,6 +241,30 @@ public final class NrQosSessionAttributes implements Parcelable, QosSessionAttri
        }
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        NrQosSessionAttributes nrQosAttr = (NrQosSessionAttributes) o;
        return m5Qi == nrQosAttr.m5Qi
                && mQfi == nrQosAttr.mQfi
                && mMaxUplinkBitRate == nrQosAttr.mMaxUplinkBitRate
                && mMaxDownlinkBitRate == nrQosAttr.mMaxDownlinkBitRate
                && mGuaranteedUplinkBitRate == nrQosAttr.mGuaranteedUplinkBitRate
                && mGuaranteedDownlinkBitRate == nrQosAttr.mGuaranteedDownlinkBitRate
                && mAveragingWindow == nrQosAttr.mAveragingWindow
                && mRemoteAddresses.size() == nrQosAttr.mRemoteAddresses.size()
                && mRemoteAddresses.containsAll(nrQosAttr.mRemoteAddresses);
    }

    @Override
    public int hashCode() {
        return Objects.hash(m5Qi, mQfi, mMaxUplinkBitRate,
                mMaxDownlinkBitRate, mGuaranteedUplinkBitRate,
                mGuaranteedDownlinkBitRate, mAveragingWindow, mRemoteAddresses);
    }


    @NonNull
    public static final Creator<NrQosSessionAttributes> CREATOR =
            new Creator<NrQosSessionAttributes>() {