OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright 2013 the V8 project authors. All rights reserved. | 2 # Copyright 2013 the V8 project authors. All rights reserved. |
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 are | 4 # modification, are permitted provided that the following conditions are |
5 # met: | 5 # met: |
6 # | 6 # |
7 # * Redistributions of source code must retain the above copyright | 7 # * Redistributions of source code must retain the above copyright |
8 # notice, this list of conditions and the following disclaimer. | 8 # notice, this list of conditions and the following disclaimer. |
9 # * Redistributions in binary form must reproduce the above | 9 # * Redistributions in binary form must reproduce the above |
10 # copyright notice, this list of conditions and the following | 10 # copyright notice, this list of conditions and the following |
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
287 % (self._name, self._index, len(self._recipe))) | 287 % (self._name, self._index, len(self._recipe))) |
288 | 288 |
289 | 289 |
290 class ScriptTest(unittest.TestCase): | 290 class ScriptTest(unittest.TestCase): |
291 def MakeEmptyTempFile(self): | 291 def MakeEmptyTempFile(self): |
292 handle, name = tempfile.mkstemp() | 292 handle, name = tempfile.mkstemp() |
293 os.close(handle) | 293 os.close(handle) |
294 self._tmp_files.append(name) | 294 self._tmp_files.append(name) |
295 return name | 295 return name |
296 | 296 |
297 def MakeTempVersionFile(self): | 297 def WriteFakeVersionFile(self): |
298 name = self.MakeEmptyTempFile() | 298 with open(TEST_CONFIG[VERSION_FILE], "w") as f: |
299 with open(name, "w") as f: | |
300 f.write(" // Some line...\n") | 299 f.write(" // Some line...\n") |
301 f.write("\n") | 300 f.write("\n") |
302 f.write("#define MAJOR_VERSION 3\n") | 301 f.write("#define MAJOR_VERSION 3\n") |
303 f.write("#define MINOR_VERSION 22\n") | 302 f.write("#define MINOR_VERSION 22\n") |
304 f.write("#define BUILD_NUMBER 5\n") | 303 f.write("#define BUILD_NUMBER 5\n") |
305 f.write("#define PATCH_LEVEL 0\n") | 304 f.write("#define PATCH_LEVEL 0\n") |
306 f.write(" // Some line...\n") | 305 f.write(" // Some line...\n") |
307 f.write("#define IS_CANDIDATE_VERSION 0\n") | 306 f.write("#define IS_CANDIDATE_VERSION 0\n") |
308 return name | |
309 | 307 |
310 def MakeStep(self): | 308 def MakeStep(self): |
311 """Convenience wrapper.""" | 309 """Convenience wrapper.""" |
312 options = ScriptsBase(TEST_CONFIG, self, self._state).MakeOptions([]) | 310 options = ScriptsBase(TEST_CONFIG, self, self._state).MakeOptions([]) |
313 return MakeStep(step_class=Step, state=self._state, | 311 return MakeStep(step_class=Step, state=self._state, |
314 config=TEST_CONFIG, side_effect_handler=self, | 312 config=TEST_CONFIG, side_effect_handler=self, |
315 options=options) | 313 options=options) |
316 | 314 |
317 def RunStep(self, script=PushToTrunk, step_class=Step, args=None): | 315 def RunStep(self, script=PushToTrunk, step_class=Step, args=None): |
318 """Convenience wrapper.""" | 316 """Convenience wrapper.""" |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
434 self.MakeStep().CommonPrepare() | 432 self.MakeStep().CommonPrepare() |
435 self.assertRaises(Exception, self.MakeStep().PrepareBranch) | 433 self.assertRaises(Exception, self.MakeStep().PrepareBranch) |
436 self.assertEquals("some_branch", self._state["current_branch"]) | 434 self.assertEquals("some_branch", self._state["current_branch"]) |
437 | 435 |
438 def testInitialEnvironmentChecks(self): | 436 def testInitialEnvironmentChecks(self): |
439 TEST_CONFIG[DOT_GIT_LOCATION] = self.MakeEmptyTempFile() | 437 TEST_CONFIG[DOT_GIT_LOCATION] = self.MakeEmptyTempFile() |
440 os.environ["EDITOR"] = "vi" | 438 os.environ["EDITOR"] = "vi" |
441 self.MakeStep().InitialEnvironmentChecks() | 439 self.MakeStep().InitialEnvironmentChecks() |
442 | 440 |
443 def testReadAndPersistVersion(self): | 441 def testReadAndPersistVersion(self): |
444 TEST_CONFIG[VERSION_FILE] = self.MakeTempVersionFile() | 442 TEST_CONFIG[VERSION_FILE] = self.MakeEmptyTempFile() |
| 443 self.WriteFakeVersionFile() |
445 step = self.MakeStep() | 444 step = self.MakeStep() |
446 step.ReadAndPersistVersion() | 445 step.ReadAndPersistVersion() |
447 self.assertEquals("3", step["major"]) | 446 self.assertEquals("3", step["major"]) |
448 self.assertEquals("22", step["minor"]) | 447 self.assertEquals("22", step["minor"]) |
449 self.assertEquals("5", step["build"]) | 448 self.assertEquals("5", step["build"]) |
450 self.assertEquals("0", step["patch"]) | 449 self.assertEquals("0", step["patch"]) |
451 | 450 |
452 def testRegex(self): | 451 def testRegex(self): |
453 self.assertEqual("(issue 321)", | 452 self.assertEqual("(issue 321)", |
454 re.sub(r"BUG=v8:(.*)$", r"(issue \1)", "BUG=v8:321")) | 453 re.sub(r"BUG=v8:(.*)$", r"(issue \1)", "BUG=v8:321")) |
455 self.assertEqual("(Chromium issue 321)", | 454 self.assertEqual("(Chromium issue 321)", |
456 re.sub(r"BUG=(.*)$", r"(Chromium issue \1)", "BUG=321")) | 455 re.sub(r"BUG=(.*)$", r"(Chromium issue \1)", "BUG=321")) |
457 | 456 |
458 cl = " too little\n\ttab\ttab\n too much\n trailing " | 457 cl = " too little\n\ttab\ttab\n too much\n trailing " |
459 cl = MSub(r"\t", r" ", cl) | 458 cl = MSub(r"\t", r" ", cl) |
460 cl = MSub(r"^ {1,7}([^ ])", r" \1", cl) | 459 cl = MSub(r"^ {1,7}([^ ])", r" \1", cl) |
461 cl = MSub(r"^ {9,80}([^ ])", r" \1", cl) | 460 cl = MSub(r"^ {9,80}([^ ])", r" \1", cl) |
462 cl = MSub(r" +$", r"", cl) | 461 cl = MSub(r" +$", r"", cl) |
463 self.assertEqual(" too little\n" | 462 self.assertEqual(" too little\n" |
464 " tab tab\n" | 463 " tab tab\n" |
465 " too much\n" | 464 " too much\n" |
466 " trailing", cl) | 465 " trailing", cl) |
467 | 466 |
468 self.assertEqual("//\n#define BUILD_NUMBER 3\n", | 467 self.assertEqual("//\n#define BUILD_NUMBER 3\n", |
469 MSub(r"(?<=#define BUILD_NUMBER)(?P<space>\s+)\d*$", | 468 MSub(r"(?<=#define BUILD_NUMBER)(?P<space>\s+)\d*$", |
470 r"\g<space>3", | 469 r"\g<space>3", |
471 "//\n#define BUILD_NUMBER 321\n")) | 470 "//\n#define BUILD_NUMBER 321\n")) |
472 | 471 |
473 def testPrepareChangeLog(self): | 472 def testPrepareChangeLog(self): |
474 TEST_CONFIG[VERSION_FILE] = self.MakeTempVersionFile() | 473 TEST_CONFIG[VERSION_FILE] = self.MakeEmptyTempFile() |
| 474 self.WriteFakeVersionFile() |
475 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile() | 475 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile() |
476 | 476 |
477 self.ExpectGit([ | 477 self.ExpectGit([ |
478 Git("log --format=%H 1234..HEAD", "rev1\nrev2\nrev3\nrev4"), | 478 Git("log --format=%H 1234..HEAD", "rev1\nrev2\nrev3\nrev4"), |
479 Git("log -1 --format=%s rev1", "Title text 1"), | 479 Git("log -1 --format=%s rev1", "Title text 1"), |
480 Git("log -1 --format=%B rev1", "Title\n\nBUG=\nLOG=y\n"), | 480 Git("log -1 --format=%B rev1", "Title\n\nBUG=\nLOG=y\n"), |
481 Git("log -1 --format=%an rev1", "author1@chromium.org"), | 481 Git("log -1 --format=%an rev1", "author1@chromium.org"), |
482 Git("log -1 --format=%s rev2", "Title text 2."), | 482 Git("log -1 --format=%s rev2", "Title text 2."), |
483 Git("log -1 --format=%B rev2", "Title\n\nBUG=123\nLOG= \n"), | 483 Git("log -1 --format=%B rev2", "Title\n\nBUG=123\nLOG= \n"), |
484 Git("log -1 --format=%an rev2", "author2@chromium.org"), | 484 Git("log -1 --format=%an rev2", "author2@chromium.org"), |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
543 self.ExpectReadline([ | 543 self.ExpectReadline([ |
544 RL(""), # Open editor. | 544 RL(""), # Open editor. |
545 ]) | 545 ]) |
546 | 546 |
547 self.RunStep(PushToTrunk, EditChangeLog) | 547 self.RunStep(PushToTrunk, EditChangeLog) |
548 | 548 |
549 self.assertEquals("New\n Lines", | 549 self.assertEquals("New\n Lines", |
550 FileToText(TEST_CONFIG[CHANGELOG_ENTRY_FILE])) | 550 FileToText(TEST_CONFIG[CHANGELOG_ENTRY_FILE])) |
551 | 551 |
552 def testIncrementVersion(self): | 552 def testIncrementVersion(self): |
553 TEST_CONFIG[VERSION_FILE] = self.MakeTempVersionFile() | 553 TEST_CONFIG[VERSION_FILE] = self.MakeEmptyTempFile() |
| 554 self.WriteFakeVersionFile() |
554 self._state["build"] = "5" | 555 self._state["build"] = "5" |
555 | 556 |
556 self.ExpectReadline([ | 557 self.ExpectReadline([ |
557 RL("Y"), # Increment build number. | 558 RL("Y"), # Increment build number. |
558 ]) | 559 ]) |
559 | 560 |
560 self.RunStep(PushToTrunk, IncrementVersion) | 561 self.RunStep(PushToTrunk, IncrementVersion) |
561 | 562 |
562 self.assertEquals("3", self._state["new_major"]) | 563 self.assertEquals("3", self._state["new_major"]) |
563 self.assertEquals("22", self._state["new_minor"]) | 564 self.assertEquals("22", self._state["new_minor"]) |
564 self.assertEquals("6", self._state["new_build"]) | 565 self.assertEquals("6", self._state["new_build"]) |
565 self.assertEquals("0", self._state["new_patch"]) | 566 self.assertEquals("0", self._state["new_patch"]) |
566 | 567 |
567 def _TestSquashCommits(self, change_log, expected_msg): | 568 def _TestSquashCommits(self, change_log, expected_msg): |
568 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile() | 569 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile() |
569 with open(TEST_CONFIG[CHANGELOG_ENTRY_FILE], "w") as f: | 570 with open(TEST_CONFIG[CHANGELOG_ENTRY_FILE], "w") as f: |
570 f.write(change_log) | 571 f.write(change_log) |
571 | 572 |
572 self.ExpectGit([ | 573 self.ExpectGit([ |
573 Git("diff svn/trunk hash1", "patch content"), | 574 Git("diff svn/trunk hash1", "patch content"), |
574 Git("svn find-rev hash1", "123455\n"), | 575 Git("svn find-rev hash1", "123455\n"), |
575 ]) | 576 ]) |
576 | 577 |
577 self._state["prepare_commit_hash"] = "hash1" | 578 self._state["push_hash"] = "hash1" |
578 self._state["date"] = "1999-11-11" | 579 self._state["date"] = "1999-11-11" |
579 | 580 |
580 self.RunStep(PushToTrunk, SquashCommits) | 581 self.RunStep(PushToTrunk, SquashCommits) |
581 self.assertEquals(FileToText(TEST_CONFIG[COMMITMSG_FILE]), expected_msg) | 582 self.assertEquals(FileToText(TEST_CONFIG[COMMITMSG_FILE]), expected_msg) |
582 | 583 |
583 patch = FileToText(TEST_CONFIG[ PATCH_FILE]) | 584 patch = FileToText(TEST_CONFIG[ PATCH_FILE]) |
584 self.assertTrue(re.search(r"patch content", patch)) | 585 self.assertTrue(re.search(r"patch content", patch)) |
585 | 586 |
586 def testSquashCommitsUnformatted(self): | 587 def testSquashCommitsUnformatted(self): |
587 change_log = """1999-11-11: Version 3.22.5 | 588 change_log = """1999-11-11: Version 3.22.5 |
(...skipping 23 matching lines...) Expand all Loading... |
611 Performance and stability improvements on all platforms.""" | 612 Performance and stability improvements on all platforms.""" |
612 self._TestSquashCommits(change_log, commit_msg) | 613 self._TestSquashCommits(change_log, commit_msg) |
613 | 614 |
614 def testSquashCommitsQuotationMarks(self): | 615 def testSquashCommitsQuotationMarks(self): |
615 change_log = """Line with "quotation marks".\n""" | 616 change_log = """Line with "quotation marks".\n""" |
616 commit_msg = """Line with "quotation marks".""" | 617 commit_msg = """Line with "quotation marks".""" |
617 self._TestSquashCommits(change_log, commit_msg) | 618 self._TestSquashCommits(change_log, commit_msg) |
618 | 619 |
619 def _PushToTrunk(self, force=False, manual=False): | 620 def _PushToTrunk(self, force=False, manual=False): |
620 TEST_CONFIG[DOT_GIT_LOCATION] = self.MakeEmptyTempFile() | 621 TEST_CONFIG[DOT_GIT_LOCATION] = self.MakeEmptyTempFile() |
621 TEST_CONFIG[VERSION_FILE] = self.MakeTempVersionFile() | 622 TEST_CONFIG[VERSION_FILE] = self.MakeEmptyTempFile() |
| 623 self.WriteFakeVersionFile() |
622 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile() | 624 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile() |
623 TEST_CONFIG[CHANGELOG_FILE] = self.MakeEmptyTempFile() | 625 TEST_CONFIG[CHANGELOG_FILE] = self.MakeEmptyTempFile() |
624 if not os.path.exists(TEST_CONFIG[CHROMIUM]): | 626 if not os.path.exists(TEST_CONFIG[CHROMIUM]): |
625 os.makedirs(TEST_CONFIG[CHROMIUM]) | 627 os.makedirs(TEST_CONFIG[CHROMIUM]) |
626 bleeding_edge_change_log = "2014-03-17: Sentinel\n" | 628 bleeding_edge_change_log = "2014-03-17: Sentinel\n" |
627 TextToFile(bleeding_edge_change_log, TEST_CONFIG[CHANGELOG_FILE]) | 629 TextToFile(bleeding_edge_change_log, TEST_CONFIG[CHANGELOG_FILE]) |
628 TextToFile("Some line\n \"v8_revision\": \"123444\",\n some line", | 630 TextToFile("Some line\n \"v8_revision\": \"123444\",\n some line", |
629 TEST_CONFIG[DEPS_FILE]) | 631 TEST_CONFIG[DEPS_FILE]) |
630 os.environ["EDITOR"] = "vi" | 632 os.environ["EDITOR"] = "vi" |
631 | 633 |
632 def CheckPreparePush(): | 634 def CheckPreparePush(): |
633 self.assertEquals(bleeding_edge_change_log, | 635 self.assertEquals(bleeding_edge_change_log, |
634 FileToText(TEST_CONFIG[CHANGELOG_FILE])) | 636 FileToText(TEST_CONFIG[CHANGELOG_FILE])) |
635 | 637 |
636 version = FileToText(TEST_CONFIG[VERSION_FILE]) | 638 version = FileToText(TEST_CONFIG[VERSION_FILE]) |
637 self.assertTrue(re.search(r"#define BUILD_NUMBER\s+6", version)) | 639 self.assertTrue(re.search(r"#define BUILD_NUMBER\s+6", version)) |
638 | 640 |
639 def ResetChangeLog(): | 641 def ResetChangeLog(): |
640 """On 'git co -b new_branch svn/trunk', and 'git checkout -- ChangeLog', | 642 """On 'git co -b new_branch svn/trunk', and 'git checkout -- ChangeLog', |
641 the ChangLog will be reset to its content on trunk.""" | 643 the ChangLog will be reset to its content on trunk.""" |
642 trunk_change_log = """1999-04-05: Version 3.22.4 | 644 trunk_change_log = """1999-04-05: Version 3.22.4 |
643 | 645 |
644 Performance and stability improvements on all platforms.\n""" | 646 Performance and stability improvements on all platforms.\n""" |
645 TextToFile(trunk_change_log, TEST_CONFIG[CHANGELOG_FILE]) | 647 TextToFile(trunk_change_log, TEST_CONFIG[CHANGELOG_FILE]) |
646 | 648 |
| 649 def ResetToTrunk(): |
| 650 ResetChangeLog() |
| 651 self.WriteFakeVersionFile() |
| 652 |
647 def CheckSVNCommit(): | 653 def CheckSVNCommit(): |
648 commit = FileToText(TEST_CONFIG[COMMITMSG_FILE]) | 654 commit = FileToText(TEST_CONFIG[COMMITMSG_FILE]) |
649 self.assertEquals( | 655 self.assertEquals( |
650 """Version 3.22.5 (based on bleeding_edge revision r123455) | 656 """Version 3.22.5 (based on bleeding_edge revision r123455) |
651 | 657 |
652 Log text 1 (issue 321). | 658 Log text 1 (issue 321). |
653 | 659 |
654 Performance and stability improvements on all platforms.""", commit) | 660 Performance and stability improvements on all platforms.""", commit) |
655 version = FileToText(TEST_CONFIG[VERSION_FILE]) | 661 version = FileToText(TEST_CONFIG[VERSION_FILE]) |
656 self.assertTrue(re.search(r"#define MINOR_VERSION\s+22", version)) | 662 self.assertTrue(re.search(r"#define MINOR_VERSION\s+22", version)) |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
702 cb=CheckPreparePush), | 708 cb=CheckPreparePush), |
703 Git(("cl upload --send-mail --email \"author@chromium.org\" " | 709 Git(("cl upload --send-mail --email \"author@chromium.org\" " |
704 "-r \"reviewer@chromium.org\"%s" % force_flag), | 710 "-r \"reviewer@chromium.org\"%s" % force_flag), |
705 "done\n"), | 711 "done\n"), |
706 Git("cl presubmit", "Presubmit successfull\n"), | 712 Git("cl presubmit", "Presubmit successfull\n"), |
707 Git("cl dcommit -f --bypass-hooks", "Closing issue\n"), | 713 Git("cl dcommit -f --bypass-hooks", "Closing issue\n"), |
708 Git("svn fetch", "fetch result\n"), | 714 Git("svn fetch", "fetch result\n"), |
709 Git("checkout -f svn/bleeding_edge", ""), | 715 Git("checkout -f svn/bleeding_edge", ""), |
710 Git(("log -1 --format=%H --grep=\"Prepare push to trunk. " | 716 Git(("log -1 --format=%H --grep=\"Prepare push to trunk. " |
711 "Now working on version 3.22.6.\""), | 717 "Now working on version 3.22.6.\""), |
712 "hash1\n"), | 718 "prep_hash\n"), |
713 Git("diff svn/trunk hash1", "patch content\n"), | 719 Git("log -1 --format=%H prep_hash^", "push_hash\n"), |
714 Git("svn find-rev hash1", "123455\n"), | 720 Git("diff svn/trunk push_hash", "patch content\n"), |
| 721 Git("svn find-rev push_hash", "123455\n"), |
715 Git("checkout -b %s svn/trunk" % TEST_CONFIG[TRUNKBRANCH], "", | 722 Git("checkout -b %s svn/trunk" % TEST_CONFIG[TRUNKBRANCH], "", |
716 cb=ResetChangeLog), | 723 cb=ResetToTrunk), |
717 Git("apply --index --reject \"%s\"" % TEST_CONFIG[PATCH_FILE], ""), | 724 Git("apply --index --reject \"%s\"" % TEST_CONFIG[PATCH_FILE], ""), |
718 Git("checkout -f svn/trunk -- %s" % TEST_CONFIG[CHANGELOG_FILE], "", | 725 Git("checkout -f svn/trunk -- %s" % TEST_CONFIG[CHANGELOG_FILE], "", |
719 cb=ResetChangeLog), | 726 cb=ResetChangeLog), |
720 Git("add \"%s\"" % TEST_CONFIG[VERSION_FILE], ""), | 727 Git("checkout -f svn/trunk -- %s" % TEST_CONFIG[VERSION_FILE], "", |
| 728 cb=self.WriteFakeVersionFile), |
721 Git("commit -aF \"%s\"" % TEST_CONFIG[COMMITMSG_FILE], "", | 729 Git("commit -aF \"%s\"" % TEST_CONFIG[COMMITMSG_FILE], "", |
722 cb=CheckSVNCommit), | 730 cb=CheckSVNCommit), |
723 Git("svn dcommit 2>&1", "Some output\nCommitted r123456\nSome output\n"), | 731 Git("svn dcommit 2>&1", "Some output\nCommitted r123456\nSome output\n"), |
724 Git("svn tag 3.22.5 -m \"Tagging version 3.22.5\"", ""), | 732 Git("svn tag 3.22.5 -m \"Tagging version 3.22.5\"", ""), |
725 Git("status -s -uno", ""), | 733 Git("status -s -uno", ""), |
726 Git("checkout -f master", ""), | 734 Git("checkout -f master", ""), |
727 Git("pull", ""), | 735 Git("pull", ""), |
728 Git("checkout -b v8-roll-123456", ""), | 736 Git("checkout -b v8-roll-123456", ""), |
729 Git(("commit -am \"Update V8 to version 3.22.5 " | 737 Git(("commit -am \"Update V8 to version 3.22.5 " |
730 "(based on bleeding_edge revision r123455).\n\n" | 738 "(based on bleeding_edge revision r123455).\n\n" |
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
870 Git("svn fetch", ""), | 878 Git("svn fetch", ""), |
871 ]) | 879 ]) |
872 | 880 |
873 def RunAutoRoll(): | 881 def RunAutoRoll(): |
874 auto_roll.AutoRoll(TEST_CONFIG, self).Run(AUTO_ROLL_ARGS) | 882 auto_roll.AutoRoll(TEST_CONFIG, self).Run(AUTO_ROLL_ARGS) |
875 self.assertRaises(Exception, RunAutoRoll) | 883 self.assertRaises(Exception, RunAutoRoll) |
876 | 884 |
877 def testMergeToBranch(self): | 885 def testMergeToBranch(self): |
878 TEST_CONFIG[ALREADY_MERGING_SENTINEL_FILE] = self.MakeEmptyTempFile() | 886 TEST_CONFIG[ALREADY_MERGING_SENTINEL_FILE] = self.MakeEmptyTempFile() |
879 TEST_CONFIG[DOT_GIT_LOCATION] = self.MakeEmptyTempFile() | 887 TEST_CONFIG[DOT_GIT_LOCATION] = self.MakeEmptyTempFile() |
880 TEST_CONFIG[VERSION_FILE] = self.MakeTempVersionFile() | 888 TEST_CONFIG[VERSION_FILE] = self.MakeEmptyTempFile() |
| 889 self.WriteFakeVersionFile() |
881 os.environ["EDITOR"] = "vi" | 890 os.environ["EDITOR"] = "vi" |
882 extra_patch = self.MakeEmptyTempFile() | 891 extra_patch = self.MakeEmptyTempFile() |
883 | 892 |
884 def VerifyPatch(patch): | 893 def VerifyPatch(patch): |
885 return lambda: self.assertEquals(patch, | 894 return lambda: self.assertEquals(patch, |
886 FileToText(TEST_CONFIG[TEMPORARY_PATCH_FILE])) | 895 FileToText(TEST_CONFIG[TEMPORARY_PATCH_FILE])) |
887 | 896 |
888 msg = """Merged r12345, r23456, r34567, r45678, r56789 into trunk branch. | 897 msg = """Merged r12345, r23456, r34567, r45678, r56789 into trunk branch. |
889 | 898 |
890 Title4 | 899 Title4 |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1016 | 1025 |
1017 Review URL: https://codereview.chromium.org/83173002 | 1026 Review URL: https://codereview.chromium.org/83173002 |
1018 | 1027 |
1019 ------------------------------------------------------------------------""") | 1028 ------------------------------------------------------------------------""") |
1020 self.assertEquals( | 1029 self.assertEquals( |
1021 """Prepare push to trunk. Now working on version 3.23.11. | 1030 """Prepare push to trunk. Now working on version 3.23.11. |
1022 | 1031 |
1023 R=danno@chromium.org | 1032 R=danno@chromium.org |
1024 | 1033 |
1025 Committed: https://code.google.com/p/v8/source/detail?r=17997""", body) | 1034 Committed: https://code.google.com/p/v8/source/detail?r=17997""", body) |
OLD | NEW |