diff options
author | jcampan@google.com <jcampan@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-08-04 19:59:31 +0000 |
---|---|---|
committer | jcampan@google.com <jcampan@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-08-04 19:59:31 +0000 |
commit | 856ac4b39c729d184511244ebe0349e99e89879e (patch) | |
tree | 20122d9151d1971918333ba8eb2df0c5eca4f139 /chrome/browser | |
parent | b33452302702b3915e1110dae72fc8a746b3358c (diff) | |
download | chromium_src-856ac4b39c729d184511244ebe0349e99e89879e.zip chromium_src-856ac4b39c729d184511244ebe0349e99e89879e.tar.gz chromium_src-856ac4b39c729d184511244ebe0349e99e89879e.tar.bz2 |
Added testing of Chromium dialogs to the automated ui tests.
The new dialog command fires up a dialog (chosen randomly) and exercises it.
BUG=None
TEST=Run the automated_ui_test
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@333 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser')
-rw-r--r-- | chrome/browser/automation/automation_provider.cc | 19 | ||||
-rw-r--r-- | chrome/browser/automation/automation_provider.h | 3 |
2 files changed, 22 insertions, 0 deletions
diff --git a/chrome/browser/automation/automation_provider.cc b/chrome/browser/automation/automation_provider.cc index 2cd8377..5636302 100644 --- a/chrome/browser/automation/automation_provider.cc +++ b/chrome/browser/automation/automation_provider.cc @@ -698,6 +698,8 @@ void AutomationProvider::OnMessageReceived(const IPC::Message& message) { IPC_MESSAGE_HANDLER(AutomationMsg_IsWindowActiveRequest, IsWindowActive) IPC_MESSAGE_HANDLER(AutomationMsg_ActivateWindow, ActivateWindow); IPC_MESSAGE_HANDLER(AutomationMsg_WindowHWNDRequest, GetWindowHWND) + IPC_MESSAGE_HANDLER(AutomationMsg_WindowExecuteCommandRequest, + ExecuteBrowserCommand) IPC_MESSAGE_HANDLER(AutomationMsg_WindowViewBoundsRequest, WindowGetViewBounds) IPC_MESSAGE_HANDLER(AutomationMsg_SetWindowVisibleRequest, SetWindowVisible) @@ -1091,6 +1093,23 @@ void AutomationProvider::GetWindowHWND(const IPC::Message& message, win32_handle)); } +void AutomationProvider::ExecuteBrowserCommand(const IPC::Message& message, + int handle, + int command) { + + bool success = false; + if (browser_tracker_->ContainsHandle(handle)) { + Browser* browser = browser_tracker_->GetResource(handle); + if (browser->SupportsCommand(command) && + browser->IsCommandEnabled(command)) { + browser->ExecuteCommand(command); + success = true; + } + } + Send(new AutomationMsg_WindowExecuteCommandResponse(message.routing_id(), + success)); +} + void AutomationProvider::WindowGetViewBounds(const IPC::Message& message, int handle, int view_id, diff --git a/chrome/browser/automation/automation_provider.h b/chrome/browser/automation/automation_provider.h index 249bc7e..85171d3 100644 --- a/chrome/browser/automation/automation_provider.h +++ b/chrome/browser/automation/automation_provider.h @@ -134,6 +134,9 @@ class AutomationProvider : public base::RefCounted<AutomationProvider>, void GetLastActiveBrowserWindow(const IPC::Message& message); void GetActiveWindow(const IPC::Message& message); void GetWindowHWND(const IPC::Message& message, int handle); + void ExecuteBrowserCommand(const IPC::Message& message, + int handle, + int command); void WindowGetViewBounds(const IPC::Message& message, int handle, int view_id, |