Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1413)

Unified Diff: chrome/browser/extensions/extension_ui_unittest.cc

Issue 6772022: Make <all_urls> and file:///* in permissions trigger "Allow file access" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix ExtensionModuleApiTest.(In)CognitoNoFile. Created 9 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_ui_unittest.cc
diff --git a/chrome/browser/extensions/extension_ui_unittest.cc b/chrome/browser/extensions/extension_ui_unittest.cc
index a9b65ceafb839f9809b1aaaa8a4fa43ce082fad8..b59e51c344717cb672a051249c559c78f5164163 100644
--- a/chrome/browser/extensions/extension_ui_unittest.cc
+++ b/chrome/browser/extensions/extension_ui_unittest.cc
@@ -21,7 +21,7 @@ namespace {
return static_cast<DictionaryValue*>(value);
}
- static bool CompareExpectedAndActualOutput(
+ static void CheckExpectedAndActualOutput(
const FilePath& extension_path,
const std::vector<ExtensionPage>& pages,
const FilePath& expected_output_path) {
@@ -56,8 +56,23 @@ namespace {
ExtensionsDOMHandler::CreateExtensionDetailValue(NULL, extension.get(),
pages, true, false));
- // Compare the outputs.
- return expected_output_data->Equals(actual_output_data.get());
+ // If the comparison fails, it's easiest to understand why when comparing
+ // the JSON serializations.
+ std::string details = "Expected (" +
+ expected_output_path.MaybeAsASCII() + "):\n";
+ std::string serialization = "";
+ JSONStringValueSerializer serializer(&serialization);
+ serializer.set_pretty_print(true);
+ serializer.Serialize(*expected_output_data);
+ details += serialization;
+
+ details += "\nActual (" + extension_path.MaybeAsASCII() + "):\n";
+ serialization.clear();
+ serializer.Serialize(*actual_output_data);
+ details += serialization;
+
+ EXPECT_TRUE(expected_output_data->Equals(actual_output_data.get()))
+ << details;
}
} // namespace
@@ -85,8 +100,7 @@ TEST(ExtensionUITest, GenerateExtensionsJSONData) {
.AppendASCII("create_extension_detail_value_expected_output")
.AppendASCII("good-extension1.json");
- EXPECT_TRUE(CompareExpectedAndActualOutput(extension_path, pages,
- expected_output_path)) << extension_path.value();
+ CheckExpectedAndActualOutput(extension_path, pages, expected_output_path);
#if !defined(OS_CHROMEOS)
// Test Extension2
@@ -104,8 +118,7 @@ TEST(ExtensionUITest, GenerateExtensionsJSONData) {
// It's OK to have duplicate URLs, so long as the IDs are different.
pages[1].url = pages[0].url;
- EXPECT_TRUE(CompareExpectedAndActualOutput(extension_path, pages,
- expected_output_path)) << extension_path.value();
+ CheckExpectedAndActualOutput(extension_path, pages, expected_output_path);
#endif
// Test Extension3
@@ -122,6 +135,5 @@ TEST(ExtensionUITest, GenerateExtensionsJSONData) {
pages.clear();
- EXPECT_TRUE(CompareExpectedAndActualOutput(extension_path, pages,
- expected_output_path)) << extension_path.value();
+ CheckExpectedAndActualOutput(extension_path, pages, expected_output_path);
}

Powered by Google App Engine
This is Rietveld 408576698