1// Copyright 2013 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_TEST_TEST_USER_WALLPAPER_DELEGATE_H_
6#define ASH_TEST_TEST_USER_WALLPAPER_DELEGATE_H_
7
8#include "ash/default_user_wallpaper_delegate.h"
9
10#include "ui/gfx/image/image_skia.h"
11
12namespace ash {
13namespace test {
14
15class TestUserWallpaperDelegate : public DefaultUserWallpaperDelegate {
16 public:
17  TestUserWallpaperDelegate();
18  virtual ~TestUserWallpaperDelegate();
19
20  void set_custom_wallpaper(const gfx::ImageSkia& wallpaper) {
21    custom_wallpaper_ = wallpaper;
22  }
23
24  // DefaultUserWallpaperDelegate overrides:
25  virtual void UpdateWallpaper(bool clear_cache) OVERRIDE;
26
27  // Returns and clears |update_wallpaper_count_|.
28  int GetUpdateWallpaperCountAndReset();
29
30 private:
31  // Number of times that UpdateWallpaper() has been called.
32  int update_wallpaper_count_;
33
34  // If non-null, used as custom wallpaper by UpdateWallpaper().
35  gfx::ImageSkia custom_wallpaper_;
36
37  DISALLOW_COPY_AND_ASSIGN(TestUserWallpaperDelegate);
38};
39
40}  // namespace test
41}  // namespace ash
42
43#endif  // ASH_TEST_TEST_USER_WALLPAPER_DELEGATE_H_
44