mock_download_manager.cc revision 7dbb3d5cf0c15f500944d211057644d6a2f37371
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, 202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int64 received_bytes, 212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int64 total_bytes, 222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadItem::DownloadState state, 232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadDangerType danger_type, 242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadInterruptReason interrupt_reason, 252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) bool opened) 267dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch : id(id), 277dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch current_path(current_path), 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) target_path(target_path), 292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) url_chain(url_chain), 302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) referrer_url(referrer_url), 312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) start_time(start_time), 322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) end_time(end_time), 332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) received_bytes(received_bytes), 342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) total_bytes(total_bytes), 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) state(state), 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) danger_type(danger_type), 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) interrupt_reason(interrupt_reason), 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) opened(opened) {} 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)MockDownloadManager::CreateDownloadItemAdapter::CreateDownloadItemAdapter( 412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const CreateDownloadItemAdapter& rhs) 427dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch : id(rhs.id), 437dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch current_path(rhs.current_path), 442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) target_path(rhs.target_path), 452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) url_chain(rhs.url_chain), 462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) referrer_url(rhs.referrer_url), 472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) start_time(rhs.start_time), 482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) end_time(rhs.end_time), 492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) received_bytes(rhs.received_bytes), 502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) total_bytes(rhs.total_bytes), 512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) state(rhs.state), 522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) danger_type(rhs.danger_type), 532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) interrupt_reason(rhs.interrupt_reason), 542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) opened(rhs.opened) {} 552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)MockDownloadManager::CreateDownloadItemAdapter::~CreateDownloadItemAdapter() {} 572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)bool MockDownloadManager::CreateDownloadItemAdapter::operator==( 592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const CreateDownloadItemAdapter& rhs) { 607dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch return (id == rhs.id && 617dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch current_path == rhs.current_path && 622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) target_path == rhs.target_path && 632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) url_chain == rhs.url_chain && 642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) referrer_url == rhs.referrer_url && 652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) start_time == rhs.start_time && 662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) end_time == rhs.end_time && 672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) received_bytes == rhs.received_bytes && 682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) total_bytes == rhs.total_bytes && 692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) state == rhs.state && 702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) danger_type == rhs.danger_type && 712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) interrupt_reason == rhs.interrupt_reason && 722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) opened == rhs.opened); 735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)MockDownloadManager::MockDownloadManager() {} 765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)MockDownloadManager::~MockDownloadManager() {} 785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 797dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdochvoid MockDownloadManager::StartDownload( 805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) scoped_ptr<DownloadCreateInfo> info, 817dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch scoped_ptr<ByteStreamReader> stream, 827dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch const DownloadUrlParameters::OnStartedCallback& callback) { 837dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch MockStartDownload(info.get(), stream.get()); 845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)DownloadItem* MockDownloadManager::CreateDownloadItem( 877dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch uint32 id, 882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::FilePath& current_path, 892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::FilePath& target_path, 902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const std::vector<GURL>& url_chain, 912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const GURL& referrer_url, 922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::Time& start_time, 932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::Time& end_time, 942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int64 received_bytes, 952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int64 total_bytes, 962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadItem::DownloadState state, 972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadDangerType danger_type, 982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DownloadInterruptReason interrupt_reason, 992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) bool opened) { 1002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) CreateDownloadItemAdapter adapter( 1017dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch id, current_path, target_path, url_chain, referrer_url, start_time, 1022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) end_time, received_bytes, total_bytes, state, danger_type, 1032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) interrupt_reason, opened); 1042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return MockCreateDownloadItem(adapter); 1052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 1062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 1075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace content 108