| Index: tools/telemetry/telemetry/browser_unittest.py
 | 
| diff --git a/tools/telemetry/telemetry/browser_unittest.py b/tools/telemetry/telemetry/browser_unittest.py
 | 
| index 0bbed70347561d2e994c64300701d781de6d4df1..70fe63bc1261408286f09f7d67c0c59e36ace4d8 100644
 | 
| --- a/tools/telemetry/telemetry/browser_unittest.py
 | 
| +++ b/tools/telemetry/telemetry/browser_unittest.py
 | 
| @@ -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 @@ class BrowserTest(unittest.TestCase):
 | 
|        t.WaitForDocumentReadyStateToBeInteractiveOrBetter()
 | 
|        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()
 | 
| +    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/' +
 | 
| +          '_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)
 | 
| 
 |