15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/public/test/mock_download_manager.h" 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "content/browser/byte_stream.h" 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/browser/download/download_create_info.h" 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace content { 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)MockDownloadManager::CreateDownloadItemAdapter::CreateDownloadItemAdapter( 137dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch uint32 id, 142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::FilePath& current_path, 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::FilePath& target_path, 162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const std::vector<GURL>& url_chain, 172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const GURL& referrer_url, 182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::Time& start_time, 192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::Time& end_time, 20ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch const std::string& etag, 21ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch const std::string& last_modified, 222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int64 received_bytes, 232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int64 total_bytes, 242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadItem::DownloadState state, 252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadDangerType danger_type, 262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadInterruptReason interrupt_reason, 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) bool opened) 287dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch : id(id), 297dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch current_path(current_path), 302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) target_path(target_path), 312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) url_chain(url_chain), 322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) referrer_url(referrer_url), 332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) start_time(start_time), 342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) end_time(end_time), 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) received_bytes(received_bytes), 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) total_bytes(total_bytes), 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) state(state), 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) danger_type(danger_type), 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) interrupt_reason(interrupt_reason), 402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) opened(opened) {} 412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)MockDownloadManager::CreateDownloadItemAdapter::CreateDownloadItemAdapter( 432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const CreateDownloadItemAdapter& rhs) 447dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch : id(rhs.id), 457dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch current_path(rhs.current_path), 462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) target_path(rhs.target_path), 472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) url_chain(rhs.url_chain), 482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) referrer_url(rhs.referrer_url), 492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) start_time(rhs.start_time), 502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) end_time(rhs.end_time), 51ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch etag(rhs.etag), 52ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch last_modified(rhs.last_modified), 532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) received_bytes(rhs.received_bytes), 542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) total_bytes(rhs.total_bytes), 552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) state(rhs.state), 562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) danger_type(rhs.danger_type), 572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) interrupt_reason(rhs.interrupt_reason), 582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) opened(rhs.opened) {} 592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)MockDownloadManager::CreateDownloadItemAdapter::~CreateDownloadItemAdapter() {} 612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)bool MockDownloadManager::CreateDownloadItemAdapter::operator==( 632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const CreateDownloadItemAdapter& rhs) { 647dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch return (id == rhs.id && 657dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch current_path == rhs.current_path && 662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) target_path == rhs.target_path && 672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) url_chain == rhs.url_chain && 682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) referrer_url == rhs.referrer_url && 692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) start_time == rhs.start_time && 702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) end_time == rhs.end_time && 71ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch etag == rhs.etag && 72ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch last_modified == rhs.last_modified && 732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) received_bytes == rhs.received_bytes && 742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) total_bytes == rhs.total_bytes && 752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) state == rhs.state && 762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) danger_type == rhs.danger_type && 772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) interrupt_reason == rhs.interrupt_reason && 782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) opened == rhs.opened); 795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)MockDownloadManager::MockDownloadManager() {} 825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)MockDownloadManager::~MockDownloadManager() {} 845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 857dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdochvoid MockDownloadManager::StartDownload( 865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) scoped_ptr<DownloadCreateInfo> info, 877dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch scoped_ptr<ByteStreamReader> stream, 887dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch const DownloadUrlParameters::OnStartedCallback& callback) { 897dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch MockStartDownload(info.get(), stream.get()); 905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)DownloadItem* MockDownloadManager::CreateDownloadItem( 937dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch uint32 id, 942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::FilePath& current_path, 952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::FilePath& target_path, 962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const std::vector<GURL>& url_chain, 972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const GURL& referrer_url, 982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::Time& start_time, 992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::Time& end_time, 100ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch const std::string& etag, 101ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch const std::string& last_modified, 1022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int64 received_bytes, 1032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int64 total_bytes, 1042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadItem::DownloadState state, 1052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadDangerType danger_type, 1062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadInterruptReason interrupt_reason, 1072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) bool opened) { 1082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) CreateDownloadItemAdapter adapter( 1097dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch id, current_path, target_path, url_chain, referrer_url, start_time, 110ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch end_time, etag, last_modified, received_bytes, total_bytes, state, 111ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch danger_type, interrupt_reason, opened); 1122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return MockCreateDownloadItem(adapter); 1132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 1142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace content 116