| 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 632 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 643 self.assertEquals("7", self._state["new_build"]) | 643 self.assertEquals("7", self._state["new_build"]) |
| 644 self.assertEquals("0", self._state["new_patch"]) | 644 self.assertEquals("0", self._state["new_patch"]) |
| 645 | 645 |
| 646 def _TestSquashCommits(self, change_log, expected_msg): | 646 def _TestSquashCommits(self, change_log, expected_msg): |
| 647 TEST_CONFIG["CHANGELOG_ENTRY_FILE"] = self.MakeEmptyTempFile() | 647 TEST_CONFIG["CHANGELOG_ENTRY_FILE"] = self.MakeEmptyTempFile() |
| 648 with open(TEST_CONFIG["CHANGELOG_ENTRY_FILE"], "w") as f: | 648 with open(TEST_CONFIG["CHANGELOG_ENTRY_FILE"], "w") as f: |
| 649 f.write(change_log) | 649 f.write(change_log) |
| 650 | 650 |
| 651 self.Expect([ | 651 self.Expect([ |
| 652 Cmd("git diff origin/candidates hash1", "patch content"), | 652 Cmd("git diff origin/candidates hash1", "patch content"), |
| 653 Cmd("git svn find-rev hash1", "123455\n"), | |
| 654 ]) | 653 ]) |
| 655 | 654 |
| 656 self._state["push_hash"] = "hash1" | 655 self._state["push_hash"] = "hash1" |
| 657 self._state["date"] = "1999-11-11" | 656 self._state["date"] = "1999-11-11" |
| 658 | 657 |
| 659 self.RunStep(PushToTrunk, SquashCommits) | 658 self.RunStep(PushToTrunk, SquashCommits) |
| 660 self.assertEquals(FileToText(TEST_CONFIG["COMMITMSG_FILE"]), expected_msg) | 659 self.assertEquals(FileToText(TEST_CONFIG["COMMITMSG_FILE"]), expected_msg) |
| 661 | 660 |
| 662 patch = FileToText(TEST_CONFIG["PATCH_FILE"]) | 661 patch = FileToText(TEST_CONFIG["PATCH_FILE"]) |
| 663 self.assertTrue(re.search(r"patch content", patch)) | 662 self.assertTrue(re.search(r"patch content", patch)) |
| 664 | 663 |
| 665 def testSquashCommitsUnformatted(self): | 664 def testSquashCommitsUnformatted(self): |
| 666 change_log = """1999-11-11: Version 3.22.5 | 665 change_log = """1999-11-11: Version 3.22.5 |
| 667 | 666 |
| 668 Log text 1. | 667 Log text 1. |
| 669 Chromium issue 12345 | 668 Chromium issue 12345 |
| 670 | 669 |
| 671 Performance and stability improvements on all platforms.\n""" | 670 Performance and stability improvements on all platforms.\n""" |
| 672 commit_msg = """Version 3.22.5 (based on bleeding_edge revision r123455) | 671 commit_msg = """Version 3.22.5 (based on hash1) |
| 673 | 672 |
| 674 Log text 1. Chromium issue 12345 | 673 Log text 1. Chromium issue 12345 |
| 675 | 674 |
| 676 Performance and stability improvements on all platforms.""" | 675 Performance and stability improvements on all platforms.""" |
| 677 self._TestSquashCommits(change_log, commit_msg) | 676 self._TestSquashCommits(change_log, commit_msg) |
| 678 | 677 |
| 679 def testSquashCommitsFormatted(self): | 678 def testSquashCommitsFormatted(self): |
| 680 change_log = """1999-11-11: Version 3.22.5 | 679 change_log = """1999-11-11: Version 3.22.5 |
| 681 | 680 |
| 682 Long commit message that fills more than 80 characters (Chromium issue | 681 Long commit message that fills more than 80 characters (Chromium issue |
| 683 12345). | 682 12345). |
| 684 | 683 |
| 685 Performance and stability improvements on all platforms.\n""" | 684 Performance and stability improvements on all platforms.\n""" |
| 686 commit_msg = """Version 3.22.5 (based on bleeding_edge revision r123455) | 685 commit_msg = """Version 3.22.5 (based on hash1) |
| 687 | 686 |
| 688 Long commit message that fills more than 80 characters (Chromium issue 12345). | 687 Long commit message that fills more than 80 characters (Chromium issue 12345). |
| 689 | 688 |
| 690 Performance and stability improvements on all platforms.""" | 689 Performance and stability improvements on all platforms.""" |
| 691 self._TestSquashCommits(change_log, commit_msg) | 690 self._TestSquashCommits(change_log, commit_msg) |
| 692 | 691 |
| 693 def testSquashCommitsQuotationMarks(self): | 692 def testSquashCommitsQuotationMarks(self): |
| 694 change_log = """Line with "quotation marks".\n""" | 693 change_log = """Line with "quotation marks".\n""" |
| 695 commit_msg = """Line with "quotation marks".""" | 694 commit_msg = """Line with "quotation marks".""" |
| 696 self._TestSquashCommits(change_log, commit_msg) | 695 self._TestSquashCommits(change_log, commit_msg) |
| (...skipping 19 matching lines...) Expand all Loading... |
| 716 Performance and stability improvements on all platforms.\n""" | 715 Performance and stability improvements on all platforms.\n""" |
| 717 TextToFile(trunk_change_log, TEST_CONFIG["CHANGELOG_FILE"]) | 716 TextToFile(trunk_change_log, TEST_CONFIG["CHANGELOG_FILE"]) |
| 718 | 717 |
| 719 def ResetToTrunk(): | 718 def ResetToTrunk(): |
| 720 ResetChangeLog() | 719 ResetChangeLog() |
| 721 self.WriteFakeVersionFile() | 720 self.WriteFakeVersionFile() |
| 722 | 721 |
| 723 def CheckSVNCommit(): | 722 def CheckSVNCommit(): |
| 724 commit = FileToText(TEST_CONFIG["COMMITMSG_FILE"]) | 723 commit = FileToText(TEST_CONFIG["COMMITMSG_FILE"]) |
| 725 self.assertEquals( | 724 self.assertEquals( |
| 726 """Version 3.22.5 (based on bleeding_edge revision r123455) | 725 """Version 3.22.5 (based on push_hash) |
| 727 | 726 |
| 728 Log text 1 (issue 321). | 727 Log text 1 (issue 321). |
| 729 | 728 |
| 730 Performance and stability improvements on all platforms.""", commit) | 729 Performance and stability improvements on all platforms.""", commit) |
| 731 version = FileToText( | 730 version = FileToText( |
| 732 os.path.join(TEST_CONFIG["DEFAULT_CWD"], VERSION_FILE)) | 731 os.path.join(TEST_CONFIG["DEFAULT_CWD"], VERSION_FILE)) |
| 733 self.assertTrue(re.search(r"#define MINOR_VERSION\s+22", version)) | 732 self.assertTrue(re.search(r"#define MINOR_VERSION\s+22", version)) |
| 734 self.assertTrue(re.search(r"#define BUILD_NUMBER\s+5", version)) | 733 self.assertTrue(re.search(r"#define BUILD_NUMBER\s+5", version)) |
| 735 self.assertFalse(re.search(r"#define BUILD_NUMBER\s+6", version)) | 734 self.assertFalse(re.search(r"#define BUILD_NUMBER\s+6", version)) |
| 736 self.assertTrue(re.search(r"#define PATCH_LEVEL\s+0", version)) | 735 self.assertTrue(re.search(r"#define PATCH_LEVEL\s+0", version)) |
| (...skipping 14 matching lines...) Expand all Loading... |
| 751 Performance and stability improvements on all platforms.\n""", | 750 Performance and stability improvements on all platforms.\n""", |
| 752 change_log) | 751 change_log) |
| 753 | 752 |
| 754 force_flag = " -f" if not manual else "" | 753 force_flag = " -f" if not manual else "" |
| 755 expectations = [] | 754 expectations = [] |
| 756 if not force: | 755 if not force: |
| 757 expectations.append(Cmd("which vi", "/usr/bin/vi")) | 756 expectations.append(Cmd("which vi", "/usr/bin/vi")) |
| 758 expectations += [ | 757 expectations += [ |
| 759 Cmd("git status -s -uno", ""), | 758 Cmd("git status -s -uno", ""), |
| 760 Cmd("git status -s -b -uno", "## some_branch\n"), | 759 Cmd("git status -s -b -uno", "## some_branch\n"), |
| 760 Cmd("git fetch", ""), |
| 761 Cmd("git svn fetch", ""), | 761 Cmd("git svn fetch", ""), |
| 762 Cmd("git branch", " branch1\n* branch2\n"), | 762 Cmd("git branch", " branch1\n* branch2\n"), |
| 763 Cmd("git branch", " branch1\n* branch2\n"), | 763 Cmd("git branch", " branch1\n* branch2\n"), |
| 764 Cmd(("git new-branch %s --upstream svn/bleeding_edge" % | 764 Cmd(("git new-branch %s --upstream origin/master" % |
| 765 TEST_CONFIG["BRANCHNAME"]), | 765 TEST_CONFIG["BRANCHNAME"]), |
| 766 ""), | 766 ""), |
| 767 Cmd("git svn find-rev r123455", "push_hash\n"), | |
| 768 Cmd(("git log -1 --format=%H --grep=" | 767 Cmd(("git log -1 --format=%H --grep=" |
| 769 "\"^Version [[:digit:]]*\.[[:digit:]]*\.[[:digit:]]* (based\" " | 768 "\"^Version [[:digit:]]*\.[[:digit:]]*\.[[:digit:]]* (based\" " |
| 770 "svn/trunk"), "hash2\n"), | 769 "origin/candidates"), "hash2\n"), |
| 771 Cmd("git log -1 hash2", "Log message\n"), | 770 Cmd("git log -1 hash2", "Log message\n"), |
| 772 ] | 771 ] |
| 773 if manual: | 772 if manual: |
| 774 expectations.append(RL("Y")) # Confirm last push. | 773 expectations.append(RL("Y")) # Confirm last push. |
| 775 expectations += [ | 774 expectations += [ |
| 776 Cmd("git log -1 --format=%s hash2", | 775 Cmd("git log -1 --format=%s hash2", |
| 777 "Version 3.4.5 (based on bleeding_edge revision r1234)\n"), | 776 "Version 3.4.5 (based on abc3)\n"), |
| 778 Cmd("git svn find-rev r1234", "hash3\n"), | 777 Cmd("git checkout -f origin/master -- src/version.cc", |
| 779 Cmd("git checkout -f svn/bleeding_edge -- src/version.cc", | |
| 780 "", cb=self.WriteFakeVersionFile), | 778 "", cb=self.WriteFakeVersionFile), |
| 781 Cmd("git checkout -f hash2 -- src/version.cc", "", | 779 Cmd("git checkout -f hash2 -- src/version.cc", "", |
| 782 cb=self.WriteFakeVersionFile), | 780 cb=self.WriteFakeVersionFile), |
| 783 ] | 781 ] |
| 784 if manual: | 782 if manual: |
| 785 expectations.append(RL("")) # Increment build number. | 783 expectations.append(RL("")) # Increment build number. |
| 786 expectations += [ | 784 expectations += [ |
| 787 Cmd("git log --format=%H hash3..push_hash", "rev1\n"), | 785 Cmd("git log --format=%H abc3..push_hash", "rev1\n"), |
| 788 Cmd("git log -1 --format=%s rev1", "Log text 1.\n"), | 786 Cmd("git log -1 --format=%s rev1", "Log text 1.\n"), |
| 789 Cmd("git log -1 --format=%B rev1", "Text\nLOG=YES\nBUG=v8:321\nText\n"), | 787 Cmd("git log -1 --format=%B rev1", "Text\nLOG=YES\nBUG=v8:321\nText\n"), |
| 790 Cmd("git log -1 --format=%an rev1", "author1@chromium.org\n"), | 788 Cmd("git log -1 --format=%an rev1", "author1@chromium.org\n"), |
| 791 ] | 789 ] |
| 792 if manual: | 790 if manual: |
| 793 expectations.append(RL("")) # Open editor. | 791 expectations.append(RL("")) # Open editor. |
| 794 if not force: | 792 if not force: |
| 795 expectations.append( | 793 expectations.append( |
| 796 Cmd("vi %s" % TEST_CONFIG["CHANGELOG_ENTRY_FILE"], "")) | 794 Cmd("vi %s" % TEST_CONFIG["CHANGELOG_ENTRY_FILE"], "")) |
| 797 expectations += [ | 795 expectations += [ |
| 796 Cmd("git fetch", ""), |
| 798 Cmd("git svn fetch", "fetch result\n"), | 797 Cmd("git svn fetch", "fetch result\n"), |
| 799 Cmd("git checkout -f svn/bleeding_edge", ""), | 798 Cmd("git checkout -f origin/master", ""), |
| 800 Cmd("git diff svn/trunk push_hash", "patch content\n"), | 799 Cmd("git diff origin/candidates push_hash", "patch content\n"), |
| 801 Cmd("git svn find-rev push_hash", "123455\n"), | 800 Cmd(("git new-branch %s --upstream origin/candidates" % |
| 802 Cmd(("git new-branch %s --upstream svn/trunk" % | |
| 803 TEST_CONFIG["TRUNKBRANCH"]), "", cb=ResetToTrunk), | 801 TEST_CONFIG["TRUNKBRANCH"]), "", cb=ResetToTrunk), |
| 804 Cmd("git apply --index --reject \"%s\"" % TEST_CONFIG["PATCH_FILE"], ""), | 802 Cmd("git apply --index --reject \"%s\"" % TEST_CONFIG["PATCH_FILE"], ""), |
| 805 Cmd("git checkout -f svn/trunk -- %s" % TEST_CONFIG["CHANGELOG_FILE"], "", | 803 Cmd(("git checkout -f origin/candidates -- %s" % |
| 804 TEST_CONFIG["CHANGELOG_FILE"]), "", |
| 806 cb=ResetChangeLog), | 805 cb=ResetChangeLog), |
| 807 Cmd("git checkout -f svn/trunk -- src/version.cc", "", | 806 Cmd("git checkout -f origin/candidates -- src/version.cc", "", |
| 808 cb=self.WriteFakeVersionFile), | 807 cb=self.WriteFakeVersionFile), |
| 809 Cmd("git commit -aF \"%s\"" % TEST_CONFIG["COMMITMSG_FILE"], "", | 808 Cmd("git commit -aF \"%s\"" % TEST_CONFIG["COMMITMSG_FILE"], "", |
| 810 cb=CheckSVNCommit), | 809 cb=CheckSVNCommit), |
| 811 ] | 810 ] |
| 812 if manual: | 811 if manual: |
| 813 expectations.append(RL("Y")) # Sanity check. | 812 expectations.append(RL("Y")) # Sanity check. |
| 814 expectations += [ | 813 expectations += [ |
| 815 Cmd("git svn dcommit 2>&1", ""), | 814 Cmd("git svn dcommit 2>&1", ""), |
| 816 Cmd("git svn fetch", ""), | 815 Cmd("git fetch", ""), |
| 817 Cmd("git rebase svn/trunk", ""), | 816 Cmd("git log -1 --format=%H --grep="» |
| 818 Cmd("git svn tag 3.22.5 -m \"Tagging version 3.22.5\"", ""), | 817 "\"Version 3.22.5 (based on push_hash)\""» |
| 818 " origin/candidates", "hsh_to_tag"), |
| 819 Cmd("git tag 3.22.5 hsh_to_tag", ""), |
| 820 Cmd("git push origin 3.22.5", ""), |
| 819 Cmd("git checkout -f some_branch", ""), | 821 Cmd("git checkout -f some_branch", ""), |
| 820 Cmd("git branch -D %s" % TEST_CONFIG["BRANCHNAME"], ""), | 822 Cmd("git branch -D %s" % TEST_CONFIG["BRANCHNAME"], ""), |
| 821 Cmd("git branch -D %s" % TEST_CONFIG["TRUNKBRANCH"], ""), | 823 Cmd("git branch -D %s" % TEST_CONFIG["TRUNKBRANCH"], ""), |
| 822 ] | 824 ] |
| 823 self.Expect(expectations) | 825 self.Expect(expectations) |
| 824 | 826 |
| 825 args = ["-a", "author@chromium.org", "--revision", "123455", | 827 args = ["-a", "author@chromium.org", "--revision", "push_hash", |
| 826 "--vc-interface", "git_svn",] | 828 "--vc-interface", "git_read_svn_write",] |
| 827 if force: args.append("-f") | 829 if force: args.append("-f") |
| 828 if manual: args.append("-m") | 830 if manual: args.append("-m") |
| 829 else: args += ["-r", "reviewer@chromium.org"] | 831 else: args += ["-r", "reviewer@chromium.org"] |
| 830 PushToTrunk(TEST_CONFIG, self).Run(args) | 832 PushToTrunk(TEST_CONFIG, self).Run(args) |
| 831 | 833 |
| 832 cl = FileToText(TEST_CONFIG["CHANGELOG_FILE"]) | 834 cl = FileToText(TEST_CONFIG["CHANGELOG_FILE"]) |
| 833 self.assertTrue(re.search(r"^\d\d\d\d\-\d+\-\d+: Version 3\.22\.5", cl)) | 835 self.assertTrue(re.search(r"^\d\d\d\d\-\d+\-\d+: Version 3\.22\.5", cl)) |
| 834 self.assertTrue(re.search(r" Log text 1 \(issue 321\).", cl)) | 836 self.assertTrue(re.search(r" Log text 1 \(issue 321\).", cl)) |
| 835 self.assertTrue(re.search(r"1999\-04\-05: Version 3\.22\.4", cl)) | 837 self.assertTrue(re.search(r"1999\-04\-05: Version 3\.22\.4", cl)) |
| 836 | 838 |
| 837 # Note: The version file is on build number 5 again in the end of this test | 839 # Note: The version file is on build number 5 again in the end of this test |
| 838 # since the git command that merges to the bleeding edge branch is mocked | 840 # since the git command that merges to the bleeding edge branch is mocked |
| 839 # out. | 841 # out. |
| 840 | 842 |
| 841 def testPushToTrunkManual(self): | 843 def testPushToTrunkManual(self): |
| 842 self._PushToTrunk(manual=True) | 844 self._PushToTrunk(manual=True) |
| 843 | 845 |
| 844 def testPushToTrunkSemiAutomatic(self): | 846 def testPushToTrunkSemiAutomatic(self): |
| 845 self._PushToTrunk() | 847 self._PushToTrunk() |
| 846 | 848 |
| 847 def testPushToTrunkForced(self): | 849 def testPushToTrunkForced(self): |
| 848 self._PushToTrunk(force=True) | 850 self._PushToTrunk(force=True) |
| 849 | 851 |
| 850 def testPushToTrunkForcedNewGit(self): | |
| 851 TextToFile("", os.path.join(TEST_CONFIG["DEFAULT_CWD"], ".git")) | |
| 852 | |
| 853 # The version file on bleeding edge has build level 5, while the version | |
| 854 # file from trunk has build level 4. | |
| 855 self.WriteFakeVersionFile(build=5) | |
| 856 | |
| 857 TEST_CONFIG["CHANGELOG_ENTRY_FILE"] = self.MakeEmptyTempFile() | |
| 858 TEST_CONFIG["CHANGELOG_FILE"] = self.MakeEmptyTempFile() | |
| 859 bleeding_edge_change_log = "2014-03-17: Sentinel\n" | |
| 860 TextToFile(bleeding_edge_change_log, TEST_CONFIG["CHANGELOG_FILE"]) | |
| 861 | |
| 862 def ResetChangeLog(): | |
| 863 """On 'git co -b new_branch svn/trunk', and 'git checkout -- ChangeLog', | |
| 864 the ChangLog will be reset to its content on trunk.""" | |
| 865 trunk_change_log = """1999-04-05: Version 3.22.4 | |
| 866 | |
| 867 Performance and stability improvements on all platforms.\n""" | |
| 868 TextToFile(trunk_change_log, TEST_CONFIG["CHANGELOG_FILE"]) | |
| 869 | |
| 870 def ResetToTrunk(): | |
| 871 ResetChangeLog() | |
| 872 self.WriteFakeVersionFile() | |
| 873 | |
| 874 def CheckSVNCommit(): | |
| 875 commit = FileToText(TEST_CONFIG["COMMITMSG_FILE"]) | |
| 876 self.assertEquals( | |
| 877 """Version 3.22.5 (based on bleeding_edge revision r123455) | |
| 878 | |
| 879 Log text 1 (issue 321). | |
| 880 | |
| 881 Performance and stability improvements on all platforms.""", commit) | |
| 882 version = FileToText( | |
| 883 os.path.join(TEST_CONFIG["DEFAULT_CWD"], VERSION_FILE)) | |
| 884 self.assertTrue(re.search(r"#define MINOR_VERSION\s+22", version)) | |
| 885 self.assertTrue(re.search(r"#define BUILD_NUMBER\s+5", version)) | |
| 886 self.assertFalse(re.search(r"#define BUILD_NUMBER\s+6", version)) | |
| 887 self.assertTrue(re.search(r"#define PATCH_LEVEL\s+0", version)) | |
| 888 self.assertTrue(re.search(r"#define IS_CANDIDATE_VERSION\s+0", version)) | |
| 889 | |
| 890 # Check that the change log on the trunk branch got correctly modified. | |
| 891 change_log = FileToText(TEST_CONFIG["CHANGELOG_FILE"]) | |
| 892 self.assertEquals( | |
| 893 """1999-07-31: Version 3.22.5 | |
| 894 | |
| 895 Log text 1 (issue 321). | |
| 896 | |
| 897 Performance and stability improvements on all platforms. | |
| 898 | |
| 899 | |
| 900 1999-04-05: Version 3.22.4 | |
| 901 | |
| 902 Performance and stability improvements on all platforms.\n""", | |
| 903 change_log) | |
| 904 | |
| 905 expectations = [ | |
| 906 Cmd("git status -s -uno", ""), | |
| 907 Cmd("git status -s -b -uno", "## some_branch\n"), | |
| 908 Cmd("git fetch", ""), | |
| 909 Cmd("git svn fetch", ""), | |
| 910 Cmd("git branch", " branch1\n* branch2\n"), | |
| 911 Cmd("git branch", " branch1\n* branch2\n"), | |
| 912 Cmd(("git new-branch %s --upstream origin/master" % | |
| 913 TEST_CONFIG["BRANCHNAME"]), | |
| 914 ""), | |
| 915 Cmd("git svn find-rev r123455", "push_hash\n"), | |
| 916 Cmd(("git log -1 --format=%H --grep=" | |
| 917 "\"^Version [[:digit:]]*\.[[:digit:]]*\.[[:digit:]]* (based\" " | |
| 918 "origin/candidates"), "hash2\n"), | |
| 919 Cmd("git log -1 hash2", "Log message\n"), | |
| 920 Cmd("git log -1 --format=%s hash2", | |
| 921 "Version 3.4.5 (based on bleeding_edge revision r1234)\n"), | |
| 922 Cmd("git svn find-rev r1234", "hash3\n"), | |
| 923 Cmd("git checkout -f origin/master -- src/version.cc", | |
| 924 "", cb=self.WriteFakeVersionFile), | |
| 925 Cmd("git checkout -f hash2 -- src/version.cc", "", | |
| 926 cb=self.WriteFakeVersionFile), | |
| 927 Cmd("git log --format=%H hash3..push_hash", "rev1\n"), | |
| 928 Cmd("git log -1 --format=%s rev1", "Log text 1.\n"), | |
| 929 Cmd("git log -1 --format=%B rev1", "Text\nLOG=YES\nBUG=v8:321\nText\n"), | |
| 930 Cmd("git log -1 --format=%an rev1", "author1@chromium.org\n"), | |
| 931 Cmd("git fetch", "fetch result\n"), | |
| 932 Cmd("git svn fetch", ""), | |
| 933 Cmd("git checkout -f origin/master", ""), | |
| 934 Cmd("git diff origin/candidates push_hash", "patch content\n"), | |
| 935 Cmd("git svn find-rev push_hash", "123455\n"), | |
| 936 Cmd(("git new-branch %s --upstream origin/candidates" % | |
| 937 TEST_CONFIG["TRUNKBRANCH"]), | |
| 938 "", cb=ResetToTrunk), | |
| 939 Cmd("git apply --index --reject \"%s\"" % TEST_CONFIG["PATCH_FILE"], ""), | |
| 940 Cmd("git checkout -f origin/candidates -- %s" % | |
| 941 TEST_CONFIG["CHANGELOG_FILE"], "", cb=ResetChangeLog), | |
| 942 Cmd("git checkout -f origin/candidates -- src/version.cc", "", | |
| 943 cb=self.WriteFakeVersionFile), | |
| 944 Cmd("git commit -aF \"%s\"" % TEST_CONFIG["COMMITMSG_FILE"], "", | |
| 945 cb=CheckSVNCommit), | |
| 946 Cmd("git svn dcommit 2>&1", ""), | |
| 947 Cmd("git fetch", ""), | |
| 948 Cmd("git log -1 --format=%H --grep=" | |
| 949 "\"Version 3.22.5 (based on bleeding_edge revision r123455)\"" | |
| 950 " origin/candidates", "hsh_to_tag"), | |
| 951 Cmd("git tag 3.22.5 hsh_to_tag", ""), | |
| 952 Cmd("git push origin 3.22.5", ""), | |
| 953 Cmd("git checkout -f some_branch", ""), | |
| 954 Cmd("git branch -D %s" % TEST_CONFIG["BRANCHNAME"], ""), | |
| 955 Cmd("git branch -D %s" % TEST_CONFIG["TRUNKBRANCH"], ""), | |
| 956 ] | |
| 957 self.Expect(expectations) | |
| 958 | |
| 959 args = ["-a", "author@chromium.org", "--revision", "123455", | |
| 960 "--vc-interface", "git_read_svn_write", "-f", | |
| 961 "-r", "reviewer@chromium.org"] | |
| 962 PushToTrunk(TEST_CONFIG, self).Run(args) | |
| 963 | |
| 964 cl = FileToText(TEST_CONFIG["CHANGELOG_FILE"]) | |
| 965 self.assertTrue(re.search(r"^\d\d\d\d\-\d+\-\d+: Version 3\.22\.5", cl)) | |
| 966 self.assertTrue(re.search(r" Log text 1 \(issue 321\).", cl)) | |
| 967 self.assertTrue(re.search(r"1999\-04\-05: Version 3\.22\.4", cl)) | |
| 968 | |
| 969 # Note: The version file is on build number 5 again in the end of this test | |
| 970 # since the git command that merges to the bleeding edge branch is mocked | |
| 971 # out. | |
| 972 | |
| 973 C_V8_22624_LOG = """V8 CL. | 852 C_V8_22624_LOG = """V8 CL. |
| 974 | 853 |
| 975 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22624 123 | 854 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22624 123 |
| 976 | 855 |
| 977 """ | 856 """ |
| 978 | 857 |
| 979 C_V8_123455_LOG = """V8 CL. | 858 C_V8_123455_LOG = """V8 CL. |
| 980 | 859 |
| 981 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@123455 123 | 860 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@123455 123 |
| 982 | 861 |
| (...skipping 849 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1832 | 1711 |
| 1833 Review URL: https://codereview.chromium.org/83173002 | 1712 Review URL: https://codereview.chromium.org/83173002 |
| 1834 | 1713 |
| 1835 ------------------------------------------------------------------------""") | 1714 ------------------------------------------------------------------------""") |
| 1836 self.assertEquals( | 1715 self.assertEquals( |
| 1837 """Prepare push to trunk. Now working on version 3.23.11. | 1716 """Prepare push to trunk. Now working on version 3.23.11. |
| 1838 | 1717 |
| 1839 R=danno@chromium.org | 1718 R=danno@chromium.org |
| 1840 | 1719 |
| 1841 Committed: https://code.google.com/p/v8/source/detail?r=17997""", body) | 1720 Committed: https://code.google.com/p/v8/source/detail?r=17997""", body) |
| OLD | NEW |