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

Side by Side Diff: functional/pdf.py

Issue 6265008: Ensure that renderer crashes in pdf runner results in test failure... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/chrome/test/
Patch Set: Created 9 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # Copyright (c) 2010 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2010 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 import os 6 import os
7 import glob 7 import glob
8 8
9 import pyauto_functional # Must be imported before pyauto 9 import pyauto_functional # Must be imported before pyauto
10 import pyauto 10 import pyauto
(...skipping 19 matching lines...) Expand all
30 # (or else it hangs) 30 # (or else it hangs)
31 return self.GetDOMValue('%s + ""' % js, 0, tab_index) 31 return self.GetDOMValue('%s + ""' % js, 0, tab_index)
32 32
33 33
34 def testPDFRunner(self): 34 def testPDFRunner(self):
35 """Navigate to pdf files and verify that browser doesn't crash""" 35 """Navigate to pdf files and verify that browser doesn't crash"""
36 # bail out if not a branded build 36 # bail out if not a branded build
37 properties = self.GetBrowserInfo()['properties'] 37 properties = self.GetBrowserInfo()['properties']
38 if properties['branding'] != 'Google Chrome': 38 if properties['branding'] != 'Google Chrome':
39 return 39 return
40 breakpad_folder = properties['DIR_CRASH_DUMPS']
41 old_dmp_files = glob.glob(os.path.join(breakpad_folder, '*.dmp'))
40 pdf_files_path = os.path.join(self.DataDir(), 'pyauto_private', 'pdf') 42 pdf_files_path = os.path.join(self.DataDir(), 'pyauto_private', 'pdf')
41 pdf_files = glob.glob(os.path.join(pdf_files_path, '*.pdf')) 43 pdf_files = glob.glob(os.path.join(pdf_files_path, '*.pdf'))
42 for pdf_file in pdf_files: 44 for pdf_file in pdf_files:
43 # Some pdfs cause known crashes. Exclude them. crbug.com/63549 45 # Some pdfs cause known crashes. Exclude them. crbug.com/63549
44 if os.path.basename(pdf_file) in ('nullip.pdf', 'sample.pdf'): 46 if os.path.basename(pdf_file) in ('nullip.pdf', 'sample.pdf'):
45 continue 47 continue
46 url = self.GetFileURLForPath(pdf_file) 48 url = self.GetFileURLForPath(pdf_file)
47 self.AppendTab(pyauto.GURL(url)) 49 self.AppendTab(pyauto.GURL(url))
48 for tab_index in range(1, len(pdf_files) + 1): 50 for tab_index in range(1, len(pdf_files) + 1):
49 self.ActivateTab(tab_index) 51 self.ActivateTab(tab_index)
50 self._PerformPDFAction('fitToHeight', tab_index=tab_index) 52 self._PerformPDFAction('fitToHeight', tab_index=tab_index)
51 self._PerformPDFAction('fitToWidth', tab_index=tab_index) 53 self._PerformPDFAction('fitToWidth', tab_index=tab_index)
52 # Assert that there is at least 1 browser window. 54 # Assert that there is at least 1 browser window.
53 self.assertTrue(self.GetBrowserWindowCount(), 55 self.assertTrue(self.GetBrowserWindowCount(),
54 'Browser crashed, no window is open') 56 'Browser crashed, no window is open')
57 # Verify there're no crash dump files
58 for dmp_file in glob.glob(os.path.join(breakpad_folder, '*.dmp')):
59 self.assertTrue(dmp_file in old_dmp_files,
60 msg='Crash dump %s found' % dmp_file)
sunandt 2011/01/18 20:04:26 What if there are dump files from old runs or prev
Nirnimesh 2011/01/18 20:11:48 Which is why I make a copy of old dmp files in lin
55 61
56 62
57 if __name__ == '__main__': 63 if __name__ == '__main__':
58 pyauto_functional.Main() 64 pyauto_functional.Main()
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698