install: Return bool for a few check functions.
The results from these functions have boolean semantics. They're returning `int` prior to this CL, with some of them mixing 0 and InstallResult. Note that SetUpNonAbUpdateCommands() was returning INSTALL_CORRUPT / INSTALL_ERROR / 0 prior to this change, but all the callers handle INSTALL_CORRUPT and INSTALL_ERROR the same way. This CL changes them to return bool instead. Test: `mmma -j bootable/recovery` Test: TreeHugger Test: Sideload on taimen. Change-Id: Ic1b5dbf79aaca68b53ab8ea2c8ba3d19f988c571
This commit is contained in:
+27
-27
@@ -205,7 +205,7 @@ TEST(InstallTest, SetUpNonAbUpdateCommands) {
|
||||
std::string binary_path = std::string(td.path) + "/update_binary";
|
||||
Paths::Get().set_temporary_update_binary(binary_path);
|
||||
std::vector<std::string> cmd;
|
||||
ASSERT_EQ(0, SetUpNonAbUpdateCommands(package, zip, 0, status_fd, &cmd));
|
||||
ASSERT_TRUE(SetUpNonAbUpdateCommands(package, zip, 0, status_fd, &cmd));
|
||||
ASSERT_EQ(4U, cmd.size());
|
||||
ASSERT_EQ(binary_path, cmd[0]);
|
||||
ASSERT_EQ("3", cmd[1]); // RECOVERY_API_VERSION
|
||||
@@ -217,7 +217,7 @@ TEST(InstallTest, SetUpNonAbUpdateCommands) {
|
||||
|
||||
// With non-zero retry count. update_binary will be removed automatically.
|
||||
cmd.clear();
|
||||
ASSERT_EQ(0, SetUpNonAbUpdateCommands(package, zip, 2, status_fd, &cmd));
|
||||
ASSERT_TRUE(SetUpNonAbUpdateCommands(package, zip, 2, status_fd, &cmd));
|
||||
ASSERT_EQ(5U, cmd.size());
|
||||
ASSERT_EQ(binary_path, cmd[0]);
|
||||
ASSERT_EQ("3", cmd[1]); // RECOVERY_API_VERSION
|
||||
@@ -244,7 +244,7 @@ TEST(InstallTest, SetUpNonAbUpdateCommands_MissingUpdateBinary) {
|
||||
TemporaryDir td;
|
||||
Paths::Get().set_temporary_update_binary(std::string(td.path) + "/update_binary");
|
||||
std::vector<std::string> cmd;
|
||||
ASSERT_EQ(INSTALL_CORRUPT, SetUpNonAbUpdateCommands(package, zip, 0, status_fd, &cmd));
|
||||
ASSERT_FALSE(SetUpNonAbUpdateCommands(package, zip, 0, status_fd, &cmd));
|
||||
CloseArchive(zip);
|
||||
}
|
||||
|
||||
@@ -278,12 +278,12 @@ static void VerifyAbUpdateCommands(const std::string& serialno, bool success = t
|
||||
std::map<std::string, std::string> metadata;
|
||||
ASSERT_TRUE(ReadMetadataFromPackage(zip, &metadata));
|
||||
if (success) {
|
||||
ASSERT_EQ(0, CheckPackageMetadata(metadata, OtaType::AB));
|
||||
ASSERT_TRUE(CheckPackageMetadata(metadata, OtaType::AB));
|
||||
|
||||
int status_fd = 10;
|
||||
std::string package = "/path/to/update.zip";
|
||||
std::vector<std::string> cmd;
|
||||
ASSERT_EQ(0, SetUpAbUpdateCommands(package, zip, status_fd, &cmd));
|
||||
ASSERT_TRUE(SetUpAbUpdateCommands(package, zip, status_fd, &cmd));
|
||||
ASSERT_EQ(5U, cmd.size());
|
||||
ASSERT_EQ("/system/bin/update_engine_sideload", cmd[0]);
|
||||
ASSERT_EQ("--payload=file://" + package, cmd[1]);
|
||||
@@ -291,7 +291,7 @@ static void VerifyAbUpdateCommands(const std::string& serialno, bool success = t
|
||||
ASSERT_EQ("--headers=" + properties, cmd[3]);
|
||||
ASSERT_EQ("--status_fd=" + std::to_string(status_fd), cmd[4]);
|
||||
} else {
|
||||
ASSERT_EQ(INSTALL_ERROR, CheckPackageMetadata(metadata, OtaType::AB));
|
||||
ASSERT_FALSE(CheckPackageMetadata(metadata, OtaType::AB));
|
||||
}
|
||||
CloseArchive(zip);
|
||||
}
|
||||
@@ -326,7 +326,7 @@ TEST(InstallTest, SetUpAbUpdateCommands_MissingPayloadPropertiesTxt) {
|
||||
int status_fd = 10;
|
||||
std::string package = "/path/to/update.zip";
|
||||
std::vector<std::string> cmd;
|
||||
ASSERT_EQ(INSTALL_CORRUPT, SetUpAbUpdateCommands(package, zip, status_fd, &cmd));
|
||||
ASSERT_FALSE(SetUpAbUpdateCommands(package, zip, status_fd, &cmd));
|
||||
CloseArchive(zip);
|
||||
}
|
||||
|
||||
@@ -359,8 +359,8 @@ TEST(InstallTest, SetUpAbUpdateCommands_MultipleSerialnos) {
|
||||
VerifyAbUpdateCommands(long_serialno);
|
||||
}
|
||||
|
||||
static void test_check_package_metadata(const std::string& metadata_string, OtaType ota_type,
|
||||
int exptected_result) {
|
||||
static void TestCheckPackageMetadata(const std::string& metadata_string, OtaType ota_type,
|
||||
bool exptected_result) {
|
||||
TemporaryFile temp_file;
|
||||
BuildZipArchive(
|
||||
{
|
||||
@@ -388,7 +388,7 @@ TEST(InstallTest, CheckPackageMetadata_ota_type) {
|
||||
"post-timestamp=" + std::to_string(std::numeric_limits<int64_t>::max()),
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::AB, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::AB, false);
|
||||
|
||||
// Checks if ota-type matches
|
||||
metadata = android::base::Join(
|
||||
@@ -398,9 +398,9 @@ TEST(InstallTest, CheckPackageMetadata_ota_type) {
|
||||
"post-timestamp=" + std::to_string(std::numeric_limits<int64_t>::max()),
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::AB, 0);
|
||||
TestCheckPackageMetadata(metadata, OtaType::AB, true);
|
||||
|
||||
test_check_package_metadata(metadata, OtaType::BRICK, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::BRICK, false);
|
||||
}
|
||||
|
||||
TEST(InstallTest, CheckPackageMetadata_device_type) {
|
||||
@@ -410,7 +410,7 @@ TEST(InstallTest, CheckPackageMetadata_device_type) {
|
||||
"ota-type=BRICK",
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::BRICK, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::BRICK, false);
|
||||
|
||||
// device type mismatches
|
||||
metadata = android::base::Join(
|
||||
@@ -419,7 +419,7 @@ TEST(InstallTest, CheckPackageMetadata_device_type) {
|
||||
"pre-device=dummy_device_type",
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::BRICK, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::BRICK, false);
|
||||
}
|
||||
|
||||
TEST(InstallTest, CheckPackageMetadata_serial_number_smoke) {
|
||||
@@ -433,7 +433,7 @@ TEST(InstallTest, CheckPackageMetadata_serial_number_smoke) {
|
||||
"pre-device=" + device,
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::BRICK, 0);
|
||||
TestCheckPackageMetadata(metadata, OtaType::BRICK, true);
|
||||
|
||||
// Serial number mismatches
|
||||
metadata = android::base::Join(
|
||||
@@ -443,7 +443,7 @@ TEST(InstallTest, CheckPackageMetadata_serial_number_smoke) {
|
||||
"serialno=dummy_serial",
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::BRICK, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::BRICK, false);
|
||||
|
||||
std::string serialno = android::base::GetProperty("ro.serialno", "");
|
||||
ASSERT_NE("", serialno);
|
||||
@@ -454,7 +454,7 @@ TEST(InstallTest, CheckPackageMetadata_serial_number_smoke) {
|
||||
"serialno=" + serialno,
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::BRICK, 0);
|
||||
TestCheckPackageMetadata(metadata, OtaType::BRICK, true);
|
||||
}
|
||||
|
||||
TEST(InstallTest, CheckPackageMetadata_multiple_serial_number) {
|
||||
@@ -478,7 +478,7 @@ TEST(InstallTest, CheckPackageMetadata_multiple_serial_number) {
|
||||
"serialno=" + android::base::Join(serial_numbers, '|'),
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::BRICK, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::BRICK, false);
|
||||
|
||||
serial_numbers.emplace_back(serialno);
|
||||
std::shuffle(serial_numbers.begin(), serial_numbers.end(), std::default_random_engine());
|
||||
@@ -489,7 +489,7 @@ TEST(InstallTest, CheckPackageMetadata_multiple_serial_number) {
|
||||
"serialno=" + android::base::Join(serial_numbers, '|'),
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::BRICK, 0);
|
||||
TestCheckPackageMetadata(metadata, OtaType::BRICK, true);
|
||||
}
|
||||
|
||||
TEST(InstallTest, CheckPackageMetadata_ab_build_version) {
|
||||
@@ -507,7 +507,7 @@ TEST(InstallTest, CheckPackageMetadata_ab_build_version) {
|
||||
"post-timestamp=" + std::to_string(std::numeric_limits<int64_t>::max()),
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::AB, 0);
|
||||
TestCheckPackageMetadata(metadata, OtaType::AB, true);
|
||||
|
||||
metadata = android::base::Join(
|
||||
std::vector<std::string>{
|
||||
@@ -517,7 +517,7 @@ TEST(InstallTest, CheckPackageMetadata_ab_build_version) {
|
||||
"post-timestamp=" + std::to_string(std::numeric_limits<int64_t>::max()),
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::AB, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::AB, false);
|
||||
}
|
||||
|
||||
TEST(InstallTest, CheckPackageMetadata_ab_fingerprint) {
|
||||
@@ -535,7 +535,7 @@ TEST(InstallTest, CheckPackageMetadata_ab_fingerprint) {
|
||||
"post-timestamp=" + std::to_string(std::numeric_limits<int64_t>::max()),
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::AB, 0);
|
||||
TestCheckPackageMetadata(metadata, OtaType::AB, true);
|
||||
|
||||
metadata = android::base::Join(
|
||||
std::vector<std::string>{
|
||||
@@ -545,7 +545,7 @@ TEST(InstallTest, CheckPackageMetadata_ab_fingerprint) {
|
||||
"post-timestamp=" + std::to_string(std::numeric_limits<int64_t>::max()),
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::AB, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::AB, false);
|
||||
}
|
||||
|
||||
TEST(InstallTest, CheckPackageMetadata_ab_post_timestamp) {
|
||||
@@ -559,7 +559,7 @@ TEST(InstallTest, CheckPackageMetadata_ab_post_timestamp) {
|
||||
"pre-device=" + device,
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::AB, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::AB, false);
|
||||
|
||||
// post timestamp should be larger than the timestamp on device.
|
||||
metadata = android::base::Join(
|
||||
@@ -569,7 +569,7 @@ TEST(InstallTest, CheckPackageMetadata_ab_post_timestamp) {
|
||||
"post-timestamp=0",
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::AB, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::AB, false);
|
||||
|
||||
// fingerprint is required for downgrade
|
||||
metadata = android::base::Join(
|
||||
@@ -580,7 +580,7 @@ TEST(InstallTest, CheckPackageMetadata_ab_post_timestamp) {
|
||||
"ota-downgrade=yes",
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::AB, INSTALL_ERROR);
|
||||
TestCheckPackageMetadata(metadata, OtaType::AB, false);
|
||||
|
||||
std::string finger_print = android::base::GetProperty("ro.build.fingerprint", "");
|
||||
ASSERT_NE("", finger_print);
|
||||
@@ -594,5 +594,5 @@ TEST(InstallTest, CheckPackageMetadata_ab_post_timestamp) {
|
||||
"ota-downgrade=yes",
|
||||
},
|
||||
"\n");
|
||||
test_check_package_metadata(metadata, OtaType::AB, 0);
|
||||
TestCheckPackageMetadata(metadata, OtaType::AB, true);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user