OLD | NEW |
---|---|
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 import os | |
4 import unittest | 5 import unittest |
5 | 6 |
6 from telemetry import browser_finder | 7 from telemetry import browser_finder |
8 from telemetry import browser_options | |
7 from telemetry import options_for_unittests | 9 from telemetry import options_for_unittests |
8 | 10 |
9 class BrowserTest(unittest.TestCase): | 11 class BrowserTest(unittest.TestCase): |
10 def testBrowserCreation(self): | 12 def testBrowserCreation(self): |
11 options = options_for_unittests.GetCopy() | 13 options = options_for_unittests.GetCopy() |
12 browser_to_create = browser_finder.FindBrowser(options) | 14 browser_to_create = browser_finder.FindBrowser(options) |
13 if not browser_to_create: | 15 if not browser_to_create: |
14 raise Exception('No browser found, cannot continue test.') | 16 raise Exception('No browser found, cannot continue test.') |
15 with browser_to_create.Create() as b: | 17 with browser_to_create.Create() as b: |
16 self.assertEquals(1, b.num_tabs) | 18 self.assertEquals(1, b.num_tabs) |
(...skipping 11 matching lines...) Expand all Loading... | |
28 options.extra_browser_args.append(flag1) | 30 options.extra_browser_args.append(flag1) |
29 | 31 |
30 browser_to_create = browser_finder.FindBrowser(options) | 32 browser_to_create = browser_finder.FindBrowser(options) |
31 with browser_to_create.Create() as b: | 33 with browser_to_create.Create() as b: |
32 with b.ConnectToNthTab(0) as t: | 34 with b.ConnectToNthTab(0) as t: |
33 t.page.Navigate('http://www.google.com/') | 35 t.page.Navigate('http://www.google.com/') |
34 t.WaitForDocumentReadyStateToBeInteractiveOrBetter() | 36 t.WaitForDocumentReadyStateToBeInteractiveOrBetter() |
35 self.assertEquals(t.runtime.Evaluate('navigator.userAgent'), | 37 self.assertEquals(t.runtime.Evaluate('navigator.userAgent'), |
36 'telemetry') | 38 'telemetry') |
37 | 39 |
40 def testAutomationExtension(self): | |
41 # This test starts the browser with --load-component-extension, which | |
42 # should load automation provider extension used for remotely running | |
43 # all other extension API calls. | |
44 options = options_for_unittests.GetCopy() | |
45 options.extensions_to_load = [ | |
46 browser_options.ExtensionToLoad( | |
nduca
2012/12/07 19:23:47
you have to have the extension that this reference
zel
2012/12/12 21:03:42
Done.
| |
47 os.path.join(os.path.dirname(__file__), | |
48 '..', '..', 'telemetry_auto', 'data', 'auto_provider'), | |
49 True)] | |
50 | |
51 browser_to_create = browser_finder.FindBrowser(options) | |
52 with browser_to_create.Create() as b: | |
53 with b.ConnectToExtensionPage("aapnijgdinlhnhlmodcfapnahmbfebeb") as ext: | |
54 create_properties = { 'url':'http://www.google.com' } | |
55 (call_results, event_args) = ext.RunMethodWithEvents( | |
56 ['chrome.tabs.onCreated'], 'chrome.tabs.create', create_properties) | |
57 self.assertEquals(call_results.keys().count('0'), 1) | |
58 self.assertEquals(call_results["0"]['url'], 'http://www.google.com/') | |
59 self.assertEquals(event_args.keys().count('chrome.tabs.onCreated'), 1) | |
60 self.assertEquals(event_args['chrome.tabs.onCreated'].keys().count('0'), | |
61 1) | |
62 self.assertEquals(event_args['chrome.tabs.onCreated']['0']['url'], | |
63 'http://www.google.com/') | |
64 self.assertTrue(event_args['chrome.tabs.onCreated']['0']['selected']) | |
65 | |
38 def testVersionDetection(self): | 66 def testVersionDetection(self): |
39 options = options_for_unittests.GetCopy() | 67 options = options_for_unittests.GetCopy() |
40 browser_to_create = browser_finder.FindBrowser(options) | 68 browser_to_create = browser_finder.FindBrowser(options) |
41 with browser_to_create.Create() as b: | 69 with browser_to_create.Create() as b: |
42 # pylint: disable=W0212 | 70 # pylint: disable=W0212 |
43 self.assertGreater(b._backend._inspector_protocol_version, 0) | 71 self.assertGreater(b._backend._inspector_protocol_version, 0) |
44 self.assertGreater(b._backend._chrome_branch_number, 0) | 72 self.assertGreater(b._backend._chrome_branch_number, 0) |
45 self.assertGreater(b._backend._webkit_base_revision, 0) | 73 self.assertGreater(b._backend._webkit_base_revision, 0) |
46 | 74 |
47 def testNewCloseTab(self): | 75 def testNewCloseTab(self): |
48 options = options_for_unittests.GetCopy() | 76 options = options_for_unittests.GetCopy() |
49 browser_to_create = browser_finder.FindBrowser(options) | 77 browser_to_create = browser_finder.FindBrowser(options) |
50 with browser_to_create.Create() as b: | 78 with browser_to_create.Create() as b: |
51 self.assertEquals(1, b.num_tabs) | 79 self.assertEquals(1, b.num_tabs) |
52 existing_tab_url = b.GetNthTabUrl(0) | 80 existing_tab_url = b.GetNthTabUrl(0) |
53 b.NewTab() | 81 b.NewTab() |
54 self.assertEquals(2, b.num_tabs) | 82 self.assertEquals(2, b.num_tabs) |
55 self.assertEquals(b.GetNthTabUrl(0), existing_tab_url) | 83 self.assertEquals(b.GetNthTabUrl(0), existing_tab_url) |
56 self.assertEquals(b.GetNthTabUrl(1), 'about:blank') | 84 self.assertEquals(b.GetNthTabUrl(1), 'about:blank') |
57 b.CloseTab(1) | 85 b.CloseTab(1) |
58 self.assertEquals(1, b.num_tabs) | 86 self.assertEquals(1, b.num_tabs) |
59 self.assertEquals(b.GetNthTabUrl(0), existing_tab_url) | 87 self.assertEquals(b.GetNthTabUrl(0), existing_tab_url) |
60 self.assertRaises(AssertionError, b.CloseTab, 0) | 88 self.assertRaises(AssertionError, b.CloseTab, 0) |
OLD | NEW |