Loading core/tests/overlaytests/device/assets/package-name.txt 0 → 100644 +1 −0 Original line number Diff line number Diff line com.android.overlaytest core/tests/overlaytests/device/src/com/android/overlaytest/OverlayBaseTest.java +32 −0 Original line number Diff line number Diff line Loading @@ -17,9 +17,12 @@ package com.android.overlaytest; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import android.app.UiAutomation; import android.content.res.AssetManager; import android.content.res.Configuration; import android.content.res.Resources; import android.content.res.XmlResourceParser; Loading @@ -30,6 +33,8 @@ import android.util.Xml; import androidx.test.InstrumentationRegistry; import com.android.internal.util.ArrayUtils; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; Loading Loading @@ -291,6 +296,33 @@ public abstract class OverlayBaseTest { assertEquals(getExpected(no, so, mo), actual); } @Test public void testAssetsNotPossibleToOverlay() throws Throwable { final AssetManager am = mResources.getAssets(); // AssetManager#list will include assets from all loaded non-overlay // APKs, including the framework; framework-res.apk contains at least // assets/{images,webkit}. Rather than checking the list, verify that // assets only present in overlays are never part of the list. String[] files = am.list(""); assertTrue(ArrayUtils.contains(files, "package-name.txt")); assertFalse(ArrayUtils.contains(files, "foo.txt")); assertFalse(ArrayUtils.contains(files, "bar.txt")); String contents = null; try (InputStream is = am.open("package-name.txt")) { final BufferedReader reader = new BufferedReader( new InputStreamReader(is, StandardCharsets.UTF_8)); StringBuilder str = new StringBuilder(); String line; while ((line = reader.readLine()) != null) { str.append(line); } contents = str.toString(); } assertEquals("com.android.overlaytest", contents); } /* * testMatrix* tests * Loading core/tests/overlaytests/device/test-apps/AppOverlayOne/assets/foo.txt 0 → 100644 +1 −0 Original line number Diff line number Diff line foo core/tests/overlaytests/device/test-apps/AppOverlayOne/assets/package-name.txt 0 → 100644 +1 −0 Original line number Diff line number Diff line com.android.overlaytest.app_overlay_one core/tests/overlaytests/device/test-apps/AppOverlayTwo/assets/bar.txt 0 → 100644 +1 −0 Original line number Diff line number Diff line bar Loading
core/tests/overlaytests/device/assets/package-name.txt 0 → 100644 +1 −0 Original line number Diff line number Diff line com.android.overlaytest
core/tests/overlaytests/device/src/com/android/overlaytest/OverlayBaseTest.java +32 −0 Original line number Diff line number Diff line Loading @@ -17,9 +17,12 @@ package com.android.overlaytest; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import android.app.UiAutomation; import android.content.res.AssetManager; import android.content.res.Configuration; import android.content.res.Resources; import android.content.res.XmlResourceParser; Loading @@ -30,6 +33,8 @@ import android.util.Xml; import androidx.test.InstrumentationRegistry; import com.android.internal.util.ArrayUtils; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; Loading Loading @@ -291,6 +296,33 @@ public abstract class OverlayBaseTest { assertEquals(getExpected(no, so, mo), actual); } @Test public void testAssetsNotPossibleToOverlay() throws Throwable { final AssetManager am = mResources.getAssets(); // AssetManager#list will include assets from all loaded non-overlay // APKs, including the framework; framework-res.apk contains at least // assets/{images,webkit}. Rather than checking the list, verify that // assets only present in overlays are never part of the list. String[] files = am.list(""); assertTrue(ArrayUtils.contains(files, "package-name.txt")); assertFalse(ArrayUtils.contains(files, "foo.txt")); assertFalse(ArrayUtils.contains(files, "bar.txt")); String contents = null; try (InputStream is = am.open("package-name.txt")) { final BufferedReader reader = new BufferedReader( new InputStreamReader(is, StandardCharsets.UTF_8)); StringBuilder str = new StringBuilder(); String line; while ((line = reader.readLine()) != null) { str.append(line); } contents = str.toString(); } assertEquals("com.android.overlaytest", contents); } /* * testMatrix* tests * Loading
core/tests/overlaytests/device/test-apps/AppOverlayOne/assets/foo.txt 0 → 100644 +1 −0 Original line number Diff line number Diff line foo
core/tests/overlaytests/device/test-apps/AppOverlayOne/assets/package-name.txt 0 → 100644 +1 −0 Original line number Diff line number Diff line com.android.overlaytest.app_overlay_one
core/tests/overlaytests/device/test-apps/AppOverlayTwo/assets/bar.txt 0 → 100644 +1 −0 Original line number Diff line number Diff line bar