Chromium Code Reviews| Index: tools/telemetry/telemetry/browser_unittest.py |
| =================================================================== |
| --- tools/telemetry/telemetry/browser_unittest.py (revision 176402) |
| +++ tools/telemetry/telemetry/browser_unittest.py (working copy) |
| @@ -1,9 +1,12 @@ |
| # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| +import os |
| import unittest |
| from telemetry import browser_finder |
| +from telemetry import browser_options |
| +from telemetry import extension_page |
| from telemetry import options_for_unittests |
| class BrowserTest(unittest.TestCase): |
| @@ -34,6 +37,37 @@ |
| t.WaitForDocumentReadyStateToBeInteractiveOrBetter() |
|
nduca
2013/01/15 05:31:06
missing tests for plain old extensions. you should
|
| self.assertEquals(t.runtime.Evaluate('navigator.userAgent'), 'telemetry') |
| + def testAutomationExtension(self): |
| + # This test starts the browser with --load-component-extension, which |
| + # should load automation provider extension used for remotely running |
| + # all other extension API calls. |
| + options = options_for_unittests.GetCopy() |
|
nduca
2013/01/15 05:31:06
automation extension means nothing in telemetry.
|
| + options.extensions_to_load = [ |
| + browser_options.ExtensionToLoad( |
| + os.path.join(os.path.dirname(__file__), |
| + '..', 'unittest_data', 'auto_provider'), |
| + True)] |
| + |
| + browser_to_create = browser_finder.FindBrowser(options) |
| + with browser_to_create.Create() as b: |
| + ext = b.extensions.FindByUrl( |
| + 'chrome-extension://aapnijgdinlhnhlmodcfapnahmbfebeb/' + |
|
nduca
2013/01/15 05:31:06
more hard coded extension ids. No good.
|
| + '_generated_background_page.html') |
| + self.assertIsNotNone(ext) |
| + create_properties = { 'url':'http://www.google.com' } |
| + (call_results, event_args) = ext.RunMethodWithEvents( |
| + [extension_page.ExtensionEvent('chrome.tabs.onCreated')], |
| + 'chrome.tabs.create', |
| + create_properties) |
| + self.assertEquals(call_results.keys().count('0'), 1) |
| + self.assertEquals(call_results["0"]['url'], 'http://www.google.com/') |
| + self.assertEquals(event_args.keys().count('chrome.tabs.onCreated'), 1) |
| + self.assertEquals(event_args['chrome.tabs.onCreated'].keys().count('0'), |
| + 1) |
| + self.assertEquals(event_args['chrome.tabs.onCreated']['0']['url'], |
| + 'http://www.google.com/') |
| + self.assertTrue(event_args['chrome.tabs.onCreated']['0']['selected']) |
| + |
| def testVersionDetection(self): |
| options = options_for_unittests.GetCopy() |
| browser_to_create = browser_finder.FindBrowser(options) |