Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 349695f3 authored by Ryan Mitchell's avatar Ryan Mitchell
Browse files

Refactor tests for ApkAsset loading APIs

This change adds the file descriptor based ResourceProvider APIs to
the provider formats to test. It also refactors the testing API
so that all test APKs, ARSCs, and splits have the same resources
rather than different formats having different resources.

Bug: 142716192
Test: atest FrameworksResourceLoaderTests
Change-Id: I37da9f6c815ea67629b3115b0e125ebc79cd7c8c
parent ef40d2e8
Loading
Loading
Loading
Loading
+27 −27
Original line number Diff line number Diff line
@@ -21,44 +21,44 @@ android_test {
    ],
    libs: [
        "android.test.runner",
        "android.test.base",
        "android.test.base"
    ],
    static_libs: [
        "FrameworksResourceLoaderTests_Providers",
        "androidx.test.espresso.core",
        "androidx.test.ext.junit",
        "androidx.test.runner",
        "androidx.test.rules",
        "mockito-target-minus-junit4",
        "truth-prebuilt",
        "truth-prebuilt"
    ],
    resource_zips: [ ":FrameworksResourceLoaderTestsAssets" ],
    resource_dirs: ["res", "resources/provider_stable/res"],
    platform_apis: true,
    test_suites: ["device-tests"],
    aaptflags: [
        "--no-compress",
    ],
    aaptflags: ["-0 .txt"],
    data: [
        ":FrameworksResourceLoaderTestsSplitOne",
        ":FrameworksResourceLoaderTestsSplitTwo",
        ":FrameworksResourceLoaderTestsSplitThree",
        ":FrameworksResourceLoaderTestsSplitFour",
    ],
    java_resources: [ "NonAsset.txt" ]
}

filegroup {
    name: "FrameworksResourceLoaderTestsResources",
    srcs: ["resources"],
        ":FrameworksResourceLoaderTests_ProviderOne_Split",
        ":FrameworksResourceLoaderTests_ProviderTwo_Split",
        ":FrameworksResourceLoaderTests_ProviderThree_Split",
        ":FrameworksResourceLoaderTests_ProviderFour_Split"
    ]
}

genrule {
    name: "FrameworksResourceLoaderTestsAssets",
java_genrule {
    name: "FrameworksResourceLoaderTests_Providers",
    tools: ["soong_zip"],
    srcs : [
        ":framework-res",
        ":FrameworksResourceLoaderTestsResources",
        ":FrameworksResourceLoaderTests_ProviderOne",
        ":FrameworksResourceLoaderTests_ProviderOne_ARSC",
        ":FrameworksResourceLoaderTests_ProviderTwo",
        ":FrameworksResourceLoaderTests_ProviderTwo_ARSC",
        ":FrameworksResourceLoaderTests_ProviderThree",
        ":FrameworksResourceLoaderTests_ProviderThree_ARSC",
        ":FrameworksResourceLoaderTests_ProviderFour",
        ":FrameworksResourceLoaderTests_ProviderFour_ARSC"
    ],
    tools: [ ":aapt2", ":soong_zip" ],
    tool_files: [ "resources/compileAndLink.sh" ],
    cmd: "$(location resources/compileAndLink.sh) $(location :aapt2) $(location :soong_zip) $(genDir) $(in) $(in)",
    out: [ "out.zip" ]
    out: ["FrameworksResourceLoaderTests_Providers.jar"],
    cmd: "mkdir -p $(genDir)/assets/ && cp $(in) $(genDir)/assets/ && " +
         "$(location soong_zip) -o $(out) " +
         "-L 0 -C $(genDir) -D $(genDir)/assets/"
}
 No newline at end of file
+1 −1
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@
        <option name="cleanup-apks" value="true" />
        <!-- The following value cannot be multi-line as whitespace is parsed by the installer -->
        <option name="split-apk-file-names"
            value="FrameworksResourceLoaderTests.apk,FrameworksResourceLoaderTestsSplitOne.apk,FrameworksResourceLoaderTestsSplitTwo.apk,FrameworksResourceLoaderTestsSplitThree.apk,FrameworksResourceLoaderTestsSplitFour.apk" />
            value="FrameworksResourceLoaderTests.apk,FrameworksResourceLoaderTests_ProviderOne_Split.apk,FrameworksResourceLoaderTests_ProviderTwo_Split.apk,FrameworksResourceLoaderTests_ProviderThree_Split.apk,FrameworksResourceLoaderTests_ProviderFour_Split.apk" />
    </target_preparer>

    <test class="com.android.tradefed.testtype.AndroidJUnitTest">
+0 −1
Original line number Diff line number Diff line
Outside assets directory
+0 −1
Original line number Diff line number Diff line
In assets directory
+1 −0
Original line number Diff line number Diff line
In assets directory
 No newline at end of file
Loading