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

Unified Diff: chrome/browser/notifications/desktop_notification_service_unittest.cc

Issue 661643002: Adds a context message of the security origin for web notifications. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 6 years, 1 month 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/notifications/desktop_notification_service_unittest.cc
diff --git a/chrome/browser/notifications/desktop_notification_service_unittest.cc b/chrome/browser/notifications/desktop_notification_service_unittest.cc
new file mode 100644
index 0000000000000000000000000000000000000000..7cc1889a72eb0e9a81ddd234663066215bf5edea
--- /dev/null
+++ b/chrome/browser/notifications/desktop_notification_service_unittest.cc
@@ -0,0 +1,92 @@
+// Copyright 2014 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.
+
+#include "base/bind.h"
+#include "base/strings/utf_string_conversions.h"
+#include "chrome/browser/notifications/desktop_notification_profile_util.h"
+#include "chrome/browser/notifications/desktop_notification_service.h"
+#include "chrome/test/base/chrome_render_view_host_test_harness.h"
+#include "chrome/test/base/testing_profile.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+typedef testing::Test DesktopNotificationServiceTest;
+
+typedef ChromeRenderViewHostTestHarness DesktopNotificationServiceSettingsTest;
+
+TEST_F(DesktopNotificationServiceSettingsTest, GetNotificationsSettings) {
+ DesktopNotificationProfileUtil::GrantPermission(profile(),
+ GURL("http://allowed2.com"));
+ DesktopNotificationProfileUtil::GrantPermission(profile(),
+ GURL("http://allowed.com"));
+ DesktopNotificationProfileUtil::DenyPermission(profile(),
+ GURL("http://denied2.com"));
+ DesktopNotificationProfileUtil::DenyPermission(profile(),
+ GURL("http://denied.com"));
+
+ ContentSettingsForOneType settings;
+ DesktopNotificationProfileUtil::GetNotificationsSettings(profile(),
+ &settings);
+ // |settings| contains the default setting and 4 exceptions.
+ ASSERT_EQ(5u, settings.size());
+
+ EXPECT_EQ(
+ ContentSettingsPattern::FromURLNoWildcard(GURL("http://allowed.com")),
+ settings[0].primary_pattern);
+ EXPECT_EQ(CONTENT_SETTING_ALLOW, settings[0].setting);
+ EXPECT_EQ(
+ ContentSettingsPattern::FromURLNoWildcard(GURL("http://allowed2.com")),
+ settings[1].primary_pattern);
+ EXPECT_EQ(CONTENT_SETTING_ALLOW, settings[1].setting);
+ EXPECT_EQ(
+ ContentSettingsPattern::FromURLNoWildcard(GURL("http://denied.com")),
+ settings[2].primary_pattern);
+ EXPECT_EQ(CONTENT_SETTING_BLOCK, settings[2].setting);
+ EXPECT_EQ(
+ ContentSettingsPattern::FromURLNoWildcard(GURL("http://denied2.com")),
+ settings[3].primary_pattern);
+ EXPECT_EQ(CONTENT_SETTING_BLOCK, settings[3].setting);
+ EXPECT_EQ(ContentSettingsPattern::Wildcard(), settings[4].primary_pattern);
+ EXPECT_EQ(CONTENT_SETTING_ASK, settings[4].setting);
+}
+
+TEST_F(DesktopNotificationServiceTest, TestOriginDisplayName) {
+ std::string language("en-us");
+
+ GURL https_origin("https://mail.google.com/");
+ base::string16 expected_display_name = base::ASCIIToUTF16("mail.google.com");
+ EXPECT_EQ(
+ expected_display_name,
+ DesktopNotificationService::OriginDisplayName(https_origin, language));
+
+ GURL https_origin_standard_port("https://mail.google.com:443/");
+ expected_display_name = base::ASCIIToUTF16("mail.google.com");
+ EXPECT_EQ(expected_display_name,
+ DesktopNotificationService::OriginDisplayName(
+ https_origin_standard_port, language));
+
+ GURL https_origin_nonstandard_port("https://mail.google.com:444/");
+ expected_display_name = base::ASCIIToUTF16("mail.google.com:444");
+ EXPECT_EQ(expected_display_name,
+ DesktopNotificationService::OriginDisplayName(
+ https_origin_nonstandard_port, language));
+
+ GURL http_origin("http://mail.google.com/");
+ expected_display_name = base::ASCIIToUTF16("mail.google.com");
+ EXPECT_EQ(
+ expected_display_name,
+ DesktopNotificationService::OriginDisplayName(http_origin, language));
+
+ GURL http_origin_standard_port("http://mail.google.com:80/");
+ expected_display_name = base::ASCIIToUTF16("mail.google.com");
+ EXPECT_EQ(expected_display_name,
+ DesktopNotificationService::OriginDisplayName(
+ http_origin_standard_port, language));
+
+ GURL http_origin_nonstandard_port("http://mail.google.com:81/");
+ expected_display_name = base::ASCIIToUTF16("mail.google.com:81");
+ EXPECT_EQ(expected_display_name,
+ DesktopNotificationService::OriginDisplayName(
+ http_origin_nonstandard_port, language));
+ // TODO(dewittj): Add file origin once it's supported.
+}

Powered by Google App Engine
This is Rietveld 408576698