Chromium Code Reviews| Index: chrome/test/functional/extensions.py |
| diff --git a/chrome/test/functional/extensions.py b/chrome/test/functional/extensions.py |
| index c949a71d5e3a266a8834852c2dede4cbd659b98d..64e444674f2ff3405eaa0f58021d74b7abc8431d 100644 |
| --- a/chrome/test/functional/extensions.py |
| +++ b/chrome/test/functional/extensions.py |
| @@ -182,6 +182,83 @@ class ExtensionsTest(pyauto.PyUITest): |
| extension = self._GetExtensionInfoById(self.GetExtensionsInfo(), ext_id) |
| self.assertFalse(extension['allowed_in_incognito']) |
| + def testTriggerBrowserAction(self): |
| + """Test triggering browser action.""" |
| + dir_path = os.path.abspath( |
| + os.path.join(self.DataDir(), 'extensions', 'trigger_actions', |
| + 'browser_action')) |
| + ext_id = self.InstallExtension(dir_path, False) |
| + self.assertTrue(ext_id, msg='Failed to install extension: %s.' % dir_path) |
| + |
| + self.NavigateToURL(self.GetFileURLForDataPath('simple.html')) |
| + |
| + self.TriggerBrowserActionById(ext_id) |
| + |
| + # Verify that the browser action turned the background red. |
| + self.assertTrue(self.WaitUntil( |
| + lambda: self.GetDOMValue('document.body.style.backgroundColor'), |
| + expect_retval='red'), |
| + msg='Browser action was not triggered.') |
| + |
| + def testTriggerBrowserActionWithPopup(self): |
| + """Test triggering browser action that shows a popup.""" |
| + dir_path = os.path.abspath( |
| + os.path.join(self.DataDir(), 'extensions', 'trigger_actions', |
| + 'browser_action_popup')) |
| + ext_id = self.InstallExtension(dir_path, False) |
| + self.assertTrue(ext_id, msg='Failed to install extension: %s.' % dir_path) |
| + |
| + self.TriggerBrowserActionById(ext_id) |
| + |
| + # Verify that the extension popup is displayed. |
| + popup = self.WaitUntilExtensionViewLoaded( |
| + view_type='EXTENSION_POPUP') |
| + self.assertTrue(popup, |
| + msg='Browser action failed to display the popup (views=%s).' % |
| + self.GetBrowserInfo()['extension_views']) |
| + |
| + def testTriggerPageAction(self): |
| + """Test triggering page action.""" |
| + dir_path = os.path.abspath( |
| + os.path.join(self.DataDir(), 'extensions', 'trigger_actions', |
| + 'page_action')) |
| + ext_id = self.InstallExtension(dir_path, False) |
| + self.assertTrue(ext_id, msg='Failed to install extension: %s.' % dir_path) |
| + |
| + # Page action icon is displayed when a tab is created. |
|
kkania
2011/11/21 18:53:58
I think we need another function for GetVisiblePag
frankf
2011/11/22 22:26:10
I've added this to GetBrowserInfo, same thing shou
|
| + self.NavigateToURL(self.GetFileURLForDataPath('simple.html')) |
| + self.AppendTab(pyauto.GURL('chrome://newtab')) |
| + self.ActivateTab(0) |
| + |
| + self.TriggerPageActionById(ext_id) |
| + |
| + # Verify that page action turned the background red. |
| + self.assertTrue(self.WaitUntil( |
| + lambda: self.GetDOMValue('document.body.style.backgroundColor'), |
| + expect_retval='red'), |
| + msg='Page action was not triggered.') |
| + |
| + def testTriggerPageActionWithPopup(self): |
| + """Test triggering page action that shows a popup.""" |
| + dir_path = os.path.abspath( |
| + os.path.join(self.DataDir(), 'extensions', 'trigger_actions', |
| + 'page_action_popup')) |
| + ext_id = self.InstallExtension(dir_path, False) |
| + self.assertTrue(ext_id, msg='Failed to install extension: %s.' % dir_path) |
| + |
| + # Page action icon is displayed when a tab is created. |
| + self.AppendTab(pyauto.GURL('chrome://newtab')) |
| + self.ActivateTab(0) |
| + |
| + self.TriggerPageActionById(ext_id) |
| + |
| + # Verify that the extension popup is displayed. |
| + popup = self.WaitUntilExtensionViewLoaded( |
| + view_type='EXTENSION_POPUP') |
| + self.assertTrue(popup, |
| + msg='Page action failed to display the popup (views=%s).' % |
| + self.GetBrowserInfo()['extension_views']) |
| + |
| def testAdblockExtensionCrash(self): |
| """Test AdBlock extension successfully installed and enabled, and do not |
| cause browser crash. |