Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(308)

Side by Side Diff: chrome/browser/ui/webui/downloads_dom_handler_browsertest.cc

Issue 671653002: Standardize usage of virtual/override/final in chrome/browser/ui/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/auto_reset.h" 5 #include "base/auto_reset.h"
6 #include "base/files/scoped_temp_dir.h" 6 #include "base/files/scoped_temp_dir.h"
7 #include "base/json/json_reader.h" 7 #include "base/json/json_reader.h"
8 #include "base/prefs/pref_service.h" 8 #include "base/prefs/pref_service.h"
9 #include "base/values.h" 9 #include "base/values.h"
10 #include "chrome/browser/history/download_row.h" 10 #include "chrome/browser/history/download_row.h"
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 47
48 // A |DownloadsDOMHandler| that doesn't use a real WebUI object, but is real in 48 // A |DownloadsDOMHandler| that doesn't use a real WebUI object, but is real in
49 // all other respects. 49 // all other respects.
50 class MockDownloadsDOMHandler : public DownloadsDOMHandler { 50 class MockDownloadsDOMHandler : public DownloadsDOMHandler {
51 public: 51 public:
52 explicit MockDownloadsDOMHandler(content::DownloadManager* dlm) 52 explicit MockDownloadsDOMHandler(content::DownloadManager* dlm)
53 : DownloadsDOMHandler(dlm), 53 : DownloadsDOMHandler(dlm),
54 waiting_list_(false), 54 waiting_list_(false),
55 waiting_updated_(false) { 55 waiting_updated_(false) {
56 } 56 }
57 virtual ~MockDownloadsDOMHandler() {} 57 ~MockDownloadsDOMHandler() override {}
58 58
59 base::ListValue* downloads_list() { return downloads_list_.get(); } 59 base::ListValue* downloads_list() { return downloads_list_.get(); }
60 base::ListValue* download_updated() { return download_updated_.get(); } 60 base::ListValue* download_updated() { return download_updated_.get(); }
61 61
62 void WaitForDownloadsList() { 62 void WaitForDownloadsList() {
63 if (downloads_list_.get()) 63 if (downloads_list_.get())
64 return; 64 return;
65 base::AutoReset<bool> reset_waiting(&waiting_list_, true); 65 base::AutoReset<bool> reset_waiting(&waiting_list_, true);
66 content::RunMessageLoop(); 66 content::RunMessageLoop();
67 } 67 }
68 68
69 void WaitForDownloadUpdated() { 69 void WaitForDownloadUpdated() {
70 if (download_updated_.get()) 70 if (download_updated_.get())
71 return; 71 return;
72 base::AutoReset<bool> reset_waiting(&waiting_updated_, true); 72 base::AutoReset<bool> reset_waiting(&waiting_updated_, true);
73 content::RunMessageLoop(); 73 content::RunMessageLoop();
74 } 74 }
75 75
76 void ForceSendCurrentDownloads() { 76 void ForceSendCurrentDownloads() {
77 ScheduleSendCurrentDownloads(); 77 ScheduleSendCurrentDownloads();
78 } 78 }
79 79
80 void reset_downloads_list() { downloads_list_.reset(); } 80 void reset_downloads_list() { downloads_list_.reset(); }
81 void reset_download_updated() { download_updated_.reset(); } 81 void reset_download_updated() { download_updated_.reset(); }
82 82
83 protected: 83 protected:
84 virtual content::WebContents* GetWebUIWebContents() override { 84 content::WebContents* GetWebUIWebContents() override { return NULL; }
85 return NULL;
86 }
87 85
88 virtual void CallDownloadsList(const base::ListValue& downloads) override { 86 void CallDownloadsList(const base::ListValue& downloads) override {
89 downloads_list_.reset(downloads.DeepCopy()); 87 downloads_list_.reset(downloads.DeepCopy());
90 if (waiting_list_) { 88 if (waiting_list_) {
91 content::BrowserThread::PostTask(content::BrowserThread::UI, 89 content::BrowserThread::PostTask(content::BrowserThread::UI,
92 FROM_HERE, 90 FROM_HERE,
93 base::MessageLoop::QuitClosure()); 91 base::MessageLoop::QuitClosure());
94 } 92 }
95 } 93 }
96 94
97 virtual void CallDownloadUpdated(const base::ListValue& download) override { 95 void CallDownloadUpdated(const base::ListValue& download) override {
98 download_updated_.reset(download.DeepCopy()); 96 download_updated_.reset(download.DeepCopy());
99 if (waiting_updated_) { 97 if (waiting_updated_) {
100 content::BrowserThread::PostTask(content::BrowserThread::UI, 98 content::BrowserThread::PostTask(content::BrowserThread::UI,
101 FROM_HERE, 99 FROM_HERE,
102 base::MessageLoop::QuitClosure()); 100 base::MessageLoop::QuitClosure());
103 } 101 }
104 } 102 }
105 103
106 private: 104 private:
107 scoped_ptr<base::ListValue> downloads_list_; 105 scoped_ptr<base::ListValue> downloads_list_;
108 scoped_ptr<base::ListValue> download_updated_; 106 scoped_ptr<base::ListValue> download_updated_;
109 bool waiting_list_; 107 bool waiting_list_;
110 bool waiting_updated_; 108 bool waiting_updated_;
111 109
112 DISALLOW_COPY_AND_ASSIGN(MockDownloadsDOMHandler); 110 DISALLOW_COPY_AND_ASSIGN(MockDownloadsDOMHandler);
113 }; 111 };
114 112
115 } // namespace 113 } // namespace
116 114
117 class DownloadsDOMHandlerTest : public InProcessBrowserTest { 115 class DownloadsDOMHandlerTest : public InProcessBrowserTest {
118 public: 116 public:
119 DownloadsDOMHandlerTest() {} 117 DownloadsDOMHandlerTest() {}
120 118
121 virtual ~DownloadsDOMHandlerTest() {} 119 virtual ~DownloadsDOMHandlerTest() {}
122 120
123 virtual void SetUpOnMainThread() override { 121 void SetUpOnMainThread() override {
124 mock_handler_.reset(new MockDownloadsDOMHandler(download_manager())); 122 mock_handler_.reset(new MockDownloadsDOMHandler(download_manager()));
125 CHECK(downloads_directory_.CreateUniqueTempDir()); 123 CHECK(downloads_directory_.CreateUniqueTempDir());
126 browser()->profile()->GetPrefs()->SetFilePath( 124 browser()->profile()->GetPrefs()->SetFilePath(
127 prefs::kDownloadDefaultDirectory, 125 prefs::kDownloadDefaultDirectory,
128 downloads_directory_.path()); 126 downloads_directory_.path());
129 CHECK(test_server()->Start()); 127 CHECK(test_server()->Start());
130 } 128 }
131 129
132 content::DownloadManager* download_manager() { 130 content::DownloadManager* download_manager() {
133 return content::BrowserContext::GetDownloadManager(browser()->profile()); 131 return content::BrowserContext::GetDownloadManager(browser()->profile());
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
250 // TODO(benjhayden): Test incognito, both downloads_list() and that on-record 248 // TODO(benjhayden): Test incognito, both downloads_list() and that on-record
251 // calls can't access off-record items. 249 // calls can't access off-record items.
252 250
253 // TODO(benjhayden): Test that bad download ids incoming from the javascript are 251 // TODO(benjhayden): Test that bad download ids incoming from the javascript are
254 // dropped on the floor. 252 // dropped on the floor.
255 253
256 // TODO(benjhayden): Test that IsTemporary() downloads are not shown. 254 // TODO(benjhayden): Test that IsTemporary() downloads are not shown.
257 255
258 // TODO(benjhayden): Test that RemoveObserver is called on all download items, 256 // TODO(benjhayden): Test that RemoveObserver is called on all download items,
259 // including items that crossed IsTemporary() and back. 257 // including items that crossed IsTemporary() and back.
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698