From e07c887bcd97a1bf2ce98502e285b14de6f42b25 Mon Sep 17 00:00:00 2001 From: rohks Date: Wed, 21 Dec 2022 18:10:19 +0000 Subject: [PATCH] Check `MediaMetadata` bundle to verify keys are skipped Added another check in test to make sure we don't add keys to bundle for fields with `null` values. PiperOrigin-RevId: 496948705 (cherry picked from commit 13c93a3dd693e86e6d5208aff45105000858363f) --- .../androidx/media3/common/MediaMetadataTest.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/libraries/common/src/test/java/androidx/media3/common/MediaMetadataTest.java b/libraries/common/src/test/java/androidx/media3/common/MediaMetadataTest.java index bde20bc603..d2810ddd1b 100644 --- a/libraries/common/src/test/java/androidx/media3/common/MediaMetadataTest.java +++ b/libraries/common/src/test/java/androidx/media3/common/MediaMetadataTest.java @@ -107,12 +107,17 @@ public class MediaMetadataTest { } @Test - public void createMinimalMediaMetadata_roundTripViaBundle_yieldsEqualInstance() { + public void toBundleSkipsDefaultValues_fromBundleRestoresThem() { MediaMetadata mediaMetadata = new MediaMetadata.Builder().build(); - MediaMetadata mediaMetadataFromBundle = - MediaMetadata.CREATOR.fromBundle(mediaMetadata.toBundle()); + Bundle mediaMetadataBundle = mediaMetadata.toBundle(); + // check Bundle created above, contains no keys. + 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();