Check bundles in MediaItem to verify keys are skipped

Added another check in each of these tests to make sure we don't add keys to bundle for fields with default values.

Also fixed comments of similar changes in `AdPlaybackStateTest` and `MediaMetadataTest`.

PiperOrigin-RevId: 499463581
(cherry picked from commit 9d431a52ef7a39772f65b8de170a225848be5251)
This commit is contained in:
rohks 2023-01-04 13:51:24 +00:00 committed by christosts
parent 25c964d71d
commit fea5eea687
3 changed files with 24 additions and 9 deletions

View File

@ -377,12 +377,18 @@ public class MediaItemTest {
}
@Test
public void createDefaultClippingConfigurationInstance_roundTripViaBundle_yieldsEqualInstance() {
public void
createDefaultClippingConfigurationInstance_toBundleSkipsDefaultValues_fromBundleRestoresThem() {
MediaItem.ClippingConfiguration clippingConfiguration =
new MediaItem.ClippingConfiguration.Builder().build();
Bundle clippingConfigurationBundle = clippingConfiguration.toBundle();
// Check that default values are skipped when bundling.
assertThat(clippingConfigurationBundle.keySet()).isEmpty();
MediaItem.ClippingConfiguration clippingConfigurationFromBundle =
MediaItem.ClippingConfiguration.CREATOR.fromBundle(clippingConfiguration.toBundle());
MediaItem.ClippingConfiguration.CREATOR.fromBundle(clippingConfigurationBundle);
assertThat(clippingConfigurationFromBundle).isEqualTo(clippingConfiguration);
}
@ -560,12 +566,18 @@ public class MediaItemTest {
}
@Test
public void createDefaultLiveConfigurationInstance_roundTripViaBundle_yieldsEqualInstance() {
public void
createDefaultLiveConfigurationInstance_toBundleSkipsDefaultValues_fromBundleRestoresThem() {
MediaItem.LiveConfiguration liveConfiguration =
new MediaItem.LiveConfiguration.Builder().build();
Bundle liveConfigurationBundle = liveConfiguration.toBundle();
// Check that default values are skipped when bundling.
assertThat(liveConfigurationBundle.keySet()).isEmpty();
MediaItem.LiveConfiguration liveConfigurationFromBundle =
MediaItem.LiveConfiguration.CREATOR.fromBundle(liveConfiguration.toBundle());
MediaItem.LiveConfiguration.CREATOR.fromBundle(liveConfigurationBundle);
assertThat(liveConfigurationFromBundle).isEqualTo(liveConfiguration);
}
@ -834,9 +846,14 @@ public class MediaItemTest {
}
@Test
public void createDefaultMediaItemInstance_roundTripViaBundle_yieldsEqualInstance() {
public void createDefaultMediaItemInstance_toBundleSkipsDefaultValues_fromBundleRestoresThem() {
MediaItem mediaItem = new MediaItem.Builder().build();
Bundle mediaItemBundle = mediaItem.toBundle();
// Check that default values are skipped when bundling.
assertThat(mediaItemBundle.keySet()).isEmpty();
MediaItem mediaItemFromBundle = MediaItem.CREATOR.fromBundle(mediaItem.toBundle());
assertThat(mediaItemFromBundle).isEqualTo(mediaItem);

View File

@ -112,12 +112,11 @@ public class MediaMetadataTest {
Bundle mediaMetadataBundle = mediaMetadata.toBundle();
// check Bundle created above, contains no keys.
// Check that default values are skipped when bundling.
assertThat(mediaMetadataBundle.keySet()).isEmpty();
MediaMetadata mediaMetadataFromBundle = MediaMetadata.CREATOR.fromBundle(mediaMetadataBundle);
// check object retrieved from mediaMetadataBundle is equal to mediaMetadata.
assertThat(mediaMetadataFromBundle).isEqualTo(mediaMetadata);
// Extras is not implemented in MediaMetadata.equals(Object o).
assertThat(mediaMetadataFromBundle.extras).isNull();

View File

@ -422,13 +422,12 @@ public class AdPlaybackStateTest {
Bundle adPlaybackStateWithNoAdsBundle = adPlaybackStateWithNoAds.toBundle();
// check Bundle created above, contains no keys.
// Check that default values are skipped when bundling.
assertThat(adPlaybackStateWithNoAdsBundle.keySet()).isEmpty();
AdPlaybackState adPlaybackStateWithNoAdsFromBundle =
AdPlaybackState.CREATOR.fromBundle(adPlaybackStateWithNoAdsBundle);
// check object retrieved from adPlaybackStateWithNoAdsBundle is equal to AdPlaybackState.NONE
assertThat(adPlaybackStateWithNoAdsFromBundle.adsId).isEqualTo(adPlaybackStateWithNoAds.adsId);
assertThat(adPlaybackStateWithNoAdsFromBundle.adGroupCount)
.isEqualTo(adPlaybackStateWithNoAds.adGroupCount);