Adding test for IsDynamicPartition
Adding a test case for checking if flash task is a dynamic partition flash task. This function is used since is-logical only works in fastbootd, and should_flash_in_userspace() only works if $ANDROID_PRODUCT_OUT is set. This function works with fastboot update when called in bootloader without $OUT dir set Test: fastboot_test Change-Id: I65309f97e04fdfc449e61de5cd3a6feff18bc9ab
This commit is contained in:
parent
2d4261ca43
commit
afe1163ade
1 changed files with 30 additions and 0 deletions
|
@ -234,6 +234,35 @@ TEST_F(ParseTest, CorrectTaskLists) {
|
|||
<< "size of fastboot-info task list: " << fastboot_info_tasks.size()
|
||||
<< " size of hardcoded task list: " << hardcoded_tasks.size();
|
||||
}
|
||||
TEST_F(ParseTest, IsDynamicParitiontest) {
|
||||
if (!get_android_product_out()) {
|
||||
GTEST_SKIP();
|
||||
}
|
||||
|
||||
LocalImageSource s;
|
||||
fp->source = &s;
|
||||
|
||||
fastboot::MockFastbootDriver fb;
|
||||
fp->fb = &fb;
|
||||
fp->should_optimize_flash_super = true;
|
||||
fp->should_use_fastboot_info = true;
|
||||
|
||||
std::vector<std::pair<std::string, bool>> test_cases = {
|
||||
{"flash boot", false},
|
||||
{"flash init_boot", false},
|
||||
{"flash --apply-vbmeta vbmeta", false},
|
||||
{"flash product", true},
|
||||
{"flash system", true},
|
||||
{"flash --slot-other system system_other.img", true},
|
||||
};
|
||||
for (auto& test : test_cases) {
|
||||
std::unique_ptr<Task> task =
|
||||
ParseFastbootInfoLine(fp.get(), android::base::Tokenize(test.first, " "));
|
||||
auto flash_task = task->AsFlashTask();
|
||||
ASSERT_FALSE(flash_task == nullptr);
|
||||
ASSERT_EQ(FlashTask::IsDynamicParitition(fp->source, flash_task), test.second);
|
||||
}
|
||||
}
|
||||
|
||||
TEST_F(ParseTest, CanOptimizeTest) {
|
||||
if (!get_android_product_out()) {
|
||||
|
@ -275,6 +304,7 @@ TEST_F(ParseTest, CanOptimizeTest) {
|
|||
ASSERT_EQ(OptimizedFlashSuperTask::CanOptimize(fp->source, tasks), test.second);
|
||||
}
|
||||
}
|
||||
|
||||
// Note: this test is exclusively testing that optimized flash super pattern matches a given task
|
||||
// list and is able to optimized based on a correct sequence of tasks
|
||||
TEST_F(ParseTest, OptimizedFlashSuperPatternMatchTest) {
|
||||
|
|
Loading…
Reference in a new issue