1 // Copyright 2019 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 #ifndef ASH_SYSTEM_MESSAGE_CENTER_TEST_NOTIFIER_SETTINGS_CONTROLLER_H_ 6 #define ASH_SYSTEM_MESSAGE_CENTER_TEST_NOTIFIER_SETTINGS_CONTROLLER_H_ 7 8 #include "ash/public/cpp/notifier_settings_controller.h" 9 #include "base/macros.h" 10 #include "base/observer_list.h" 11 12 namespace ash { 13 14 class TestNotifierSettingsController : public NotifierSettingsController { 15 public: 16 TestNotifierSettingsController(); 17 ~TestNotifierSettingsController() override; 18 set_no_notifiers(bool no_notifiers)19 void set_no_notifiers(bool no_notifiers) { no_notifiers_ = no_notifiers; } 20 21 // NotifierSettingsController: 22 void GetNotifiers() override; 23 void SetNotifierEnabled(const message_center::NotifierId& notifier_id, 24 bool enabled) override; 25 void AddNotifierSettingsObserver(NotifierSettingsObserver* observer) override; 26 void RemoveNotifierSettingsObserver( 27 NotifierSettingsObserver* observer) override; 28 29 private: 30 bool no_notifiers_ = false; 31 32 base::ObserverList<NotifierSettingsObserver> observers_; 33 34 DISALLOW_COPY_AND_ASSIGN(TestNotifierSettingsController); 35 }; 36 37 } // namespace ash 38 39 #endif // ASH_SYSTEM_MESSAGE_CENTER_TEST_NOTIFIER_SETTINGS_CONTROLLER_H_ 40