| OLD | NEW | 
|    1 # Copyright 2015 The Chromium Authors. All rights reserved. |    1 # Copyright 2015 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  |    4  | 
|    5 import logging |    5 import logging | 
|    6 import time |    6 import time | 
|    7  |    7  | 
|    8 from telemetry.testing import tab_test_case |    8 from telemetry.testing import tab_test_case | 
|    9 from telemetry import decorators |    9 from telemetry import decorators | 
|   10 from telemetry.core import util |   10 from telemetry.core import util | 
|   11  |   11  | 
|   12 class BrowserMinidumpTest(tab_test_case.TabTestCase): |   12 class BrowserMinidumpTest(tab_test_case.TabTestCase): | 
|   13   @decorators.Isolated |   13   @decorators.Isolated | 
|   14   @decorators.Enabled('mac') |   14   # Disabled tests due to flakiness: http://crbug.com/641469 | 
 |   15   @decorators.Disabled('all') | 
|   15   def testSymbolizeMinidump(self): |   16   def testSymbolizeMinidump(self): | 
|   16     # Wait for the browser to restart fully before crashing |   17     # Wait for the browser to restart fully before crashing | 
|   17     self._LoadPageThenWait('var sam = "car";', 'sam') |   18     self._LoadPageThenWait('var sam = "car";', 'sam') | 
|   18     self._browser.tabs.New().Navigate('chrome://gpucrash', timeout=5) |   19     self._browser.tabs.New().Navigate('chrome://gpucrash', timeout=5) | 
|   19     crash_minidump_path = self._browser.GetMostRecentMinidumpPath() |   20     crash_minidump_path = self._browser.GetMostRecentMinidumpPath() | 
|   20     #self.assertIsNotNone(crash_minidump_path) |   21     #self.assertIsNotNone(crash_minidump_path) | 
|   21  |   22  | 
|   22     if crash_minidump_path is not None: |   23     if crash_minidump_path is not None: | 
|   23       logging.info('testSymbolizeMinidump: most recent path = ' |   24       logging.info('testSymbolizeMinidump: most recent path = ' | 
|   24           + crash_minidump_path) |   25           + crash_minidump_path) | 
| (...skipping 12 matching lines...) Expand all  Loading... | 
|   37     all_unsymbolized_after_symbolize_paths = \ |   38     all_unsymbolized_after_symbolize_paths = \ | 
|   38         self._browser.GetAllUnsymbolizedMinidumpPaths() |   39         self._browser.GetAllUnsymbolizedMinidumpPaths() | 
|   39     if all_unsymbolized_after_symbolize_paths is not None: |   40     if all_unsymbolized_after_symbolize_paths is not None: | 
|   40       logging.info('testSymbolizeMinidump: after symbolize all ' |   41       logging.info('testSymbolizeMinidump: after symbolize all ' | 
|   41           + 'unsymbolized paths: ' |   42           + 'unsymbolized paths: ' | 
|   42           + ''.join(all_unsymbolized_after_symbolize_paths)) |   43           + ''.join(all_unsymbolized_after_symbolize_paths)) | 
|   43     #self.assertTrue(len(all_unsymbolized_after_symbolize_paths) == 0) |   44     #self.assertTrue(len(all_unsymbolized_after_symbolize_paths) == 0) | 
|   44  |   45  | 
|   45  |   46  | 
|   46   @decorators.Isolated |   47   @decorators.Isolated | 
|   47   @decorators.Enabled('mac') |   48   # Disabled tests due to flakiness: http://crbug.com/641469 | 
 |   49   @decorators.Disabled('all') | 
|   48   def testMultipleCrashMinidumps(self): |   50   def testMultipleCrashMinidumps(self): | 
|   49     # Wait for the browser to restart fully before crashing |   51     # Wait for the browser to restart fully before crashing | 
|   50     self._LoadPageThenWait('var cat = "dog";', 'cat') |   52     self._LoadPageThenWait('var cat = "dog";', 'cat') | 
|   51     self._browser.tabs.New().Navigate('chrome://gpucrash', timeout=5) |   53     self._browser.tabs.New().Navigate('chrome://gpucrash', timeout=5) | 
|   52     first_crash_path = self._browser.GetMostRecentMinidumpPath() |   54     first_crash_path = self._browser.GetMostRecentMinidumpPath() | 
|   53  |   55  | 
|   54     #self.assertIsNotNone(first_crash_path) |   56     #self.assertIsNotNone(first_crash_path) | 
|   55     if first_crash_path is not None: |   57     if first_crash_path is not None: | 
|   56       logging.info('testMultipleCrashMinidumps: first crash most recent path' |   58       logging.info('testMultipleCrashMinidumps: first crash most recent path' | 
|   57           + first_crash_path) |   59           + first_crash_path) | 
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  123     # Therefore, we are adding a 5 second wait for now to see if this can help |  125     # Therefore, we are adding a 5 second wait for now to see if this can help | 
|  124     # the problem until we determine if there is another chrome process we can |  126     # the problem until we determine if there is another chrome process we can | 
|  125     # wait on to ensure that all browser load processes have finished |  127     # wait on to ensure that all browser load processes have finished | 
|  126     time.sleep(5) |  128     time.sleep(5) | 
|  127     new_tab = self._browser.tabs.New() |  129     new_tab = self._browser.tabs.New() | 
|  128     new_tab.Navigate(self.UrlOfUnittestFile('blank.html'), |  130     new_tab.Navigate(self.UrlOfUnittestFile('blank.html'), | 
|  129         script_to_evaluate_on_commit=script) |  131         script_to_evaluate_on_commit=script) | 
|  130     # Wait until the javascript has run ensuring that |  132     # Wait until the javascript has run ensuring that | 
|  131     # the new browser has restarted before we crash it again |  133     # the new browser has restarted before we crash it again | 
|  132     util.WaitFor(lambda: new_tab.EvaluateJavaScript(value), 60) |  134     util.WaitFor(lambda: new_tab.EvaluateJavaScript(value), 60) | 
| OLD | NEW |