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

Commit 1a702459 authored by Brian Stack's avatar Brian Stack
Browse files

Add UWB Tests to verify Builders and Parcels

Bug: 170323306
Test: atest UwbManagerTests
Test: Runnng `atest` in frameworks/base/core/java/android/uwb runs
      UwbManagerTests

Change-Id: I4d46baf7886376cd0255fb9ae78fc12bc94f10a6
parent 3c99301a
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
@@ -20,6 +20,8 @@ import android.annotation.FloatRange;
import android.os.Parcel;
import android.os.Parcelable;

import java.util.Objects;

/**
 * Angle measurement
 *
@@ -75,6 +77,32 @@ public final class AngleMeasurement implements Parcelable {
        return mConfidenceLevel;
    }

    /**
     * @hide
    */
    @Override
    public boolean equals(Object obj) {
        if (this == obj) {
            return true;
        }

        if (obj instanceof AngleMeasurement) {
            AngleMeasurement other = (AngleMeasurement) obj;
            return mRadians == other.getRadians()
                    && mErrorRadians == other.getErrorRadians()
                    && mConfidenceLevel == other.getConfidenceLevel();
        }
        return false;
    }

    /**
     * @hide
     */
    @Override
    public int hashCode() {
        return Objects.hash(mRadians, mErrorRadians, mConfidenceLevel);
    }

    @Override
    public int describeContents() {
        return 0;
+27 −0
Original line number Diff line number Diff line
@@ -21,6 +21,8 @@ import android.annotation.Nullable;
import android.os.Parcel;
import android.os.Parcelable;

import java.util.Objects;

/**
 * Represents an angle of arrival measurement between two devices using Ultra Wideband
 *
@@ -72,6 +74,31 @@ public final class AngleOfArrivalMeasurement implements Parcelable {
        return mAltitudeAngleMeasurement;
    }

    /**
     * @hide
     */
    @Override
    public boolean equals(Object obj) {
        if (this == obj) {
            return true;
        }

        if (obj instanceof AngleOfArrivalMeasurement) {
            AngleOfArrivalMeasurement other = (AngleOfArrivalMeasurement) obj;
            return mAzimuthAngleMeasurement.equals(other.getAzimuth())
                    && mAltitudeAngleMeasurement.equals(other.getAltitude());
        }
        return false;
    }

    /**
     * @hide
     */
    @Override
    public int hashCode() {
        return Objects.hash(mAzimuthAngleMeasurement, mAltitudeAngleMeasurement);
    }

    @Override
    public int describeContents() {
        return 0;
+29 −0
Original line number Diff line number Diff line
@@ -17,9 +17,12 @@
package android.uwb;

import android.annotation.FloatRange;
import android.annotation.Nullable;
import android.os.Parcel;
import android.os.Parcelable;

import java.util.Objects;

/**
 * A data point for the distance measurement
 *
@@ -71,6 +74,32 @@ public final class DistanceMeasurement implements Parcelable {
        return mConfidenceLevel;
    }

    /**
     * @hide
     */
    @Override
    public boolean equals(@Nullable Object obj) {
        if (this == obj) {
            return true;
        }

        if (obj instanceof DistanceMeasurement) {
            DistanceMeasurement other = (DistanceMeasurement) obj;
            return mMeters == other.getMeters()
                    && mErrorMeters == other.getErrorMeters()
                    && mConfidenceLevel == other.getConfidenceLevel();
        }
        return false;
    }

    /**
     * @hide
     */
    @Override
    public int hashCode() {
        return Objects.hash(mMeters, mErrorMeters, mConfidenceLevel);
    }

    @Override
    public int describeContents() {
        return 0;
+30 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ import android.os.SystemClock;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.Objects;

/**
 * Representation of a ranging measurement between the local device and a remote device
@@ -129,6 +130,35 @@ public final class RangingMeasurement implements Parcelable {
        return mAngleOfArrivalMeasurement;
    }

    /**
     * @hide
     */
    @Override
    public boolean equals(@Nullable Object obj) {
        if (this == obj) {
            return true;
        }

        if (obj instanceof RangingMeasurement) {
            RangingMeasurement other = (RangingMeasurement) obj;
            return mRemoteDeviceAddress.equals(other.getRemoteDeviceAddress())
                    && mStatus == other.getStatus()
                    && mElapsedRealtimeNanos == other.getElapsedRealtimeNanos()
                    && mDistanceMeasurement.equals(other.getDistance())
                    && mAngleOfArrivalMeasurement.equals(other.getAngleOfArrival());
        }
        return false;
    }

    /**
     * @hide
     */
    @Override
    public int hashCode() {
        return Objects.hash(mRemoteDeviceAddress, mStatus, mElapsedRealtimeNanos,
                mDistanceMeasurement, mAngleOfArrivalMeasurement);
    }

    @Override
    public int describeContents() {
        return 0;
+38 −0
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Objects;
import java.util.Set;

/**
@@ -201,6 +202,43 @@ public final class RangingParams implements Parcelable {
        return new PersistableBundle(mSpecificationParameters);
    }

    /**
     * @hide
     */
    @Override
    public boolean equals(@Nullable Object obj) {
        if (this == obj) {
            return true;
        }

        if (obj instanceof RangingParams) {
            RangingParams other = (RangingParams) obj;

            return mIsInitiator == other.mIsInitiator
                    && mIsController == other.mIsController
                    && mSamplePeriod.equals(other.mSamplePeriod)
                    && mLocalDeviceAddress.equals(other.mLocalDeviceAddress)
                    && mRemoteDeviceAddresses.equals(other.mRemoteDeviceAddresses)
                    && mChannelNumber == other.mChannelNumber
                    && mTransmitPreambleCodeIndex == other.mTransmitPreambleCodeIndex
                    && mReceivePreambleCodeIndex == other.mReceivePreambleCodeIndex
                    && mStsPhyPacketType == other.mStsPhyPacketType
                    && mSpecificationParameters.size() == other.mSpecificationParameters.size()
                    && mSpecificationParameters.kindofEquals(other.mSpecificationParameters);
        }
        return false;
    }

    /**
     * @hide
     */
    @Override
    public int hashCode() {
        return Objects.hash(mIsInitiator, mIsController, mSamplePeriod, mLocalDeviceAddress,
                mRemoteDeviceAddresses, mChannelNumber, mTransmitPreambleCodeIndex,
                mReceivePreambleCodeIndex, mStsPhyPacketType, mSpecificationParameters);
    }

    @Override
    public int describeContents() {
        return 0;
Loading