Merge "Fix AudioProductStrategy.equals implementation" into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
c4f7591217
@@ -203,10 +203,16 @@ public final class AudioProductStrategy implements Parcelable {
|
|||||||
|
|
||||||
AudioProductStrategy thatStrategy = (AudioProductStrategy) o;
|
AudioProductStrategy thatStrategy = (AudioProductStrategy) o;
|
||||||
|
|
||||||
return mName == thatStrategy.mName && mId == thatStrategy.mId
|
return mId == thatStrategy.mId
|
||||||
|
&& Objects.equals(mName, thatStrategy.mName)
|
||||||
&& Arrays.equals(mAudioAttributesGroups, thatStrategy.mAudioAttributesGroups);
|
&& Arrays.equals(mAudioAttributesGroups, thatStrategy.mAudioAttributesGroups);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return Objects.hash(mId, mName, Arrays.hashCode(mAudioAttributesGroups));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param name of the product strategy
|
* @param name of the product strategy
|
||||||
* @param id of the product strategy
|
* @param id of the product strategy
|
||||||
@@ -460,6 +466,12 @@ public final class AudioProductStrategy implements Parcelable {
|
|||||||
&& Arrays.equals(mAudioAttributes, thatAag.mAudioAttributes);
|
&& Arrays.equals(mAudioAttributes, thatAag.mAudioAttributes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return Objects.hash(mVolumeGroupId, mLegacyStreamType,
|
||||||
|
Arrays.hashCode(mAudioAttributes));
|
||||||
|
}
|
||||||
|
|
||||||
public int getStreamType() {
|
public int getStreamType() {
|
||||||
return mLegacyStreamType;
|
return mLegacyStreamType;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,11 +29,14 @@ import android.media.AudioManager;
|
|||||||
import android.media.AudioSystem;
|
import android.media.AudioSystem;
|
||||||
import android.media.audiopolicy.AudioProductStrategy;
|
import android.media.audiopolicy.AudioProductStrategy;
|
||||||
import android.media.audiopolicy.AudioVolumeGroup;
|
import android.media.audiopolicy.AudioVolumeGroup;
|
||||||
|
import android.os.Parcel;
|
||||||
import android.platform.test.annotations.Presubmit;
|
import android.platform.test.annotations.Presubmit;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||||
|
|
||||||
|
import com.google.common.testing.EqualsTester;
|
||||||
|
|
||||||
import org.junit.Rule;
|
import org.junit.Rule;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
@@ -231,4 +234,26 @@ public class AudioProductStrategyTest {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testEquals() {
|
||||||
|
final EqualsTester equalsTester = new EqualsTester();
|
||||||
|
|
||||||
|
AudioProductStrategy.getAudioProductStrategies().forEach(
|
||||||
|
strategy -> equalsTester.addEqualityGroup(strategy,
|
||||||
|
writeToAndFromParcel(strategy)));
|
||||||
|
|
||||||
|
equalsTester.testEquals();
|
||||||
|
}
|
||||||
|
|
||||||
|
private static AudioProductStrategy writeToAndFromParcel(
|
||||||
|
AudioProductStrategy audioProductStrategy) {
|
||||||
|
Parcel parcel = Parcel.obtain();
|
||||||
|
audioProductStrategy.writeToParcel(parcel, /*flags=*/0);
|
||||||
|
parcel.setDataPosition(0);
|
||||||
|
AudioProductStrategy unmarshalledAudioProductStrategy =
|
||||||
|
AudioProductStrategy.CREATOR.createFromParcel(parcel);
|
||||||
|
parcel.recycle();
|
||||||
|
return unmarshalledAudioProductStrategy;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user