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

Side by Side Diff: chrome/browser/extensions/extension_apitest.cc

Issue 9969087: Switch platform apps from a declarative launch container to handling an onLaunched event. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Mike's review feedback Created 8 years, 8 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 | Annotate | Revision Log
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 "chrome/browser/extensions/extension_apitest.h" 5 #include "chrome/browser/extensions/extension_apitest.h"
6 6
7 #include "base/string_util.h" 7 #include "base/string_util.h"
8 #include "base/stringprintf.h" 8 #include "base/stringprintf.h"
9 #include "chrome/browser/extensions/extension_service.h" 9 #include "chrome/browser/extensions/extension_service.h"
10 #include "chrome/browser/extensions/extension_test_api.h" 10 #include "chrome/browser/extensions/extension_test_api.h"
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
144 DCHECK(!page_url.empty()) << "Argument page_url is required."; 144 DCHECK(!page_url.empty()) << "Argument page_url is required.";
145 return RunExtensionTestImpl(extension_name, page_url, flags); 145 return RunExtensionTestImpl(extension_name, page_url, flags);
146 } 146 }
147 147
148 148
149 bool ExtensionApiTest::RunPageTest(const std::string& page_url) { 149 bool ExtensionApiTest::RunPageTest(const std::string& page_url) {
150 return RunExtensionSubtest("", page_url); 150 return RunExtensionSubtest("", page_url);
151 } 151 }
152 152
153 bool ExtensionApiTest::RunPlatformAppTest(const char* extension_name) { 153 bool ExtensionApiTest::RunPlatformAppTest(const char* extension_name) {
154 return RunExtensionTestImpl(extension_name, "", kFlagLaunchAppShell); 154 return RunExtensionTestImpl(extension_name, "", kFlagLaunchPlatformApp);
155 } 155 }
156 156
157 // Load |extension_name| extension and/or |page_url| and wait for 157 // Load |extension_name| extension and/or |page_url| and wait for
158 // PASSED or FAILED notification. 158 // PASSED or FAILED notification.
159 bool ExtensionApiTest::RunExtensionTestImpl(const char* extension_name, 159 bool ExtensionApiTest::RunExtensionTestImpl(const char* extension_name,
160 const std::string& page_url, 160 const std::string& page_url,
161 int flags) { 161 int flags) {
162 bool enable_incognito = (flags & kFlagEnableIncognito) != 0; 162 bool enable_incognito = (flags & kFlagEnableIncognito) != 0;
163 bool enable_fileaccess = (flags & kFlagEnableFileAccess) != 0; 163 bool enable_fileaccess = (flags & kFlagEnableFileAccess) != 0;
164 bool load_as_component = (flags & kFlagLoadAsComponent) != 0; 164 bool load_as_component = (flags & kFlagLoadAsComponent) != 0;
165 bool launch_shell = (flags & kFlagLaunchAppShell) != 0; 165 bool launch_platform_app = (flags & kFlagLaunchPlatformApp) != 0;
166 bool use_incognito = (flags & kFlagUseIncognito) != 0; 166 bool use_incognito = (flags & kFlagUseIncognito) != 0;
167 167
168 ResultCatcher catcher; 168 ResultCatcher catcher;
169 DCHECK(!std::string(extension_name).empty() || !page_url.empty()) << 169 DCHECK(!std::string(extension_name).empty() || !page_url.empty()) <<
170 "extension_name and page_url cannot both be empty"; 170 "extension_name and page_url cannot both be empty";
171 171
172 const Extension* extension = NULL; 172 const Extension* extension = NULL;
173 if (!std::string(extension_name).empty()) { 173 if (!std::string(extension_name).empty()) {
174 FilePath extension_path = test_data_dir_.AppendASCII(extension_name); 174 FilePath extension_path = test_data_dir_.AppendASCII(extension_name);
175 if (load_as_component) { 175 if (load_as_component) {
(...skipping 20 matching lines...) Expand all
196 "Relative page_url given with no extension_name"; 196 "Relative page_url given with no extension_name";
197 197
198 url = extension->GetResourceURL(page_url); 198 url = extension->GetResourceURL(page_url);
199 } 199 }
200 200
201 if (use_incognito) 201 if (use_incognito)
202 ui_test_utils::OpenURLOffTheRecord(browser()->profile(), url); 202 ui_test_utils::OpenURLOffTheRecord(browser()->profile(), url);
203 else 203 else
204 ui_test_utils::NavigateToURL(browser(), url); 204 ui_test_utils::NavigateToURL(browser(), url);
205 205
206 } else if (launch_shell) { 206 } else if (launch_platform_app) {
207 Browser::OpenApplication( 207 Browser::OpenApplication(
208 browser()->profile(), 208 browser()->profile(),
209 extension, 209 extension,
210 extension_misc::LAUNCH_SHELL, 210 extension_misc::LAUNCH_NONE,
211 GURL(), 211 GURL(),
212 NEW_WINDOW); 212 NEW_WINDOW);
213 } 213 }
214 214
215 if (!catcher.GetNextResult()) { 215 if (!catcher.GetNextResult()) {
216 message_ = catcher.message(); 216 message_ = catcher.message();
217 return false; 217 return false;
218 } else { 218 } else {
219 return true; 219 return true;
220 } 220 }
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 ExtensionApiTest::SetUpCommandLine(command_line); 286 ExtensionApiTest::SetUpCommandLine(command_line);
287 287
288 // If someone is using this class, we're going to insist on management of the 288 // If someone is using this class, we're going to insist on management of the
289 // relevant flags. If these flags are already set, die. 289 // relevant flags. If these flags are already set, die.
290 DCHECK(!command_line->HasSwitch(switches::kEnablePlatformApps)); 290 DCHECK(!command_line->HasSwitch(switches::kEnablePlatformApps));
291 DCHECK(!command_line->HasSwitch(switches::kEnableExperimentalExtensionApis)); 291 DCHECK(!command_line->HasSwitch(switches::kEnableExperimentalExtensionApis));
292 292
293 command_line->AppendSwitch(switches::kEnableExperimentalExtensionApis); 293 command_line->AppendSwitch(switches::kEnableExperimentalExtensionApis);
294 command_line->AppendSwitch(switches::kEnablePlatformApps); 294 command_line->AppendSwitch(switches::kEnablePlatformApps);
295 } 295 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_apitest.h ('k') | chrome/browser/extensions/extension_function_registry.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698