diff options
author | Tianjie Xu <xunchang@google.com> | 2017-07-21 23:04:17 +0200 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-07-21 23:04:17 +0200 |
commit | 80acaab52f019c2db0d05865ef63fd533d0a668b (patch) | |
tree | aa790d00af253a4e0d43ee8623f4dec95362fa90 /tests/component | |
parent | Merge "recovery: replace make_ext4 with e2fsprogs" (diff) | |
parent | Merge "Fix a case when brotli writer fails to write last few blocks of data" (diff) | |
download | android_bootable_recovery-80acaab52f019c2db0d05865ef63fd533d0a668b.tar android_bootable_recovery-80acaab52f019c2db0d05865ef63fd533d0a668b.tar.gz android_bootable_recovery-80acaab52f019c2db0d05865ef63fd533d0a668b.tar.bz2 android_bootable_recovery-80acaab52f019c2db0d05865ef63fd533d0a668b.tar.lz android_bootable_recovery-80acaab52f019c2db0d05865ef63fd533d0a668b.tar.xz android_bootable_recovery-80acaab52f019c2db0d05865ef63fd533d0a668b.tar.zst android_bootable_recovery-80acaab52f019c2db0d05865ef63fd533d0a668b.zip |
Diffstat (limited to 'tests/component')
-rw-r--r-- | tests/component/updater_test.cpp | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/tests/component/updater_test.cpp b/tests/component/updater_test.cpp index 01b86f224..6c341c111 100644 --- a/tests/component/updater_test.cpp +++ b/tests/component/updater_test.cpp @@ -592,10 +592,10 @@ TEST_F(UpdaterTest, brotli_new_data) { ASSERT_EQ(0, zip_writer.StartEntry("new.dat.br", 0)); auto generator = []() { return rand() % 128; }; - // Generate 2048 blocks of random data. + // Generate 100 blocks of random data. std::string brotli_new_data; - brotli_new_data.reserve(4096 * 2048); - generate_n(back_inserter(brotli_new_data), 4096 * 2048, generator); + brotli_new_data.reserve(4096 * 100); + generate_n(back_inserter(brotli_new_data), 4096 * 100, generator); size_t encoded_size = BrotliEncoderMaxCompressedSize(brotli_new_data.size()); std::vector<uint8_t> encoded_data(encoded_size); @@ -609,8 +609,19 @@ TEST_F(UpdaterTest, brotli_new_data) { ASSERT_EQ(0, zip_writer.StartEntry("patch_data", 0)); ASSERT_EQ(0, zip_writer.FinishEntry()); + // Write a few small chunks of new data, then a large chunk, and finally a few small chunks. + // This helps us to catch potential short writes. std::vector<std::string> transfer_list = { - "4", "2048", "0", "0", "new 4,0,512,512,1024", "new 2,1024,2048", + "4", + "100", + "0", + "0", + "new 2,0,1", + "new 2,1,2", + "new 4,2,50,50,97", + "new 2,97,98", + "new 2,98,99", + "new 2,99,100", }; ASSERT_EQ(0, zip_writer.StartEntry("transfer_list", 0)); std::string commands = android::base::Join(transfer_list, '\n'); |