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
14 lines
516 B
Markdown
14 lines
516 B
Markdown
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
|