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

Side by Side Diff: tools/push-to-trunk/test_scripts.py

Issue 200763013: Directly modify version file on trunk branch in push-to-trunk. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 9 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
OLDNEW
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
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
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
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
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
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
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
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)
OLDNEW
« tools/push-to-trunk/push_to_trunk.py ('K') | « tools/push-to-trunk/push_to_trunk.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698