ProjectingObserverChromeos: Drop DBusThreadManager dependency for better testing.
[chromium-blink-merge.git] / components / enhanced_bookmarks / test_image_store.h
blob2666ea05d9b7776bacbb13e706111e6c524f9dc6
1 // Copyright 2014 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 COMPONENTS_ENHANCED_BOOKMARKS_TEST_IMAGE_STORE_H_
6 #define COMPONENTS_ENHANCED_BOOKMARKS_TEST_IMAGE_STORE_H_
8 #include "components/enhanced_bookmarks/image_store.h"
10 // The TestImageStore is an implementation of ImageStore that keeps all its
11 // data in memory. When deallocated all the associations are lost.
12 // Used in tests.
13 class TestImageStore : public ImageStore {
14 public:
15 TestImageStore();
16 virtual bool HasKey(const GURL& page_url) override;
17 virtual void Insert(const GURL& page_url,
18 const GURL& image_url,
19 const gfx::Image& image) override;
20 virtual void Erase(const GURL& page_url) override;
21 virtual std::pair<gfx::Image, GURL> Get(const GURL& page_url) override;
22 virtual gfx::Size GetSize(const GURL& page_url) override;
23 virtual void GetAllPageUrls(std::set<GURL>* urls) override;
24 virtual void ClearAll() override;
25 virtual int64 GetStoreSizeInBytes() override;
27 protected:
28 virtual ~TestImageStore();
30 private:
31 typedef std::map<const GURL, std::pair<gfx::Image, const GURL> > ImageMap;
32 ImageMap store_;
34 DISALLOW_COPY_AND_ASSIGN(TestImageStore);
37 #endif // COMPONENTS_ENHANCED_BOOKMARKS_TEST_IMAGE_STORE_H_