diff options
author | Nicolas Geoffray <ngeoffray@google.com> | 2021-06-29 11:55:06 +0000 |
---|---|---|
committer | Nicolas Geoffray <ngeoffray@google.com> | 2021-06-29 14:47:22 +0100 |
commit | 3c75ec976b63902a83ad7dc3352f26cda60e4ac3 (patch) | |
tree | c4e9c00a78d01493d2c2350b041b1e08d76273fd | |
parent | b98bc39d9f3d44fc2910c0bdd16ba1933cab282d (diff) | |
download | extras-3c75ec976b63902a83ad7dc3352f26cda60e4ac3.tar.gz |
Revert "simpleperf: update testdata used for testing reading dex files."
This reverts commit 371ed7afc58655c639ab685f2a1bd20ca8c0ca14.
Reason for revert: version 002 of vdex has been reverted
Bug: 191480616
Bug: 192327398
Change-Id: I360b65111812156a0d95fad33fa59e224cc43276
Merged-In: I360b65111812156a0d95fad33fa59e224cc43276
(cherry picked from commit 3ae1f42b51362b333ab0378bc44522bfbb81e1d2)
-rw-r--r-- | simpleperf/dso_test.cpp | 36 | ||||
-rw-r--r-- | simpleperf/get_test_data.h | 28 | ||||
-rw-r--r-- | simpleperf/read_dex_file_test.cpp | 24 | ||||
-rw-r--r-- | simpleperf/testdata/base.vdex (renamed from simpleperf/testdata/base_with_cdex_v1.vdex) | bin | 2046136 -> 2046136 bytes | |||
-rw-r--r-- | simpleperf/testdata/base_with_cdex_v2.vdex | bin | 2626976 -> 0 bytes |
5 files changed, 25 insertions, 63 deletions
diff --git a/simpleperf/dso_test.cpp b/simpleperf/dso_test.cpp index c8618036..02958ce6 100644 --- a/simpleperf/dso_test.cpp +++ b/simpleperf/dso_test.cpp @@ -152,28 +152,24 @@ TEST(DebugElfFileFinder, build_id_mismatch) { TEST(dso, dex_file_dso) { #if defined(__linux__) for (DsoType dso_type : {DSO_DEX_FILE, DSO_ELF_FILE}) { - for (const DexFileTestData& entry : dex_file_test_data) { - if (entry.filename == "base_with_cdex_v1.vdex") { - continue; // TODO: reenable it. - } - std::unique_ptr<Dso> dso = Dso::CreateDso(dso_type, GetTestData(entry.filename)); - ASSERT_TRUE(dso); - dso->AddDexFileOffset(entry.dexfile_offset); - ASSERT_EQ(DSO_DEX_FILE, dso->type()); - const Symbol* symbol = dso->FindSymbol(entry.symbol_addr); - ASSERT_NE(symbol, nullptr); - ASSERT_EQ(symbol->addr, entry.symbol_addr); - ASSERT_EQ(symbol->len, entry.symbol_len); - ASSERT_STREQ(symbol->DemangledName(), entry.symbol_name.c_str()); - uint64_t min_vaddr; - uint64_t file_offset_of_min_vaddr; - dso->GetMinExecutableVaddr(&min_vaddr, &file_offset_of_min_vaddr); - ASSERT_EQ(min_vaddr, 0); - ASSERT_EQ(file_offset_of_min_vaddr, 0); - } + std::unique_ptr<Dso> dso = Dso::CreateDso(dso_type, GetTestData("base.vdex")); + ASSERT_TRUE(dso); + dso->AddDexFileOffset(0x28); + ASSERT_EQ(DSO_DEX_FILE, dso->type()); + const Symbol* symbol = dso->FindSymbol(0x6c77e); + ASSERT_NE(symbol, nullptr); + ASSERT_EQ(symbol->addr, static_cast<uint64_t>(0x6c77e)); + ASSERT_EQ(symbol->len, static_cast<uint64_t>(0x16)); + ASSERT_STREQ(symbol->DemangledName(), + "com.example.simpleperf.simpleperfexamplewithnative.MixActivity$1.run"); + uint64_t min_vaddr; + uint64_t file_offset_of_min_vaddr; + dso->GetMinExecutableVaddr(&min_vaddr, &file_offset_of_min_vaddr); + ASSERT_EQ(min_vaddr, 0); + ASSERT_EQ(file_offset_of_min_vaddr, 0); // Don't crash on not exist zip entry. - std::unique_ptr<Dso> dso = Dso::CreateDso(dso_type, GetTestData("base.zip!/not_exist_entry")); + dso = Dso::CreateDso(dso_type, GetTestData("base.zip!/not_exist_entry")); ASSERT_TRUE(dso); ASSERT_EQ(nullptr, dso->FindSymbol(0)); } diff --git a/simpleperf/get_test_data.h b/simpleperf/get_test_data.h index b6a7999e..1ef663b9 100644 --- a/simpleperf/get_test_data.h +++ b/simpleperf/get_test_data.h @@ -149,32 +149,4 @@ static const std::string PERF_DATA_WITH_IP_ZERO_IN_CALLCHAIN = // generated by `simpleperf record -e cs-etm:u ./etm_test_loop` static const std::string PERF_DATA_ETM_TEST_LOOP = "etm/perf.data"; -struct DexFileTestData { - std::string filename; - uint64_t dexfile_offset; - size_t symbol_count; - // One symbol in the dex file. - uint64_t symbol_addr; - uint64_t symbol_len; - std::string symbol_name; -}; - -static DexFileTestData dex_file_test_data[] = { - DexFileTestData{ - "base_with_cdex_v1.vdex", - 0x28, - 12435, - 0x6c77e, - 0x16, - "com.example.simpleperf.simpleperfexamplewithnative.MixActivity$1.run", - }, - DexFileTestData{ - "base_with_cdex_v2.vdex", - 0x40, - 16891, - 0x169b84, - 0x25a, - "com.android.calculator2.Calculator.onButtonClick", - }}; - #endif // SIMPLE_PERF_GET_TEST_DATA_H_ diff --git a/simpleperf/read_dex_file_test.cpp b/simpleperf/read_dex_file_test.cpp index fc72ceda..843a964c 100644 --- a/simpleperf/read_dex_file_test.cpp +++ b/simpleperf/read_dex_file_test.cpp @@ -32,18 +32,12 @@ TEST(read_dex_file, smoke) { auto symbol_callback = [&](DexFileSymbol* symbol) { symbols.emplace_back(symbol->name, symbol->addr, symbol->size); }; - for (DexFileTestData& entry : dex_file_test_data) { - if (entry.filename == "base_with_cdex_v1.vdex") { - continue; // TODO: reenable it. - } - ASSERT_TRUE(ReadSymbolsFromDexFile(GetTestData(entry.filename), {entry.dexfile_offset}, - symbol_callback)); - ASSERT_EQ(entry.symbol_count, symbols.size()); - auto it = std::find_if(symbols.begin(), symbols.end(), - [&](const Symbol& symbol) { return symbol.addr == entry.symbol_addr; }); - ASSERT_NE(it, symbols.end()); - ASSERT_EQ(it->addr, entry.symbol_addr); - ASSERT_EQ(it->len, entry.symbol_len); - ASSERT_STREQ(it->Name(), entry.symbol_name.c_str()); - } -}
\ No newline at end of file + ASSERT_TRUE(ReadSymbolsFromDexFile(GetTestData("base.vdex"), {0x28}, symbol_callback)); + ASSERT_EQ(12435u, symbols.size()); + auto it = std::find_if(symbols.begin(), symbols.end(), + [](const Symbol& symbol) { return symbol.addr == 0x6c77e; }); + ASSERT_NE(it, symbols.end()); + ASSERT_EQ(it->addr, 0x6c77e); + ASSERT_EQ(it->len, 0x16); + ASSERT_STREQ(it->Name(), "com.example.simpleperf.simpleperfexamplewithnative.MixActivity$1.run"); +} diff --git a/simpleperf/testdata/base_with_cdex_v1.vdex b/simpleperf/testdata/base.vdex Binary files differindex b0ea0184..b0ea0184 100644 --- a/simpleperf/testdata/base_with_cdex_v1.vdex +++ b/simpleperf/testdata/base.vdex diff --git a/simpleperf/testdata/base_with_cdex_v2.vdex b/simpleperf/testdata/base_with_cdex_v2.vdex Binary files differdeleted file mode 100644 index 16ecc6fd..00000000 --- a/simpleperf/testdata/base_with_cdex_v2.vdex +++ /dev/null |