diff options
author | Bernardo Rufino <brufino@google.com> | 2021-10-04 17:09:48 +0100 |
---|---|---|
committer | Bernardo Rufino <brufino@google.com> | 2021-10-04 17:21:59 +0100 |
commit | 8c62a604f50b975c4a80ea0d4a0015a89d73c074 (patch) | |
tree | d90d60aa3f7e66334c05eef096117580bd50a890 | |
parent | d69c7d3193f631796241195d7bf40d3beac4871e (diff) | |
download | cts-8c62a604f50b975c4a80ea0d4a0015a89d73c074.tar.gz |
Remove removeUnsafeExtras() test
Plus test around putAll(), similar to deepCopy().
Test: atest -d android.os.cts.ParcelTest android.os.cts.BundleTest android.os.BundleTest android.os.ParcelTest
Test: atest -d android.content.cts.IntentTest
Bug: 195622897
Change-Id: I40fb3e5e9f35b9d52970144341ce6f49ed3933d9
-rw-r--r-- | tests/tests/content/src/android/content/cts/IntentTest.java | 49 | ||||
-rw-r--r-- | tests/tests/os/src/android/os/cts/BundleTest.java | 17 |
2 files changed, 19 insertions, 47 deletions
diff --git a/tests/tests/content/src/android/content/cts/IntentTest.java b/tests/tests/content/src/android/content/cts/IntentTest.java index c76a0fbdc77..29d207e83a7 100644 --- a/tests/tests/content/src/android/content/cts/IntentTest.java +++ b/tests/tests/content/src/android/content/cts/IntentTest.java @@ -16,9 +16,6 @@ package android.content.cts; -import org.xmlpull.v1.XmlPullParser; -import org.xmlpull.v1.XmlPullParserException; - import android.content.ComponentName; import android.content.ContentResolver; import android.content.Context; @@ -39,7 +36,8 @@ import android.test.AndroidTestCase; import android.util.AttributeSet; import android.util.Xml; -import com.android.content.cts.DummyParcelable; +import org.xmlpull.v1.XmlPullParser; +import org.xmlpull.v1.XmlPullParserException; import java.io.IOException; import java.io.Serializable; @@ -1842,49 +1840,6 @@ public class IntentTest extends AndroidTestCase { assertEquals("foo/bar", Intent.normalizeMimeType(" foo/bar ")); } - public void testRemoveUnsafeExtras() { - final Intent intent = new Intent(); - final DummyParcelable dummyParcelable = new DummyParcelable(); - intent.removeUnsafeExtras(); - assertNull(intent.getExtras()); - - // Check that removeUnsafeExtras keeps the same bundle if no changes are made. - Bundle origExtras = new Bundle(); - origExtras.putString("foo", "bar"); - intent.replaceExtras(origExtras); - intent.removeUnsafeExtras(); - Bundle newExtras = intent.getExtras(); - assertEquals(1, newExtras.size()); - assertEquals("bar", newExtras.get("foo")); - - // Check that removeUnsafeExtras will strip non-framework parcelables without modifying - // the original extras bundle. - origExtras.putParcelable("baddy", dummyParcelable); - intent.replaceExtras(origExtras); - intent.removeUnsafeExtras(); - newExtras = intent.getExtras(); - assertEquals(1, newExtras.size()); - assertEquals("bar", newExtras.get("foo")); - assertEquals(2, origExtras.size()); - assertEquals("bar", origExtras.get("foo")); - assertSame(dummyParcelable, origExtras.get("baddy")); - - // Check that nested bad values will be stripped. - Bundle origSubExtras = new Bundle(); - origSubExtras.putParcelable("baddy", dummyParcelable); - origExtras.putBundle("baddy", origSubExtras); - intent.replaceExtras(origExtras); - intent.removeUnsafeExtras(); - newExtras = intent.getExtras(); - assertEquals(2, newExtras.size()); - assertEquals("bar", newExtras.get("foo")); - Bundle newSubExtras = newExtras.getBundle("baddy"); - assertNotSame(origSubExtras, newSubExtras); - assertEquals(0, newSubExtras.size()); - assertEquals(1, origSubExtras.size()); - assertSame(dummyParcelable, origSubExtras.get("baddy")); - } - private static class TestSerializable implements Serializable { static final long serialVersionUID = 1l; public String Name; diff --git a/tests/tests/os/src/android/os/cts/BundleTest.java b/tests/tests/os/src/android/os/cts/BundleTest.java index 1b271ced0d4..888387756f4 100644 --- a/tests/tests/os/src/android/os/cts/BundleTest.java +++ b/tests/tests/os/src/android/os/cts/BundleTest.java @@ -1099,6 +1099,21 @@ public class BundleTest { } @Test + public void testPutAll_withLazyValues() { + Parcelable parcelable = new CustomParcelable(13, "Tiramisu"); + mBundle.putParcelable(KEY1, parcelable); + roundtrip(); + mBundle.isEmpty(); // Triggers partial deserialization (leaving lazy values) + Bundle copy = new Bundle(); + copy.putAll(mBundle); + assertEquals(parcelable, copy.getParcelable(KEY1)); + // Here we're verifying that LazyValue caches the deserialized object, hence they are the + // same instance + assertSame(copy.getParcelable(KEY1), mBundle.getParcelable(KEY1)); + assertEquals(1, copy.size()); + } + + @Test public void testDeepCopy_withLazyValues() { Parcelable parcelable = new CustomParcelable(13, "Tiramisu"); mBundle.putParcelable(KEY1, parcelable); @@ -1106,6 +1121,8 @@ public class BundleTest { mBundle.isEmpty(); // Triggers partial deserialization (leaving lazy values) Bundle copy = mBundle.deepCopy(); assertEquals(parcelable, copy.getParcelable(KEY1)); + // Here we're verifying that LazyValue caches the deserialized object, hence they are the + // same instance assertSame(copy.getParcelable(KEY1), mBundle.getParcelable(KEY1)); assertEquals(1, copy.size()); } |