Tianjie Xu a88cc5440e Switch to bionic gtest in bootable/recovery
We encountered segfaults in Imgdiff host tests due to the failure to
reset states of getopt. The problem can be solved by switching to use
bionic's gtest where a new process is forked for each test.

Also modify the recovery_component_test to make sure it runs in parallel.
Changes include:
  1. Merge the writes to misc partition into one single test.
  2. Change the hard coded location "/cache/saved.file" into a configurable
  variable.

Bug: 67849209
Test: recovery tests pass

Change-Id: I165d313f32b83393fb7922c5078636ac40b50bc2
2017-11-03 14:09:11 -07:00
2017-10-11 16:56:12 -07:00
2013-03-07 13:34:24 -08:00
2017-10-19 22:30:57 -07:00
2017-10-20 01:50:04 -07:00
2017-10-11 16:26:06 -07:00
2017-10-12 16:12:48 +00:00
2014-04-25 15:47:34 -07:00
2017-09-13 10:51:09 -07:00
2017-04-16 15:53:47 -07:00
2017-10-12 10:45:04 -07:00
2017-10-11 16:56:12 -07:00
2017-10-05 12:02:13 -07:00
2017-10-05 12:02:13 -07:00
2017-10-11 16:56:12 -07:00
2017-03-23 21:52:30 +01:00
2017-06-16 15:33:02 -07:00
2017-10-11 16:56:12 -07:00
2017-10-05 12:02:13 -07:00
2017-10-11 16:56:12 -07:00

The Recovery Image

Quick turn-around testing

mm -j && m ramdisk-nodeps && m recoveryimage-nodeps

# To boot into the new recovery image
# without flashing the recovery partition:
adb reboot bootloader
fastboot boot $ANDROID_PRODUCT_OUT/recovery.img

Running the tests

# After setting up environment and lunch.
mmma -j bootable/recovery

# Running the tests on device.
adb root
adb sync data

# 32-bit device
adb shell /data/nativetest/recovery_unit_test/recovery_unit_test
adb shell /data/nativetest/recovery_component_test/recovery_component_test

# Or 64-bit device
adb shell /data/nativetest64/recovery_unit_test/recovery_unit_test
adb shell /data/nativetest64/recovery_component_test/recovery_component_test

Running the manual tests

recovery-refresh and recovery-persist executables exist only on systems without /cache partition. And we need to follow special steps to run tests for them.

  • Execute the test on an A/B device first. The test should fail but it will log some contents to pmsg.

  • Reboot the device immediately and run the test again. The test should save the contents of pmsg buffer into /data/misc/recovery/inject.txt. Test will pass if this file has expected contents.

ResourceTest validates whether the png files are qualified as background text image under recovery.

1. `adb sync data` to make sure the test-dir has the images to test.
2. The test will automatically pickup and verify all `_text.png` files in
   the test dir.
Description
No description provided
Readme 102 MiB
Languages
C++ 50.2%
C 43.6%
Makefile 1.9%
Java 1.8%
Roff 1%
Other 1.4%