Index: chrome/browser/metrics/metrics_log_serializer_unittest.cc |
diff --git a/chrome/browser/metrics/metrics_log_serializer_unittest.cc b/chrome/browser/metrics/metrics_log_serializer_unittest.cc |
index 59c257b8c16e89f0884a631f65e15ca85a305027..f023a7cb2ef0b119f2f49a6dbbe8197d75a6bc44 100644 |
--- a/chrome/browser/metrics/metrics_log_serializer_unittest.cc |
+++ b/chrome/browser/metrics/metrics_log_serializer_unittest.cc |
@@ -1,4 +1,4 @@ |
-// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
+// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
@@ -8,42 +8,46 @@ |
#include "chrome/browser/metrics/metrics_log_serializer.h" |
#include "testing/gtest/include/gtest/gtest.h" |
+typedef MetricsLogManager::SerializedLog SerializedLog; |
+ |
namespace { |
- class MetricsLogSerializerTest : public ::testing::Test { |
- }; |
-} |
-static const size_t kMaxLocalListSize = 3; |
+const size_t kMaxLocalListSize = 3; |
+ |
+} // namespace |
+ |
+class MetricsLogSerializerTest : public ::testing::Test { |
+}; |
// Store and retrieve empty list. |
TEST(MetricsLogSerializerTest, EmptyLogList) { |
ListValue list; |
- std::vector<std::string> local_list; |
+ std::vector<SerializedLog> local_list; |
- MetricsLogSerializer::WriteLogsToPrefList(local_list, kMaxLocalListSize, |
+ MetricsLogSerializer::WriteLogsToPrefList(local_list, true, kMaxLocalListSize, |
&list); |
EXPECT_EQ(0U, list.GetSize()); |
local_list.clear(); // ReadLogsFromPrefList() expects empty |local_list|. |
- EXPECT_EQ(MetricsLogSerializer::LIST_EMPTY, |
- MetricsLogSerializer::ReadLogsFromPrefList(list, &local_list)); |
+ EXPECT_EQ( |
+ MetricsLogSerializer::LIST_EMPTY, |
+ MetricsLogSerializer::ReadLogsFromPrefList(list, true, &local_list)); |
EXPECT_EQ(0U, local_list.size()); |
} |
// Store and retrieve a single log value. |
TEST(MetricsLogSerializerTest, SingleElementLogList) { |
ListValue list; |
- std::vector<std::string> local_list; |
- local_list.push_back("Hello world!"); |
- EXPECT_EQ(1U, local_list.size()); |
+ std::vector<SerializedLog> local_list(1); |
+ local_list[0].xml = "Hello world!"; |
- MetricsLogSerializer::WriteLogsToPrefList(local_list, kMaxLocalListSize, |
+ MetricsLogSerializer::WriteLogsToPrefList(local_list, true, kMaxLocalListSize, |
&list); |
// |list| will now contain the following: |
// [1, Base64Encode("Hello world!"), MD5("Hello world!")]. |
- EXPECT_EQ(3U, list.GetSize()); |
+ ASSERT_EQ(3U, list.GetSize()); |
// Examine each element. |
ListValue::const_iterator it = list.begin(); |
@@ -66,55 +70,56 @@ TEST(MetricsLogSerializerTest, SingleElementLogList) { |
EXPECT_TRUE(it == list.end()); // Reached end of list. |
local_list.clear(); |
- EXPECT_EQ(MetricsLogSerializer::RECALL_SUCCESS, |
- MetricsLogSerializer::ReadLogsFromPrefList(list, &local_list)); |
+ EXPECT_EQ( |
+ MetricsLogSerializer::RECALL_SUCCESS, |
+ MetricsLogSerializer::ReadLogsFromPrefList(list, true, &local_list)); |
EXPECT_EQ(1U, local_list.size()); |
} |
// Store elements greater than the limit. |
TEST(MetricsLogSerializerTest, OverLimitLogList) { |
ListValue list; |
- std::vector<std::string> local_list; |
- local_list.push_back("one"); |
- local_list.push_back("two"); |
- local_list.push_back("three"); |
- local_list.push_back("four"); |
- EXPECT_EQ(4U, local_list.size()); |
+ std::vector<SerializedLog> local_list(4); |
+ local_list[0].proto = "one"; |
+ local_list[1].proto = "two"; |
+ local_list[2].proto = "three"; |
+ local_list[3].proto = "four"; |
std::string expected_first; |
- base::Base64Encode(local_list[local_list.size() - kMaxLocalListSize], |
+ base::Base64Encode(local_list[local_list.size() - kMaxLocalListSize].proto, |
&expected_first); |
std::string expected_last; |
- base::Base64Encode(local_list[local_list.size() - 1], |
+ base::Base64Encode(local_list[local_list.size() - 1].proto, |
&expected_last); |
- MetricsLogSerializer::WriteLogsToPrefList(local_list, kMaxLocalListSize, |
- &list); |
+ MetricsLogSerializer::WriteLogsToPrefList(local_list, false, |
+ kMaxLocalListSize, &list); |
EXPECT_EQ(kMaxLocalListSize + 2, list.GetSize()); |
std::string actual_first; |
EXPECT_TRUE((*(list.begin() + 1))->GetAsString(&actual_first)); |
- EXPECT_TRUE(expected_first == actual_first); |
+ EXPECT_EQ(expected_first, actual_first); |
std::string actual_last; |
EXPECT_TRUE((*(list.end() - 2))->GetAsString(&actual_last)); |
- EXPECT_TRUE(expected_last == actual_last); |
+ EXPECT_EQ(expected_last, actual_last); |
local_list.clear(); |
- EXPECT_EQ(MetricsLogSerializer::RECALL_SUCCESS, |
- MetricsLogSerializer::ReadLogsFromPrefList(list, &local_list)); |
+ EXPECT_EQ( |
+ MetricsLogSerializer::RECALL_SUCCESS, |
+ MetricsLogSerializer::ReadLogsFromPrefList(list, true, &local_list)); |
EXPECT_EQ(kMaxLocalListSize, local_list.size()); |
} |
// Induce LIST_SIZE_TOO_SMALL corruption |
TEST(MetricsLogSerializerTest, SmallRecoveredListSize) { |
ListValue list; |
- std::vector<std::string> local_list; |
- local_list.push_back("Hello world!"); |
- EXPECT_EQ(1U, local_list.size()); |
- MetricsLogSerializer::WriteLogsToPrefList(local_list, kMaxLocalListSize, |
+ std::vector<SerializedLog> local_list(1); |
+ local_list[0].xml = "Hello world!"; |
+ |
+ MetricsLogSerializer::WriteLogsToPrefList(local_list, true, kMaxLocalListSize, |
&list); |
EXPECT_EQ(3U, list.GetSize()); |
@@ -123,19 +128,20 @@ TEST(MetricsLogSerializerTest, SmallRecoveredListSize) { |
EXPECT_EQ(2U, list.GetSize()); |
local_list.clear(); |
- EXPECT_EQ(MetricsLogSerializer::LIST_SIZE_TOO_SMALL, |
- MetricsLogSerializer::ReadLogsFromPrefList(list, &local_list)); |
+ EXPECT_EQ( |
+ MetricsLogSerializer::LIST_SIZE_TOO_SMALL, |
+ MetricsLogSerializer::ReadLogsFromPrefList(list, true, &local_list)); |
} |
// Remove size from the stored list. |
TEST(MetricsLogSerializerTest, RemoveSizeFromLogList) { |
ListValue list; |
- std::vector<std::string> local_list; |
- local_list.push_back("one"); |
- local_list.push_back("two"); |
+ std::vector<SerializedLog> local_list(2); |
+ local_list[0].xml = "one"; |
+ local_list[1].xml = "two"; |
EXPECT_EQ(2U, local_list.size()); |
- MetricsLogSerializer::WriteLogsToPrefList(local_list, kMaxLocalListSize, |
+ MetricsLogSerializer::WriteLogsToPrefList(local_list, true, kMaxLocalListSize, |
&list); |
EXPECT_EQ(4U, list.GetSize()); |
@@ -143,18 +149,19 @@ TEST(MetricsLogSerializerTest, RemoveSizeFromLogList) { |
EXPECT_EQ(3U, list.GetSize()); |
local_list.clear(); |
- EXPECT_EQ(MetricsLogSerializer::LIST_SIZE_MISSING, |
- MetricsLogSerializer::ReadLogsFromPrefList(list, &local_list)); |
+ EXPECT_EQ( |
+ MetricsLogSerializer::LIST_SIZE_MISSING, |
+ MetricsLogSerializer::ReadLogsFromPrefList(list, true, &local_list)); |
} |
// Corrupt size of stored list. |
TEST(MetricsLogSerializerTest, CorruptSizeOfLogList) { |
ListValue list; |
- std::vector<std::string> local_list; |
- local_list.push_back("Hello world!"); |
- EXPECT_EQ(1U, local_list.size()); |
- MetricsLogSerializer::WriteLogsToPrefList(local_list, kMaxLocalListSize, |
+ std::vector<SerializedLog> local_list(1); |
+ local_list[0].xml = "Hello world!"; |
+ |
+ MetricsLogSerializer::WriteLogsToPrefList(local_list, true, kMaxLocalListSize, |
&list); |
EXPECT_EQ(3U, list.GetSize()); |
@@ -163,19 +170,19 @@ TEST(MetricsLogSerializerTest, CorruptSizeOfLogList) { |
EXPECT_EQ(3U, list.GetSize()); |
local_list.clear(); |
- EXPECT_EQ(MetricsLogSerializer::LIST_SIZE_CORRUPTION, |
- MetricsLogSerializer::ReadLogsFromPrefList(list, &local_list)); |
+ EXPECT_EQ( |
+ MetricsLogSerializer::LIST_SIZE_CORRUPTION, |
+ MetricsLogSerializer::ReadLogsFromPrefList(list, true, &local_list)); |
} |
// Corrupt checksum of stored list. |
TEST(MetricsLogSerializerTest, CorruptChecksumOfLogList) { |
ListValue list; |
- std::vector<std::string> local_list; |
- local_list.clear(); |
- local_list.push_back("Hello world!"); |
- EXPECT_EQ(1U, local_list.size()); |
- MetricsLogSerializer::WriteLogsToPrefList(local_list, kMaxLocalListSize, |
+ std::vector<SerializedLog> local_list(1); |
+ local_list[0].xml = "Hello world!"; |
+ |
+ MetricsLogSerializer::WriteLogsToPrefList(local_list, true, kMaxLocalListSize, |
&list); |
EXPECT_EQ(3U, list.GetSize()); |
@@ -187,6 +194,7 @@ TEST(MetricsLogSerializerTest, CorruptChecksumOfLogList) { |
EXPECT_EQ(3U, list.GetSize()); |
local_list.clear(); |
- EXPECT_EQ(MetricsLogSerializer::CHECKSUM_CORRUPTION, |
- MetricsLogSerializer::ReadLogsFromPrefList(list, &local_list)); |
+ EXPECT_EQ( |
+ MetricsLogSerializer::CHECKSUM_CORRUPTION, |
+ MetricsLogSerializer::ReadLogsFromPrefList(list, true, &local_list)); |
} |