OLD | NEW |
---|---|
(Empty) | |
1 // Copyright 2014 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 "base/bind.h" | |
6 #include "base/strings/utf_string_conversions.h" | |
7 #include "chrome/browser/notifications/desktop_notification_profile_util.h" | |
8 #include "chrome/browser/notifications/desktop_notification_service.h" | |
9 #include "chrome/test/base/chrome_render_view_host_test_harness.h" | |
10 #include "chrome/test/base/testing_profile.h" | |
11 #include "testing/gtest/include/gtest/gtest.h" | |
12 | |
13 typedef testing::Test DesktopNotificationServiceTest; | |
14 | |
15 class DesktopNotificationServiceSettingsTest | |
16 : public ChromeRenderViewHostTestHarness { | |
17 protected: | |
18 virtual void SetUp() { ChromeRenderViewHostTestHarness::SetUp(); } | |
Peter Beverloo
2014/10/18 09:31:02
SetUp() is defined in RenderViewHostTestHarness an
dewittj
2014/10/29 16:21:26
Done.
| |
19 }; | |
20 | |
21 TEST_F(DesktopNotificationServiceSettingsTest, GetNotificationsSettings) { | |
22 DesktopNotificationProfileUtil::GrantPermission(profile(), | |
23 GURL("http://allowed2.com")); | |
24 DesktopNotificationProfileUtil::GrantPermission(profile(), | |
25 GURL("http://allowed.com")); | |
26 DesktopNotificationProfileUtil::DenyPermission(profile(), | |
27 GURL("http://denied2.com")); | |
28 DesktopNotificationProfileUtil::DenyPermission(profile(), | |
29 GURL("http://denied.com")); | |
30 | |
31 ContentSettingsForOneType settings; | |
32 DesktopNotificationProfileUtil::GetNotificationsSettings(profile(), | |
33 &settings); | |
34 // |settings| contains the default setting and 4 exceptions. | |
35 ASSERT_EQ(5u, settings.size()); | |
36 | |
37 EXPECT_EQ( | |
38 ContentSettingsPattern::FromURLNoWildcard(GURL("http://allowed.com")), | |
39 settings[0].primary_pattern); | |
40 EXPECT_EQ(CONTENT_SETTING_ALLOW, settings[0].setting); | |
41 EXPECT_EQ( | |
42 ContentSettingsPattern::FromURLNoWildcard(GURL("http://allowed2.com")), | |
43 settings[1].primary_pattern); | |
44 EXPECT_EQ(CONTENT_SETTING_ALLOW, settings[1].setting); | |
45 EXPECT_EQ( | |
46 ContentSettingsPattern::FromURLNoWildcard(GURL("http://denied.com")), | |
47 settings[2].primary_pattern); | |
48 EXPECT_EQ(CONTENT_SETTING_BLOCK, settings[2].setting); | |
49 EXPECT_EQ( | |
50 ContentSettingsPattern::FromURLNoWildcard(GURL("http://denied2.com")), | |
51 settings[3].primary_pattern); | |
52 EXPECT_EQ(CONTENT_SETTING_BLOCK, settings[3].setting); | |
53 EXPECT_EQ(ContentSettingsPattern::Wildcard(), settings[4].primary_pattern); | |
54 EXPECT_EQ(CONTENT_SETTING_ASK, settings[4].setting); | |
55 } | |
56 | |
57 TEST_F(DesktopNotificationServiceTest, TestOriginDisplayName) { | |
58 std::string language("en-us"); | |
59 | |
60 GURL https_origin("https://mail.google.com/"); | |
61 base::string16 expected_display_name = base::ASCIIToUTF16("mail.google.com"); | |
62 EXPECT_EQ( | |
63 expected_display_name, | |
64 DesktopNotificationService::OriginDisplayName(https_origin, language)); | |
65 | |
66 GURL https_origin_standard_port("https://mail.google.com:443/"); | |
67 expected_display_name = base::ASCIIToUTF16("mail.google.com"); | |
68 EXPECT_EQ(expected_display_name, | |
69 DesktopNotificationService::OriginDisplayName( | |
70 https_origin_standard_port, language)); | |
71 | |
72 GURL https_origin_nonstandard_port("https://mail.google.com:444/"); | |
73 expected_display_name = base::ASCIIToUTF16("mail.google.com:444"); | |
74 EXPECT_EQ(expected_display_name, | |
75 DesktopNotificationService::OriginDisplayName( | |
76 https_origin_nonstandard_port, language)); | |
77 | |
78 GURL http_origin("http://mail.google.com/"); | |
79 expected_display_name = base::ASCIIToUTF16("mail.google.com"); | |
80 EXPECT_EQ( | |
81 expected_display_name, | |
82 DesktopNotificationService::OriginDisplayName(http_origin, language)); | |
83 | |
84 GURL http_origin_standard_port("http://mail.google.com:80/"); | |
85 expected_display_name = base::ASCIIToUTF16("mail.google.com"); | |
86 EXPECT_EQ(expected_display_name, | |
87 DesktopNotificationService::OriginDisplayName( | |
88 http_origin_standard_port, language)); | |
89 | |
90 GURL http_origin_nonstandard_port("http://mail.google.com:81/"); | |
91 expected_display_name = base::ASCIIToUTF16("mail.google.com:81"); | |
92 EXPECT_EQ(expected_display_name, | |
93 DesktopNotificationService::OriginDisplayName( | |
94 http_origin_nonstandard_port, language)); | |
95 // TODO(dewittj): Add file origin once it's supported. | |
96 } | |
OLD | NEW |