ssid | 9f8022f | 2015-10-12 17:49:03 | [diff] [blame] | 1 | // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 | // Use of this source code is governed by a BSD-style license that can be |
| 3 | // found in the LICENSE file. |
| 4 | |
| 5 | #include "sql/sql_memory_dump_provider.h" |
| 6 | |
Victor Costan | 49a903a | 2021-05-07 22:21:00 | [diff] [blame] | 7 | #include "base/files/scoped_temp_dir.h" |
| 8 | #include "base/trace_event/memory_dump_request_args.h" |
ssid | 9f8022f | 2015-10-12 17:49:03 | [diff] [blame] | 9 | #include "base/trace_event/process_memory_dump.h" |
Victor Costan | 49a903a | 2021-05-07 22:21:00 | [diff] [blame] | 10 | #include "sql/database.h" |
ssid | 9f8022f | 2015-10-12 17:49:03 | [diff] [blame] | 11 | #include "testing/gtest/include/gtest/gtest.h" |
| 12 | |
Victor Costan | 49a903a | 2021-05-07 22:21:00 | [diff] [blame] | 13 | namespace sql { |
| 14 | |
ssid | 9f8022f | 2015-10-12 17:49:03 | [diff] [blame] | 15 | namespace { |
Victor Costan | 49a903a | 2021-05-07 22:21:00 | [diff] [blame] | 16 | |
| 17 | class SQLMemoryDumpProviderTest : public testing::Test { |
| 18 | public: |
| 19 | ~SQLMemoryDumpProviderTest() override = default; |
| 20 | |
| 21 | void SetUp() override { |
| 22 | ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); |
| 23 | ASSERT_TRUE(db_.Open( |
| 24 | temp_dir_.GetPath().AppendASCII("memory_dump_provider_test.sqlite"))); |
| 25 | |
| 26 | ASSERT_TRUE(db_.Execute("CREATE TABLE foo (a, b)")); |
| 27 | } |
| 28 | |
| 29 | protected: |
| 30 | base::ScopedTempDir temp_dir_; |
| 31 | Database db_; |
| 32 | }; |
ssid | 9f8022f | 2015-10-12 17:49:03 | [diff] [blame] | 33 | |
| 34 | TEST_F(SQLMemoryDumpProviderTest, OnMemoryDump) { |
ssid | 9f8022f | 2015-10-12 17:49:03 | [diff] [blame] | 35 | base::trace_event::MemoryDumpArgs args = { |
| 36 | base::trace_event::MemoryDumpLevelOfDetail::DETAILED}; |
erikchen | f62ea04 | 2018-05-25 21:30:57 | [diff] [blame] | 37 | base::trace_event::ProcessMemoryDump pmd(args); |
Victor Costan | 49a903a | 2021-05-07 22:21:00 | [diff] [blame] | 38 | ASSERT_TRUE(SqlMemoryDumpProvider::GetInstance()->OnMemoryDump(args, &pmd)); |
ssid | 9f8022f | 2015-10-12 17:49:03 | [diff] [blame] | 39 | ASSERT_TRUE(pmd.GetAllocatorDump("sqlite")); |
| 40 | } |
Victor Costan | 49a903a | 2021-05-07 22:21:00 | [diff] [blame] | 41 | |
| 42 | } // namespace |
| 43 | |
| 44 | } // namespace sql |