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

Side by Side Diff: content/common/notification_service_unittest.cc

Issue 7327007: Moving notification types which are chrome specific to a new header file chrome_notification_type... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 5 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « content/common/notification_service.cc ('k') | content/common/notification_type.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/common/notification_observer.h" 5 #include "content/common/notification_observer.h"
6 #include "content/common/notification_registrar.h" 6 #include "content/common/notification_registrar.h"
7 #include "content/common/notification_service.h" 7 #include "content/common/notification_service.h"
8 #include "testing/gtest/include/gtest/gtest.h" 8 #include "testing/gtest/include/gtest/gtest.h"
9 9
10 namespace { 10 namespace {
11 11
12 // Bogus class to act as a NotificationSource for the messages. 12 // Bogus class to act as a NotificationSource for the messages.
13 class TestSource {}; 13 class TestSource {};
14 14
15 class TestObserver : public NotificationObserver { 15 class TestObserver : public NotificationObserver {
16 public: 16 public:
17 TestObserver() : notification_count_(0) {} 17 TestObserver() : notification_count_(0) {}
18 18
19 int notification_count() { return notification_count_; } 19 int notification_count() { return notification_count_; }
20 20
21 void Observe(NotificationType type, 21 void Observe(int type,
22 const NotificationSource& source, 22 const NotificationSource& source,
23 const NotificationDetails& details) { 23 const NotificationDetails& details) {
24 ++notification_count_; 24 ++notification_count_;
25 } 25 }
26 26
27 private: 27 private:
28 int notification_count_; 28 int notification_count_;
29 }; 29 };
30 30
31 } // namespace 31 } // namespace
(...skipping 14 matching lines...) Expand all
46 EXPECT_TRUE( 46 EXPECT_TRUE(
47 Source<TestSource>(&test_source) != Source<TestSource>(&other_source)); 47 Source<TestSource>(&test_source) != Source<TestSource>(&other_source));
48 48
49 TestObserver all_types_all_sources; 49 TestObserver all_types_all_sources;
50 TestObserver idle_all_sources; 50 TestObserver idle_all_sources;
51 TestObserver all_types_test_source; 51 TestObserver all_types_test_source;
52 TestObserver idle_test_source; 52 TestObserver idle_test_source;
53 53
54 // Make sure it doesn't freak out when there are no observers. 54 // Make sure it doesn't freak out when there are no observers.
55 NotificationService* service = NotificationService::current(); 55 NotificationService* service = NotificationService::current();
56 service->Notify(NotificationType::IDLE, 56 service->Notify(content::NOTIFICATION_IDLE,
57 Source<TestSource>(&test_source), 57 Source<TestSource>(&test_source),
58 NotificationService::NoDetails()); 58 NotificationService::NoDetails());
59 59
60 registrar_.Add(&all_types_all_sources, NotificationType::ALL, 60 registrar_.Add(&all_types_all_sources, content::NOTIFICATION_ALL,
61 NotificationService::AllSources()); 61 NotificationService::AllSources());
62 registrar_.Add(&idle_all_sources, NotificationType::IDLE, 62 registrar_.Add(&idle_all_sources, content::NOTIFICATION_IDLE,
63 NotificationService::AllSources()); 63 NotificationService::AllSources());
64 registrar_.Add(&all_types_test_source, NotificationType::ALL, 64 registrar_.Add(&all_types_test_source, content::NOTIFICATION_ALL,
65 Source<TestSource>(&test_source)); 65 Source<TestSource>(&test_source));
66 registrar_.Add(&idle_test_source, NotificationType::IDLE, 66 registrar_.Add(&idle_test_source, content::NOTIFICATION_IDLE,
67 Source<TestSource>(&test_source)); 67 Source<TestSource>(&test_source));
68 68
69 EXPECT_EQ(0, all_types_all_sources.notification_count()); 69 EXPECT_EQ(0, all_types_all_sources.notification_count());
70 EXPECT_EQ(0, idle_all_sources.notification_count()); 70 EXPECT_EQ(0, idle_all_sources.notification_count());
71 EXPECT_EQ(0, all_types_test_source.notification_count()); 71 EXPECT_EQ(0, all_types_test_source.notification_count());
72 EXPECT_EQ(0, idle_test_source.notification_count()); 72 EXPECT_EQ(0, idle_test_source.notification_count());
73 73
74 service->Notify(NotificationType::IDLE, 74 service->Notify(content::NOTIFICATION_IDLE,
75 Source<TestSource>(&test_source), 75 Source<TestSource>(&test_source),
76 NotificationService::NoDetails()); 76 NotificationService::NoDetails());
77 77
78 EXPECT_EQ(1, all_types_all_sources.notification_count()); 78 EXPECT_EQ(1, all_types_all_sources.notification_count());
79 EXPECT_EQ(1, idle_all_sources.notification_count()); 79 EXPECT_EQ(1, idle_all_sources.notification_count());
80 EXPECT_EQ(1, all_types_test_source.notification_count()); 80 EXPECT_EQ(1, all_types_test_source.notification_count());
81 EXPECT_EQ(1, idle_test_source.notification_count()); 81 EXPECT_EQ(1, idle_test_source.notification_count());
82 82
83 service->Notify(NotificationType::BUSY, 83 service->Notify(content::NOTIFICATION_BUSY,
84 Source<TestSource>(&test_source), 84 Source<TestSource>(&test_source),
85 NotificationService::NoDetails()); 85 NotificationService::NoDetails());
86 86
87 EXPECT_EQ(2, all_types_all_sources.notification_count()); 87 EXPECT_EQ(2, all_types_all_sources.notification_count());
88 EXPECT_EQ(1, idle_all_sources.notification_count()); 88 EXPECT_EQ(1, idle_all_sources.notification_count());
89 EXPECT_EQ(2, all_types_test_source.notification_count()); 89 EXPECT_EQ(2, all_types_test_source.notification_count());
90 EXPECT_EQ(1, idle_test_source.notification_count()); 90 EXPECT_EQ(1, idle_test_source.notification_count());
91 91
92 service->Notify(NotificationType::IDLE, 92 service->Notify(content::NOTIFICATION_IDLE,
93 Source<TestSource>(&other_source), 93 Source<TestSource>(&other_source),
94 NotificationService::NoDetails()); 94 NotificationService::NoDetails());
95 95
96 EXPECT_EQ(3, all_types_all_sources.notification_count()); 96 EXPECT_EQ(3, all_types_all_sources.notification_count());
97 EXPECT_EQ(2, idle_all_sources.notification_count()); 97 EXPECT_EQ(2, idle_all_sources.notification_count());
98 EXPECT_EQ(2, all_types_test_source.notification_count()); 98 EXPECT_EQ(2, all_types_test_source.notification_count());
99 EXPECT_EQ(1, idle_test_source.notification_count()); 99 EXPECT_EQ(1, idle_test_source.notification_count());
100 100
101 service->Notify(NotificationType::BUSY, 101 service->Notify(content::NOTIFICATION_BUSY,
102 Source<TestSource>(&other_source), 102 Source<TestSource>(&other_source),
103 NotificationService::NoDetails()); 103 NotificationService::NoDetails());
104 104
105 EXPECT_EQ(4, all_types_all_sources.notification_count()); 105 EXPECT_EQ(4, all_types_all_sources.notification_count());
106 EXPECT_EQ(2, idle_all_sources.notification_count()); 106 EXPECT_EQ(2, idle_all_sources.notification_count());
107 EXPECT_EQ(2, all_types_test_source.notification_count()); 107 EXPECT_EQ(2, all_types_test_source.notification_count());
108 EXPECT_EQ(1, idle_test_source.notification_count()); 108 EXPECT_EQ(1, idle_test_source.notification_count());
109 109
110 // Try send with NULL source. 110 // Try send with NULL source.
111 service->Notify(NotificationType::IDLE, 111 service->Notify(content::NOTIFICATION_IDLE,
112 NotificationService::AllSources(), 112 NotificationService::AllSources(),
113 NotificationService::NoDetails()); 113 NotificationService::NoDetails());
114 114
115 EXPECT_EQ(5, all_types_all_sources.notification_count()); 115 EXPECT_EQ(5, all_types_all_sources.notification_count());
116 EXPECT_EQ(3, idle_all_sources.notification_count()); 116 EXPECT_EQ(3, idle_all_sources.notification_count());
117 EXPECT_EQ(2, all_types_test_source.notification_count()); 117 EXPECT_EQ(2, all_types_test_source.notification_count());
118 EXPECT_EQ(1, idle_test_source.notification_count()); 118 EXPECT_EQ(1, idle_test_source.notification_count());
119 119
120 registrar_.RemoveAll(); 120 registrar_.RemoveAll();
121 121
122 service->Notify(NotificationType::IDLE, 122 service->Notify(content::NOTIFICATION_IDLE,
123 Source<TestSource>(&test_source), 123 Source<TestSource>(&test_source),
124 NotificationService::NoDetails()); 124 NotificationService::NoDetails());
125 125
126 EXPECT_EQ(5, all_types_all_sources.notification_count()); 126 EXPECT_EQ(5, all_types_all_sources.notification_count());
127 EXPECT_EQ(3, idle_all_sources.notification_count()); 127 EXPECT_EQ(3, idle_all_sources.notification_count());
128 EXPECT_EQ(2, all_types_test_source.notification_count()); 128 EXPECT_EQ(2, all_types_test_source.notification_count());
129 EXPECT_EQ(1, idle_test_source.notification_count()); 129 EXPECT_EQ(1, idle_test_source.notification_count());
130 } 130 }
131 131
132 TEST_F(NotificationServiceTest, MultipleRegistration) { 132 TEST_F(NotificationServiceTest, MultipleRegistration) {
133 TestSource test_source; 133 TestSource test_source;
134 134
135 TestObserver idle_test_source; 135 TestObserver idle_test_source;
136 136
137 NotificationService* service = NotificationService::current(); 137 NotificationService* service = NotificationService::current();
138 138
139 registrar_.Add(&idle_test_source, NotificationType::IDLE, 139 registrar_.Add(&idle_test_source, content::NOTIFICATION_IDLE,
140 Source<TestSource>(&test_source)); 140 Source<TestSource>(&test_source));
141 registrar_.Add(&idle_test_source, NotificationType::ALL, 141 registrar_.Add(&idle_test_source, content::NOTIFICATION_ALL,
142 Source<TestSource>(&test_source)); 142 Source<TestSource>(&test_source));
143 143
144 service->Notify(NotificationType::IDLE, 144 service->Notify(content::NOTIFICATION_IDLE,
145 Source<TestSource>(&test_source), 145 Source<TestSource>(&test_source),
146 NotificationService::NoDetails()); 146 NotificationService::NoDetails());
147 EXPECT_EQ(2, idle_test_source.notification_count()); 147 EXPECT_EQ(2, idle_test_source.notification_count());
148 148
149 registrar_.Remove(&idle_test_source, NotificationType::IDLE, 149 registrar_.Remove(&idle_test_source, content::NOTIFICATION_IDLE,
150 Source<TestSource>(&test_source)); 150 Source<TestSource>(&test_source));
151 151
152 service->Notify(NotificationType::IDLE, 152 service->Notify(content::NOTIFICATION_IDLE,
153 Source<TestSource>(&test_source), 153 Source<TestSource>(&test_source),
154 NotificationService::NoDetails()); 154 NotificationService::NoDetails());
155 EXPECT_EQ(3, idle_test_source.notification_count()); 155 EXPECT_EQ(3, idle_test_source.notification_count());
156 156
157 registrar_.Remove(&idle_test_source, NotificationType::ALL, 157 registrar_.Remove(&idle_test_source, content::NOTIFICATION_ALL,
158 Source<TestSource>(&test_source)); 158 Source<TestSource>(&test_source));
159 159
160 service->Notify(NotificationType::IDLE, 160 service->Notify(content::NOTIFICATION_IDLE,
161 Source<TestSource>(&test_source), 161 Source<TestSource>(&test_source),
162 NotificationService::NoDetails()); 162 NotificationService::NoDetails());
163 EXPECT_EQ(3, idle_test_source.notification_count()); 163 EXPECT_EQ(3, idle_test_source.notification_count());
164 } 164 }
OLDNEW
« no previous file with comments | « content/common/notification_service.cc ('k') | content/common/notification_type.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698