e82b9fb584
There are two categories of tests: 1. Package installation with .fsv_sig * .apk, .dm, including the split ones should all or none be installed with their corresponding .fsv_sig files 2. End-to-end fs-verity test of on-access verification * When fs-verity is enabled to a file, if the on-disk content is changed, the read should fail. See class comment in ApkVerityTest.java for the test details. Brief directory layout overview: * src/ - Actual test * ApkVerityTestApp/ - Dummy app for testing, including a split * testdata/ - Some artifacts, signing key and fs-verity signatures * block_device_writer/ - Helper binary for write a file directly on disk Test: atest Bug: 112039386 Change-Id: I3b8229037db682f36fda9d5cafd14caf6b39501d
516 B
516 B
This test only runs on rooted / debuggable device.
The test tries to install subsets of base.{apk,dm}, split.{apk,dm} and their corresponding .fsv_sig files (generated by build rule). If installed, the tests also tries to tamper with the file at absolute disk offset to verify if fs-verity is effective.
How to generate dex metadata (.dm)
adb shell profman --generate-test-profile=/data/local/tmp/primary.prof adb pull /data/local/tmp/primary.prof zip foo.dm primary.prof