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

Side by Side Diff: presubmit_support.py

Issue 122016: Melting pot of changes. (Closed)
Patch Set: Created 11 years, 6 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
« no previous file with comments | « no previous file | tests/presubmit_unittest.py » ('j') | 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) 2006-2009 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2006-2009 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 """Enables directory-specific presubmit checks to run at upload and/or commit. 6 """Enables directory-specific presubmit checks to run at upload and/or commit.
7 """ 7 """
8 8
9 __version__ = '1.3.2' 9 __version__ = '1.3.2'
10 10
(...skipping 511 matching lines...) Expand 10 before | Expand all | Expand 10 after
522 522
523 # Change back to text and remove whitespace at end. 523 # Change back to text and remove whitespace at end.
524 self._description_without_tags = '\n'.join(self._description_without_tags) 524 self._description_without_tags = '\n'.join(self._description_without_tags)
525 self._description_without_tags = self._description_without_tags.rstrip() 525 self._description_without_tags = self._description_without_tags.rstrip()
526 526
527 self._affected_files = [ 527 self._affected_files = [
528 SvnAffectedFile(info[1], info[0].strip(), repository_root) 528 SvnAffectedFile(info[1], info[0].strip(), repository_root)
529 for info in change_info.files 529 for info in change_info.files
530 ] 530 ]
531 531
532 def Change(self): 532 def Name(self):
533 """Returns the change name.""" 533 """Returns the change name."""
534 return self._name 534 return self._name
535 535
536 def DescriptionText(self): 536 def DescriptionText(self):
537 """Returns the user-entered changelist description, minus tags. 537 """Returns the user-entered changelist description, minus tags.
538 538
539 Any line in the user-provided description starting with e.g. "FOO=" 539 Any line in the user-provided description starting with e.g. "FOO="
540 (whitespace permitted before and around) is considered a tag line. Such 540 (whitespace permitted before and around) is considered a tag line. Such
541 lines are stripped out of the description this function returns. 541 lines are stripped out of the description this function returns.
542 """ 542 """
543 return self._description_without_tags 543 return self._description_without_tags
544 544
545 def FullDescriptionText(self): 545 def FullDescriptionText(self):
546 """Returns the complete changelist description including tags.""" 546 """Returns the complete changelist description including tags."""
547 return self._full_description 547 return self._full_description
548 548
549 def RepositoryRoot(self): 549 def RepositoryRoot(self):
550 """Returns the repository root for this change, as an absolute path.""" 550 """Returns the repository (checkout) root directory for this change,
551 as an absolute path.
552 """
551 return self._repository_root 553 return self._repository_root
552 554
553 def __getattr__(self, attr): 555 def __getattr__(self, attr):
554 """Return keys directly as attributes on the object. 556 """Return tags directly as attributes on the object."""
555 557 if not re.match(r"^[A-Z_]*$", attr):
556 You may use a friendly name (from SPECIAL_KEYS) or the actual name of 558 raise AttributeError(self, attr)
557 the key.
558 """
559 return self.tags.get(attr) 559 return self.tags.get(attr)
560 560
561 def AffectedFiles(self, include_dirs=False, include_deletes=True): 561 def AffectedFiles(self, include_dirs=False, include_deletes=True):
562 """Returns a list of AffectedFile instances for all files in the change. 562 """Returns a list of AffectedFile instances for all files in the change.
563 563
564 Args: 564 Args:
565 include_deletes: If false, deleted files will be filtered out. 565 include_deletes: If false, deleted files will be filtered out.
566 include_dirs: True to include directories in the list 566 include_dirs: True to include directories in the list
567 567
568 Returns: 568 Returns:
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after
811 options.commit, 811 options.commit,
812 options.verbose, 812 options.verbose,
813 sys.stdout, 813 sys.stdout,
814 sys.stdin, 814 sys.stdin,
815 None, 815 None,
816 False) 816 False)
817 817
818 818
819 if __name__ == '__main__': 819 if __name__ == '__main__':
820 sys.exit(Main(sys.argv)) 820 sys.exit(Main(sys.argv))
OLDNEW
« no previous file with comments | « no previous file | tests/presubmit_unittest.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698