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
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_CHROMEOS_KIOSK_MODE_MOCK_KIOSK_MODE_SETTINGS_H_
6 #define CHROME_BROWSER_CHROMEOS_KIOSK_MODE_MOCK_KIOSK_MODE_SETTINGS_H_
8 #include "chrome/browser/chromeos/kiosk_mode/kiosk_mode_settings.h"
12 #include "base/basictypes.h"
13 #include "base/callback_forward.h"
14 #include "base/compiler_specific.h"
15 #include "base/time/time.h"
18 template <typename T> struct DefaultLazyInstanceTraits;
23 const int kMockIdleLogoutTimeoutMs = 50000;
24 const int kMockIdleLogoutWarningDurationMs = 1000;
30 class MockKioskModeSettings : public KioskModeSettings {
32 // We should be able to instantiate mock instances, unlike the main kiosk
33 // mode settings class, which should always have only one global instance.
34 MockKioskModeSettings();
35 virtual ~MockKioskModeSettings();
37 virtual bool IsKioskModeEnabled() override;
39 // Initialize the mock class.
40 virtual void Initialize(const base::Closure& notify_initialized) override;
41 virtual bool is_initialized() const override;
43 // The time to logout the user in on idle.
44 virtual base::TimeDelta GetIdleLogoutTimeout() const override;
46 // The time to show the countdown timer for.
47 virtual base::TimeDelta GetIdleLogoutWarningDuration() const override;
50 friend struct base::DefaultLazyInstanceTraits<MockKioskModeSettings>;
54 DISALLOW_COPY_AND_ASSIGN(MockKioskModeSettings);
57 } // namespace chromeos
59 #endif // CHROME_BROWSER_CHROMEOS_KIOSK_MODE_MOCK_KIOSK_MODE_SETTINGS_H_