summaryrefslogtreecommitdiff
path: root/tools/aapt2/cmd/Compile_test.cpp
AgeCommit message (Collapse)Author
2021-03-29Refactor aapt2 tests ResourceTable changesRyan Mitchell
This changes refactors tests to use the NewResourceBuilder class that makes it easier to construct resource entries. Bug: 183102797 Test: aapt2_tests Change-Id: I851f9fb99a003769f8df8c1876997eee0864822a
2020-11-17Revert^2 "libandroidfw hardening for IncFs"Ryan Mitchell
55ef6167a2c235bd88c7216238b2001b46795b79 Change-Id: I02d4890d181655dfd0a14c188468db512559d27b
2020-11-13Revert "libandroidfw hardening for IncFs"Ryan Mitchell
Revert "Move map_ptr to incfs namspace" Revert submission 12787270 Reason for revert: b/173250495 Reverted Changes: I5cd1bc8a2:libandroidfw hardening for IncFs Ice5dbcfb2:Move map_ptr to incfs namspace I29ccdc8ed:Do not cache bag parent stack until requested I1e9e9acaa:Cache resolved theme values Change-Id: Ib90ef68339710086df41e9abe0833a542d03a74f
2020-11-12libandroidfw hardening for IncFsRyan Mitchell
Migrate libandroifw to using incfs::util::map_ptr to prevent processes from crashing when parsing the resources.arsc, parsing compiled xml, files, and retrieving resource values. This change propagates incremental failures to the JNI level where they are raised as ResourcesNotFoundException. Performance of ResourcesPerfWorkloads without change (time in nanoseconds): [1/3] com.android.resources.perf.PerfTest#youtube: PASSED (11.883s) youtube_ns_median: 93812805 youtube_ns_standardDeviation: 4387062 youtube_ns_mean: 94455597 [2/3] com.android.resources.perf.PerfTest#maps: PASSED (11.265s) maps_ns_standardDeviation: 2997543 maps_ns_mean: 83480371 maps_ns_median: 82210941 [3/3] com.android.resources.perf.PerfTest#gmail: PASSED (24.963s) gmail_ns_median: 266141091 gmail_ns_standardDeviation: 3492043 gmail_ns_mean: 267472765 With change and verification forcibly enabled for all apks (including the framework-res.apk): [1/3] com.android.resources.perf.PerfTest#youtube: PASSED (11.646s) youtube_ns_median: 101999396 youtube_ns_standardDeviation: 4625782 youtube_ns_mean: 102631770 [2/3] com.android.resources.perf.PerfTest#maps: PASSED (11.286s) maps_ns_standardDeviation: 2692088 maps_ns_mean: 91326538 maps_ns_median: 90519884 [3/3] com.android.resources.perf.PerfTest#gmail: PASSED (24.694s) gmail_ns_median: 290284442 gmail_ns_standardDeviation: 5764632 gmail_ns_mean: 291660464 With change and verification disabled: [1/3] com.android.resources.perf.PerfTest#youtube: PASSED (11.748s) youtube_ns_median: 95490747 youtube_ns_standardDeviation: 7282249 youtube_ns_mean: 98442515 [2/3] com.android.resources.perf.PerfTest#maps: PASSED (10.862s) maps_ns_standardDeviation: 4484213 maps_ns_mean: 87912988 maps_ns_median: 86325549 [3/3] com.android.resources.perf.PerfTest#gmail: PASSED (24.034s) gmail_ns_median: 282175838 gmail_ns_standardDeviation: 6560876 gmail_ns_mean: 282869146 These tests were done on a Pixel 3 and with cpu settings configured by libs/hwui/tests/scripts/prep_generic.sh: Locked CPUs 4,5,6,7 to 1459200 / 2803200 KHz Disabled CPUs 0,1,2,3 Bug: 160635104 Bug: 169423204 Test: boot device && atest ResourcesPerfWorkloads Change-Id: I5cd1bc8a2257bffaba6ca4a1c96f4e6640106866
2020-07-22Add --source-path flag to AAPT2 compilelukeedgar
This added flag uses a given value to replace the default absolute resource file path in the compiled resource file. This allows for relative file paths to be used instead of absolute file paths. Test: Compile_test.cpp Bug: 159611599 Change-Id: I5f1c99cf40e5d31fc54cda819c91640285986d2a
2019-06-10Fix asset compression to check name ends with argRyan Mitchell
There exists a discrepancy between how aapt1 and aapt2 prevent the compression of assets using the -0 flag. aapt1 checked if the file name ended with an argument, but aapt2 is checking if the file extension exactly matches the argument. This change makes aapt2 behave the same as aapt1 for asset compression using the -0 flag. Bug: 132823799 Test: aapt2_tests Change-Id: I641b3ebce29e4407b543faea373a5ce516b70cda
2019-03-29Fix aapt2 pseudo-translating donottranslate* filesMihai Nita
Bug: 126423638 Test: After building android doing this in the 'out' folder: Test: Test: ./soong/host/linux-x86/bin/aapt d --values resources \ Test: ./target/product/sailfish/system/product/priv-app/SystemUIGoogle/SystemUIGoogle.apk \ Test: | less Test: Test: search for `system_ui_aod_date_pattern` in the output, found this: Test: (string8) "[éééḾḾḾð one two]" Test: (string8) "<U+200F><U+202E>eeeMMMd<U+202C><U+200F>" Test: (the en-XA and ar-XB pseudo-translated versions of the string) Test: Test: After the fix and rebuild the dump only finds the original English string ("eeeMMMd") Test: Also flashed the image, switched to en-XA, and left the phone around for more than 24 hours. Change-Id: I2fb7c5b5ee7d3d3200410593346682ed16559056
2018-10-03Fix failing Windows testsRyan Mitchell
Some tests were not written to run on Windows correctly. Compile also has a bug that caused using the --zip flag to fail on Windows. iswspace does count the non breaking space as Whiespace on Windows but not on Unix based systems Bug: 117156986 Change-Id: I999375162bdfdf86fb25992ee88e2962ab90b577 Test: aapt2_tests and wine aapt2_tests.exe
2018-08-14AAPT2: Compile --zip flagRyan Mitchell
Added a --zip flag similar to --dir that allows resources to be passed into "aapt2 compile" using a zip file. Also refactored Compile.cpp to be easier to mock and test in the future. Bug: 74574557 Test: aapt2_tests Change-Id: Idb90cb97e23a219525bdead38220cbf7bc6f3cab
2018-07-13AAPT2: Refactor flags into commandsRyan Mitchell
Refactors the flag based command invocation into classes that make using subcommands easier. Test: manual tests of printing Change-Id: Ic8df6af0be30db552e32150afebecbfeec7e1075
2018-04-11AAPT: Multiple period legacy support and errorsy
AAPT would accept files with multiple periods in the filename as input. This lead to cases explained in b/74999475. This change adds error messages for files with multiple periods unless the legacy flag is present. With the legacy flag present, AAPT2 will behave like AAPT rather than throwing an error. Test: Added tests to aapt2_tests Bug: 73071563 Bug: 74999475 Change-Id: I28dfceeea7b39f8e4b9e6671e0fc8793cf388f52