Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(194)

Unified Diff: tools/telemetry/telemetry/internal/browser/browser_unittest.py

Issue 1647513002: Delete tools/telemetry. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tools/telemetry/telemetry/internal/browser/browser_unittest.py
diff --git a/tools/telemetry/telemetry/internal/browser/browser_unittest.py b/tools/telemetry/telemetry/internal/browser/browser_unittest.py
deleted file mode 100644
index 2f744f0e4e8b393322e1de3d19092a60d58200f1..0000000000000000000000000000000000000000
--- a/tools/telemetry/telemetry/internal/browser/browser_unittest.py
+++ /dev/null
@@ -1,258 +0,0 @@
-# Copyright 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 logging
-import os
-import shutil
-import tempfile
-import unittest
-
-from telemetry.core import util
-from telemetry import decorators
-from telemetry.internal.browser import browser as browser_module
-from telemetry.internal.browser import browser_finder
-from telemetry.internal.platform import gpu_device
-from telemetry.internal.platform import gpu_info
-from telemetry.internal.platform import system_info
-from telemetry.internal.util import path
-from telemetry.testing import browser_test_case
-from telemetry.testing import options_for_unittests
-from telemetry.timeline import tracing_config
-
-import mock
-
-
-class IntentionalException(Exception):
- pass
-
-
-class BrowserTest(browser_test_case.BrowserTestCase):
- def testBrowserCreation(self):
- self.assertEquals(1, len(self._browser.tabs))
-
- # Different browsers boot up to different things.
- assert self._browser.tabs[0].url
-
- @decorators.Enabled('has tabs')
- def testNewCloseTab(self):
- existing_tab = self._browser.tabs[0]
- self.assertEquals(1, len(self._browser.tabs))
- existing_tab_url = existing_tab.url
-
- new_tab = self._browser.tabs.New()
- self.assertEquals(2, len(self._browser.tabs))
- self.assertEquals(existing_tab.url, existing_tab_url)
- self.assertEquals(new_tab.url, 'about:blank')
-
- new_tab.Close()
- self.assertEquals(1, len(self._browser.tabs))
- self.assertEquals(existing_tab.url, existing_tab_url)
-
- def testMultipleTabCalls(self):
- self._browser.tabs[0].Navigate(self.UrlOfUnittestFile('blank.html'))
- self._browser.tabs[0].WaitForDocumentReadyStateToBeInteractiveOrBetter()
-
- def testTabCallByReference(self):
- tab = self._browser.tabs[0]
- tab.Navigate(self.UrlOfUnittestFile('blank.html'))
- self._browser.tabs[0].WaitForDocumentReadyStateToBeInteractiveOrBetter()
-
- @decorators.Enabled('has tabs')
- @decorators.Disabled('win') # crbug.com/321527
- def testCloseReferencedTab(self):
- self._browser.tabs.New()
- tab = self._browser.tabs[0]
- tab.Navigate(self.UrlOfUnittestFile('blank.html'))
- tab.Close()
- self.assertEquals(1, len(self._browser.tabs))
-
- @decorators.Enabled('has tabs')
- def testForegroundTab(self):
- # Should be only one tab at this stage, so that must be the foreground tab
- original_tab = self._browser.tabs[0]
- self.assertEqual(self._browser.foreground_tab, original_tab)
- new_tab = self._browser.tabs.New()
- # New tab shouls be foreground tab
- self.assertEqual(self._browser.foreground_tab, new_tab)
- # Make sure that activating the background tab makes it the foreground tab
- original_tab.Activate()
- self.assertEqual(self._browser.foreground_tab, original_tab)
- # Closing the current foreground tab should switch the foreground tab to the
- # other tab
- original_tab.Close()
- self.assertEqual(self._browser.foreground_tab, new_tab)
-
- def testGetSystemInfo(self):
- if not self._browser.supports_system_info:
- logging.warning(
- 'Browser does not support getting system info, skipping test.')
- return
-
- info = self._browser.GetSystemInfo()
-
- self.assertTrue(isinstance(info, system_info.SystemInfo))
- self.assertTrue(hasattr(info, 'model_name'))
- self.assertTrue(hasattr(info, 'gpu'))
- self.assertTrue(isinstance(info.gpu, gpu_info.GPUInfo))
- self.assertTrue(hasattr(info.gpu, 'devices'))
- self.assertTrue(len(info.gpu.devices) > 0)
- for g in info.gpu.devices:
- self.assertTrue(isinstance(g, gpu_device.GPUDevice))
-
- def testGetSystemInfoNotCachedObject(self):
- if not self._browser.supports_system_info:
- logging.warning(
- 'Browser does not support getting system info, skipping test.')
- return
-
- info_a = self._browser.GetSystemInfo()
- info_b = self._browser.GetSystemInfo()
- self.assertFalse(info_a is info_b)
-
- def testGetSystemTotalMemory(self):
- self.assertTrue(self._browser.memory_stats['SystemTotalPhysicalMemory'] > 0)
-
- @decorators.Disabled('mac', 'linux', 'chromeos') # crbug.com/499208.
- @decorators.Disabled('win') # crbug.com/570955.
- def testIsTracingRunning(self):
- tracing_controller = self._browser.platform.tracing_controller
- if not tracing_controller.IsChromeTracingSupported():
- return
- self.assertFalse(tracing_controller.is_tracing_running)
- config = tracing_config.TracingConfig()
- config.enable_chrome_trace = True
- tracing_controller.StartTracing(config)
- self.assertTrue(tracing_controller.is_tracing_running)
- tracing_controller.StopTracing()
- self.assertFalse(tracing_controller.is_tracing_running)
-
-
-class CommandLineBrowserTest(browser_test_case.BrowserTestCase):
- @classmethod
- def CustomizeBrowserOptions(cls, options):
- options.AppendExtraBrowserArgs('--user-agent=telemetry')
-
- def testCommandLineOverriding(self):
- # This test starts the browser with --user-agent=telemetry. This tests
- # whether the user agent is then set.
- t = self._browser.tabs[0]
- t.Navigate(self.UrlOfUnittestFile('blank.html'))
- t.WaitForDocumentReadyStateToBeInteractiveOrBetter()
- self.assertEquals(t.EvaluateJavaScript('navigator.userAgent'),
- 'telemetry')
-
-class DirtyProfileBrowserTest(browser_test_case.BrowserTestCase):
- @classmethod
- def CustomizeBrowserOptions(cls, options):
- options.profile_type = 'small_profile'
-
- @decorators.Disabled('chromeos') # crbug.com/243912
- def testDirtyProfileCreation(self):
- self.assertEquals(1, len(self._browser.tabs))
-
-
-class BrowserLoggingTest(browser_test_case.BrowserTestCase):
- @classmethod
- def CustomizeBrowserOptions(cls, options):
- options.enable_logging = True
-
- @decorators.Disabled('chromeos', 'android')
- def testLogFileExist(self):
- self.assertTrue(
- os.path.isfile(self._browser._browser_backend.log_file_path))
-
-
-def _GenerateBrowserProfile(number_of_tabs):
- """ Generate a browser profile which browser had |number_of_tabs| number of
- tabs opened before it was closed.
- Returns:
- profile_dir: the directory of profile.
- """
- profile_dir = tempfile.mkdtemp()
- options = options_for_unittests.GetCopy()
- options.output_profile_path = profile_dir
- browser_to_create = browser_finder.FindBrowser(options)
- with browser_to_create.Create(options) as browser:
- browser.platform.SetHTTPServerDirectories(path.GetUnittestDataDir())
- blank_file_path = os.path.join(path.GetUnittestDataDir(), 'blank.html')
- blank_url = browser.platform.http_server.UrlOf(blank_file_path)
- browser.foreground_tab.Navigate(blank_url)
- browser.foreground_tab.WaitForDocumentReadyStateToBeComplete()
- for _ in xrange(number_of_tabs - 1):
- tab = browser.tabs.New()
- tab.Navigate(blank_url)
- tab.WaitForDocumentReadyStateToBeComplete()
- return profile_dir
-
-
-class BrowserCreationTest(unittest.TestCase):
- def setUp(self):
- self.mock_browser_backend = mock.MagicMock()
- self.mock_platform_backend = mock.MagicMock()
-
- def testCleanedUpCalledWhenExceptionRaisedInBrowserCreation(self):
- self.mock_platform_backend.platform.FlushDnsCache.side_effect = (
- IntentionalException('Boom!'))
- with self.assertRaises(IntentionalException):
- browser_module.Browser(
- self.mock_browser_backend, self.mock_platform_backend,
- credentials_path=None)
- self.assertTrue(self.mock_platform_backend.WillCloseBrowser.called)
-
- def testOriginalExceptionNotSwallow(self):
- self.mock_platform_backend.platform.FlushDnsCache.side_effect = (
- IntentionalException('Boom!'))
- self.mock_platform_backend.WillCloseBrowser.side_effect = (
- IntentionalException('Cannot close browser!'))
- with self.assertRaises(IntentionalException) as context:
- browser_module.Browser(
- self.mock_browser_backend, self.mock_platform_backend,
- credentials_path=None)
- self.assertIn('Boom!', context.exception.message)
-
-
-class BrowserRestoreSessionTest(unittest.TestCase):
-
- @classmethod
- def setUpClass(cls):
- cls._number_of_tabs = 4
- cls._profile_dir = _GenerateBrowserProfile(cls._number_of_tabs)
- cls._options = options_for_unittests.GetCopy()
- cls._options.browser_options.AppendExtraBrowserArgs(
- ['--restore-last-session'])
- cls._options.browser_options.profile_dir = cls._profile_dir
- cls._browser_to_create = browser_finder.FindBrowser(cls._options)
-
- @decorators.Enabled('has tabs')
- @decorators.Disabled('chromeos', 'win', 'mac')
- # TODO(nednguyen): Enable this test on windowsn platform
- def testRestoreBrowserWithMultipleTabs(self):
- with self._browser_to_create.Create(self._options) as browser:
- # The number of tabs will be self._number_of_tabs + 1 as it includes the
- # old tabs and a new blank tab.
- expected_number_of_tabs = self._number_of_tabs + 1
- try:
- util.WaitFor(lambda: len(browser.tabs) == expected_number_of_tabs, 10)
- except:
- logging.error('Number of tabs is %s' % len(browser.tabs))
- raise
- self.assertEquals(expected_number_of_tabs, len(browser.tabs))
-
- @classmethod
- def tearDownClass(cls):
- shutil.rmtree(cls._profile_dir)
-
-
-class ReferenceBrowserTest(unittest.TestCase):
-
- @decorators.Enabled('win', 'mac', 'linux')
- def testBasicBrowserActions(self):
- options = options_for_unittests.GetCopy()
- options.browser_type = 'reference'
- browser_to_create = browser_finder.FindBrowser(options)
- self.assertIsNotNone(browser_to_create)
- with browser_to_create.Create(options) as ref_browser:
- tab = ref_browser.tabs.New()
- tab.Navigate('about:blank')
- self.assertEquals(2, tab.EvaluateJavaScript('1 + 1'))

Powered by Google App Engine
This is Rietveld 408576698