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

Side by Side Diff: chrome/browser/notifications/notification_test_util.h

Issue 687183004: Remove the OnError method from notification delegates. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_TEST_UTIL_H_ 5 #ifndef CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_TEST_UTIL_H_
6 #define CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_TEST_UTIL_H_ 6 #define CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_TEST_UTIL_H_
7 7
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 10
11 #include "chrome/browser/notifications/notification.h" 11 #include "chrome/browser/notifications/notification.h"
12 #include "chrome/browser/notifications/notification_object_proxy.h" 12 #include "chrome/browser/notifications/notification_object_proxy.h"
13 #include "chrome/browser/notifications/notification_ui_manager.h" 13 #include "chrome/browser/notifications/notification_ui_manager.h"
14 #include "chrome/browser/notifications/sync_notifier/chrome_notifier_service.h" 14 #include "chrome/browser/notifications/sync_notifier/chrome_notifier_service.h"
15 #include "chrome/browser/profiles/profile.h" 15 #include "chrome/browser/profiles/profile.h"
16 #include "ui/gfx/size.h" 16 #include "ui/gfx/size.h"
17 17
18 // NotificationDelegate which does nothing, useful for testing when 18 // NotificationDelegate which does nothing, useful for testing when
19 // the notification events are not important. 19 // the notification events are not important.
20 class MockNotificationDelegate : public NotificationDelegate { 20 class MockNotificationDelegate : public NotificationDelegate {
21 public: 21 public:
22 explicit MockNotificationDelegate(const std::string& id); 22 explicit MockNotificationDelegate(const std::string& id);
23 23
24 // NotificationDelegate interface. 24 // NotificationDelegate interface.
25 void Display() override {} 25 void Display() override {}
26 void Error() override {}
27 void Close(bool by_user) override {} 26 void Close(bool by_user) override {}
28 void Click() override {} 27 void Click() override {}
29 std::string id() const override; 28 std::string id() const override;
30 29
31 private: 30 private:
32 ~MockNotificationDelegate() override; 31 ~MockNotificationDelegate() override;
33 32
34 std::string id_; 33 std::string id_;
35 34
36 DISALLOW_COPY_AND_ASSIGN(MockNotificationDelegate); 35 DISALLOW_COPY_AND_ASSIGN(MockNotificationDelegate);
37 }; 36 };
38 37
39 // Mock implementation of Javascript object proxy which logs events that 38 // Mock implementation of Javascript object proxy which logs events that
40 // would have been fired on it. Useful for tests where the sequence of 39 // would have been fired on it. Useful for tests where the sequence of
41 // notification events needs to be verified. 40 // notification events needs to be verified.
42 // 41 //
43 // |Logger| class provided in template must implement method 42 // |Logger| class provided in template must implement method
44 // static void log(string); 43 // static void log(string);
45 template<class Logger> 44 template<class Logger>
46 class LoggingNotificationDelegate : public NotificationDelegate { 45 class LoggingNotificationDelegate : public NotificationDelegate {
47 public: 46 public:
48 explicit LoggingNotificationDelegate(std::string id) : notification_id_(id) {} 47 explicit LoggingNotificationDelegate(std::string id) : notification_id_(id) {}
49 48
50 // NotificationObjectProxy override 49 // NotificationObjectProxy override
51 virtual void Display() override { 50 virtual void Display() override {
52 Logger::log("notification displayed\n"); 51 Logger::log("notification displayed\n");
53 } 52 }
54 virtual void Error() override {
55 Logger::log("notification error\n");
56 }
57 virtual void Click() override { 53 virtual void Click() override {
58 Logger::log("notification clicked\n"); 54 Logger::log("notification clicked\n");
59 } 55 }
60 virtual void ButtonClick(int index) override { 56 virtual void ButtonClick(int index) override {
61 Logger::log("notification button clicked\n"); 57 Logger::log("notification button clicked\n");
62 } 58 }
63 virtual void Close(bool by_user) override { 59 virtual void Close(bool by_user) override {
64 if (by_user) 60 if (by_user)
65 Logger::log("notification closed by user\n"); 61 Logger::log("notification closed by user\n");
66 else 62 else
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 DISALLOW_COPY_AND_ASSIGN(StubNotificationUIManager); 121 DISALLOW_COPY_AND_ASSIGN(StubNotificationUIManager);
126 Notification notification_; 122 Notification notification_;
127 Profile* profile_; 123 Profile* profile_;
128 std::string dismissed_id_; 124 std::string dismissed_id_;
129 GURL welcome_origin_; 125 GURL welcome_origin_;
130 bool welcomed_; 126 bool welcomed_;
131 size_t added_notifications_; 127 size_t added_notifications_;
132 }; 128 };
133 129
134 #endif // CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_TEST_UTIL_H_ 130 #endif // CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_TEST_UTIL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698