146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// found in the LICENSE file. 446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "components/history/core/test/history_client_fake_bookmarks.h" 646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)namespace history { 846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)HistoryClientFakeBookmarks::HistoryClientFakeBookmarks() { 1046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 1146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 1246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)HistoryClientFakeBookmarks::~HistoryClientFakeBookmarks() { 1346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 1446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 1546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void HistoryClientFakeBookmarks::ClearAllBookmarks() { 1646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) bookmarks_.clear(); 1746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 1846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 1946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void HistoryClientFakeBookmarks::AddBookmark(const GURL& url) { 2046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) AddBookmarkWithTitle(url, base::string16()); 2146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 2246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 2346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void HistoryClientFakeBookmarks::AddBookmarkWithTitle( 2446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) const GURL& url, 2546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) const base::string16& title) { 2646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) bookmarks_.insert(std::make_pair(url, title)); 2746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 2846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 2946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void HistoryClientFakeBookmarks::DelBookmark(const GURL& url) { 3046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) bookmarks_.erase(url); 3146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 3246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 3346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)bool HistoryClientFakeBookmarks::IsBookmarked(const GURL& url) { 3446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) return bookmarks_.find(url) != bookmarks_.end(); 3546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 3646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 3746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void HistoryClientFakeBookmarks::GetBookmarks( 3846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) std::vector<URLAndTitle>* bookmarks) { 3946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) bookmarks->reserve(bookmarks->size() + bookmarks_.size()); 4046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) typedef std::map<GURL, base::string16>::const_iterator iterator; 4146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) for (iterator i = bookmarks_.begin(); i != bookmarks_.end(); ++i) { 4246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) URLAndTitle urlAndTitle = {i->first, i->second}; 4346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) bookmarks->push_back(urlAndTitle); 4446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) } 4546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 4646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 4746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} // namespace history 48