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

Side by Side Diff: third_party/WebKit/Tools/Scripts/webkitpy/w3c/test_importer.py

Issue 2630813002: Revert of On W3C test import, always skip large files that may fail to upload. (Closed)
Patch Set: Created 3 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
OLDNEW
1 # Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved. 1 # Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved.
2 # 2 #
3 # Redistribution and use in source and binary forms, with or without 3 # Redistribution and use in source and binary forms, with or without
4 # modification, are permitted provided that the following conditions 4 # modification, are permitted provided that the following conditions
5 # are met: 5 # are met:
6 # 6 #
7 # 1. Redistributions of source code must retain the above 7 # 1. Redistributions of source code must retain the above
8 # copyright notice, this list of conditions and the following 8 # copyright notice, this list of conditions and the following
9 # disclaimer. 9 # disclaimer.
10 # 2. Redistributions in binary form must reproduce the above 10 # 2. Redistributions in binary form must reproduce the above
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
75 from webkitpy.common.webkit_finder import WebKitFinder 75 from webkitpy.common.webkit_finder import WebKitFinder
76 from webkitpy.layout_tests.models.test_expectations import TestExpectationParser 76 from webkitpy.layout_tests.models.test_expectations import TestExpectationParser
77 from webkitpy.w3c.test_parser import TestParser 77 from webkitpy.w3c.test_parser import TestParser
78 from webkitpy.w3c.test_converter import convert_for_webkit 78 from webkitpy.w3c.test_converter import convert_for_webkit
79 79
80 80
81 # Maximum length of import path starting from top of source repository. 81 # Maximum length of import path starting from top of source repository.
82 # This limit is here because the Windows builders cannot create paths that are 82 # This limit is here because the Windows builders cannot create paths that are
83 # longer than the Windows max path length (260). See http://crbug.com/609871. 83 # longer than the Windows max path length (260). See http://crbug.com/609871.
84 MAX_PATH_LENGTH = 125 84 MAX_PATH_LENGTH = 125
85 MAX_FILE_SIZE_BYTES = 800 * 1024
86 85
87 86
88 _log = logging.getLogger(__name__) 87 _log = logging.getLogger(__name__)
89 88
90 89
91 def main(_argv, _stdout, _stderr): 90 def main(_argv, _stdout, _stderr):
92 options, args = parse_args() 91 options, args = parse_args()
93 host = Host() 92 host = Host()
94 source_repo_path = host.filesystem.normpath(os.path.abspath(args[0])) 93 source_repo_path = host.filesystem.normpath(os.path.abspath(args[0]))
95 94
(...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after
368 Args: 367 Args:
369 file_to_copy: A dict in a file copy list constructed by 368 file_to_copy: A dict in a file copy list constructed by
370 find_importable_tests, which represents one file to copy, includ ing 369 find_importable_tests, which represents one file to copy, includ ing
371 the keys: 370 the keys:
372 "src": Absolute path to the source location of the file. 371 "src": Absolute path to the source location of the file.
373 "destination": File name of the destination file. 372 "destination": File name of the destination file.
374 And possibly also the keys "reference_support_info" or "is_jstes t". 373 And possibly also the keys "reference_support_info" or "is_jstes t".
375 dest_dir: Path to the directory where the file should be copied. 374 dest_dir: Path to the directory where the file should be copied.
376 375
377 Returns: 376 Returns:
378 The path to the new file, relative to the Blink root, 377 The path to the new file, relative to the Blink root (//third_party/ WebKit).
379 or None if the file should not be copied.
380 """ 378 """
381 source_path = self.filesystem.normpath(file_to_copy['src']) 379 source_path = self.filesystem.normpath(file_to_copy['src'])
382 dest_path = self.filesystem.join(dest_dir, file_to_copy['dest']) 380 dest_path = self.filesystem.join(dest_dir, file_to_copy['dest'])
383 381
384 if self.filesystem.isdir(source_path): 382 if self.filesystem.isdir(source_path):
385 _log.error('%s refers to a directory', source_path) 383 _log.error('%s refers to a directory', source_path)
386 return None 384 return None
387 385
388 if not self.filesystem.exists(source_path): 386 if not self.filesystem.exists(source_path):
389 _log.error('%s not found. Possible error in the test.', source_path) 387 _log.error('%s not found. Possible error in the test.', source_path)
390 return None 388 return None
391 389
392 if self.filesystem.getsize(source_path) > MAX_FILE_SIZE_BYTES:
393 _log.error('%s is too large (%d bytes)', source_path, self.filesyste m.getsize(source_path))
394 return None
395
396 if file_to_copy.get('reference_support_info'): 390 if file_to_copy.get('reference_support_info'):
397 reference_support_info = file_to_copy['reference_support_info'] 391 reference_support_info = file_to_copy['reference_support_info']
398 else: 392 else:
399 reference_support_info = None 393 reference_support_info = None
400 394
401 if not self.filesystem.exists(self.filesystem.dirname(dest_path)): 395 if not self.filesystem.exists(self.filesystem.dirname(dest_path)):
402 if not self.import_in_place and not self.options.dry_run: 396 if not self.import_in_place and not self.options.dry_run:
403 self.filesystem.maybe_make_directory(self.filesystem.dirname(des t_path)) 397 self.filesystem.maybe_make_directory(self.filesystem.dirname(des t_path))
404 398
405 relpath = self.filesystem.relpath(dest_path, self.layout_tests_dir) 399 relpath = self.filesystem.relpath(dest_path, self.layout_tests_dir)
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
449 """Checks whether a source path is too long to import. 443 """Checks whether a source path is too long to import.
450 444
451 Args: 445 Args:
452 Absolute path of file to be imported. 446 Absolute path of file to be imported.
453 447
454 Returns: 448 Returns:
455 True if the path is too long to import, False if it's OK. 449 True if the path is too long to import, False if it's OK.
456 """ 450 """
457 path_from_repo_base = os.path.relpath(source_path, self.source_repo_path ) 451 path_from_repo_base = os.path.relpath(source_path, self.source_repo_path )
458 return len(path_from_repo_base) > MAX_PATH_LENGTH 452 return len(path_from_repo_base) > MAX_PATH_LENGTH
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698