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

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

Issue 199893005: Deprecate ChangeLog on bleeding_edge. (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
« no previous file with comments | « tools/push-to-trunk/push_to_trunk.py ('k') | no next file » | 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/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 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
45 45
46 TEST_CONFIG = { 46 TEST_CONFIG = {
47 BRANCHNAME: "test-prepare-push", 47 BRANCHNAME: "test-prepare-push",
48 TRUNKBRANCH: "test-trunk-push", 48 TRUNKBRANCH: "test-trunk-push",
49 PERSISTFILE_BASENAME: "/tmp/test-v8-push-to-trunk-tempfile", 49 PERSISTFILE_BASENAME: "/tmp/test-v8-push-to-trunk-tempfile",
50 TEMP_BRANCH: "test-prepare-push-temporary-branch-created-by-script", 50 TEMP_BRANCH: "test-prepare-push-temporary-branch-created-by-script",
51 DOT_GIT_LOCATION: None, 51 DOT_GIT_LOCATION: None,
52 VERSION_FILE: None, 52 VERSION_FILE: None,
53 CHANGELOG_FILE: None, 53 CHANGELOG_FILE: None,
54 CHANGELOG_ENTRY_FILE: "/tmp/test-v8-push-to-trunk-tempfile-changelog-entry", 54 CHANGELOG_ENTRY_FILE: "/tmp/test-v8-push-to-trunk-tempfile-changelog-entry",
55 NEW_CHANGELOG_FILE: "/tmp/test-v8-push-to-trunk-tempfile-new-changelog",
56 PATCH_FILE: "/tmp/test-v8-push-to-trunk-tempfile-patch", 55 PATCH_FILE: "/tmp/test-v8-push-to-trunk-tempfile-patch",
57 COMMITMSG_FILE: "/tmp/test-v8-push-to-trunk-tempfile-commitmsg", 56 COMMITMSG_FILE: "/tmp/test-v8-push-to-trunk-tempfile-commitmsg",
58 CHROMIUM: "/tmp/test-v8-push-to-trunk-tempfile-chromium", 57 CHROMIUM: "/tmp/test-v8-push-to-trunk-tempfile-chromium",
59 DEPS_FILE: "/tmp/test-v8-push-to-trunk-tempfile-chromium/DEPS", 58 DEPS_FILE: "/tmp/test-v8-push-to-trunk-tempfile-chromium/DEPS",
60 SETTINGS_LOCATION: None, 59 SETTINGS_LOCATION: None,
61 ALREADY_MERGING_SENTINEL_FILE: 60 ALREADY_MERGING_SENTINEL_FILE:
62 "/tmp/test-merge-to-branch-tempfile-already-merging", 61 "/tmp/test-merge-to-branch-tempfile-already-merging",
63 COMMIT_HASHES_FILE: "/tmp/test-merge-to-branch-tempfile-PATCH_COMMIT_HASHES", 62 COMMIT_HASHES_FILE: "/tmp/test-merge-to-branch-tempfile-PATCH_COMMIT_HASHES",
64 TEMPORARY_PATCH_FILE: "/tmp/test-merge-to-branch-tempfile-temporary-patch", 63 TEMPORARY_PATCH_FILE: "/tmp/test-merge-to-branch-tempfile-temporary-patch",
65 } 64 }
(...skipping 465 matching lines...) Expand 10 before | Expand all | Expand 10 after
531 #""" 530 #"""
532 531
533 self.assertEquals(expected_cl, actual_cl) 532 self.assertEquals(expected_cl, actual_cl)
534 self.assertEquals("3", self._state["major"]) 533 self.assertEquals("3", self._state["major"])
535 self.assertEquals("22", self._state["minor"]) 534 self.assertEquals("22", self._state["minor"])
536 self.assertEquals("5", self._state["build"]) 535 self.assertEquals("5", self._state["build"])
537 self.assertEquals("0", self._state["patch"]) 536 self.assertEquals("0", self._state["patch"])
538 537
539 def testEditChangeLog(self): 538 def testEditChangeLog(self):
540 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile() 539 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile()
541 TEST_CONFIG[CHANGELOG_FILE] = self.MakeEmptyTempFile()
542 TextToFile(" Original CL", TEST_CONFIG[CHANGELOG_FILE])
543 TextToFile(" New \n\tLines \n", TEST_CONFIG[CHANGELOG_ENTRY_FILE]) 540 TextToFile(" New \n\tLines \n", TEST_CONFIG[CHANGELOG_ENTRY_FILE])
544 os.environ["EDITOR"] = "vi" 541 os.environ["EDITOR"] = "vi"
545 542
546 self.ExpectReadline([ 543 self.ExpectReadline([
547 RL(""), # Open editor. 544 RL(""), # Open editor.
548 ]) 545 ])
549 546
550 self.RunStep(PushToTrunk, EditChangeLog) 547 self.RunStep(PushToTrunk, EditChangeLog)
551 548
552 self.assertEquals("New\n Lines\n\n\n Original CL", 549 self.assertEquals("New\n Lines",
553 FileToText(TEST_CONFIG[CHANGELOG_FILE])) 550 FileToText(TEST_CONFIG[CHANGELOG_ENTRY_FILE]))
554 551
555 def testIncrementVersion(self): 552 def testIncrementVersion(self):
556 TEST_CONFIG[VERSION_FILE] = self.MakeTempVersionFile() 553 TEST_CONFIG[VERSION_FILE] = self.MakeTempVersionFile()
557 self._state["build"] = "5" 554 self._state["build"] = "5"
558 555
559 self.ExpectReadline([ 556 self.ExpectReadline([
560 RL("Y"), # Increment build number. 557 RL("Y"), # Increment build number.
561 ]) 558 ])
562 559
563 self.RunStep(PushToTrunk, IncrementVersion) 560 self.RunStep(PushToTrunk, IncrementVersion)
564 561
565 self.assertEquals("3", self._state["new_major"]) 562 self.assertEquals("3", self._state["new_major"])
566 self.assertEquals("22", self._state["new_minor"]) 563 self.assertEquals("22", self._state["new_minor"])
567 self.assertEquals("6", self._state["new_build"]) 564 self.assertEquals("6", self._state["new_build"])
568 self.assertEquals("0", self._state["new_patch"]) 565 self.assertEquals("0", self._state["new_patch"])
569 566
570 def testLastChangeLogEntries(self):
571 TEST_CONFIG[CHANGELOG_FILE] = self.MakeEmptyTempFile()
572 l = """
573 Fixed something.
574 (issue 1234)\n"""
575 for _ in xrange(10): l = l + l
576
577 cl_chunk = """2013-11-12: Version 3.23.2\n%s
578 Performance and stability improvements on all platforms.\n\n\n""" % l
579
580 cl_chunk_full = cl_chunk + cl_chunk + cl_chunk
581 TextToFile(cl_chunk_full, TEST_CONFIG[CHANGELOG_FILE])
582
583 cl = GetLastChangeLogEntries(TEST_CONFIG[CHANGELOG_FILE])
584 self.assertEquals(cl_chunk, cl)
585
586 def _TestSquashCommits(self, change_log, expected_msg): 567 def _TestSquashCommits(self, change_log, expected_msg):
587 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile() 568 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile()
588 with open(TEST_CONFIG[CHANGELOG_ENTRY_FILE], "w") as f: 569 with open(TEST_CONFIG[CHANGELOG_ENTRY_FILE], "w") as f:
589 f.write(change_log) 570 f.write(change_log)
590 571
591 self.ExpectGit([ 572 self.ExpectGit([
592 Git("diff svn/trunk hash1", "patch content"), 573 Git("diff svn/trunk hash1", "patch content"),
593 Git("svn find-rev hash1", "123455\n"), 574 Git("svn find-rev hash1", "123455\n"),
594 ]) 575 ])
595 576
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
635 commit_msg = """Line with "quotation marks".""" 616 commit_msg = """Line with "quotation marks"."""
636 self._TestSquashCommits(change_log, commit_msg) 617 self._TestSquashCommits(change_log, commit_msg)
637 618
638 def _PushToTrunk(self, force=False, manual=False): 619 def _PushToTrunk(self, force=False, manual=False):
639 TEST_CONFIG[DOT_GIT_LOCATION] = self.MakeEmptyTempFile() 620 TEST_CONFIG[DOT_GIT_LOCATION] = self.MakeEmptyTempFile()
640 TEST_CONFIG[VERSION_FILE] = self.MakeTempVersionFile() 621 TEST_CONFIG[VERSION_FILE] = self.MakeTempVersionFile()
641 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile() 622 TEST_CONFIG[CHANGELOG_ENTRY_FILE] = self.MakeEmptyTempFile()
642 TEST_CONFIG[CHANGELOG_FILE] = self.MakeEmptyTempFile() 623 TEST_CONFIG[CHANGELOG_FILE] = self.MakeEmptyTempFile()
643 if not os.path.exists(TEST_CONFIG[CHROMIUM]): 624 if not os.path.exists(TEST_CONFIG[CHROMIUM]):
644 os.makedirs(TEST_CONFIG[CHROMIUM]) 625 os.makedirs(TEST_CONFIG[CHROMIUM])
645 bleeding_edge_change_log = """1999-02-03: Version 3.12.2 626 bleeding_edge_change_log = "2014-03-17: Sentinel\n"
646
647 Performance and stability improvements on all platforms.\n"""
648 TextToFile(bleeding_edge_change_log, TEST_CONFIG[CHANGELOG_FILE]) 627 TextToFile(bleeding_edge_change_log, TEST_CONFIG[CHANGELOG_FILE])
649 TextToFile("Some line\n \"v8_revision\": \"123444\",\n some line", 628 TextToFile("Some line\n \"v8_revision\": \"123444\",\n some line",
650 TEST_CONFIG[DEPS_FILE]) 629 TEST_CONFIG[DEPS_FILE])
651 os.environ["EDITOR"] = "vi" 630 os.environ["EDITOR"] = "vi"
652 631
653 def CheckPreparePush(): 632 def CheckPreparePush():
654 cl = FileToText(TEST_CONFIG[CHANGELOG_FILE]) 633 self.assertEquals(bleeding_edge_change_log,
655 self.assertTrue(re.search(r"Version 3.22.5", cl)) 634 FileToText(TEST_CONFIG[CHANGELOG_FILE]))
656 self.assertTrue(re.search(r" Log text 1 \(issue 321\).", cl))
657 self.assertFalse(re.search(r" \(author1@chromium\.org\)", cl))
658
659 # Make sure all comments got stripped.
660 self.assertFalse(re.search(r"^#", cl, flags=re.M))
661 635
662 version = FileToText(TEST_CONFIG[VERSION_FILE]) 636 version = FileToText(TEST_CONFIG[VERSION_FILE])
663 self.assertTrue(re.search(r"#define BUILD_NUMBER\s+6", version)) 637 self.assertTrue(re.search(r"#define BUILD_NUMBER\s+6", version))
664 638
665 def ResetChangeLog(): 639 def ResetChangeLog():
666 """On 'git co -b new_branch svn/trunk', and 'git checkout -- ChangeLog', 640 """On 'git co -b new_branch svn/trunk', and 'git checkout -- ChangeLog',
667 the ChangLog will be reset to its content on trunk.""" 641 the ChangLog will be reset to its content on trunk."""
668 trunk_change_log = """1999-04-05: Version 3.22.4 642 trunk_change_log = """1999-04-05: Version 3.22.4
669 643
670 Performance and stability improvements on all platforms.\n""" 644 Performance and stability improvements on all platforms.\n"""
(...skipping 371 matching lines...) Expand 10 before | Expand all | Expand 10 after
1042 1016
1043 Review URL: https://codereview.chromium.org/83173002 1017 Review URL: https://codereview.chromium.org/83173002
1044 1018
1045 ------------------------------------------------------------------------""") 1019 ------------------------------------------------------------------------""")
1046 self.assertEquals( 1020 self.assertEquals(
1047 """Prepare push to trunk. Now working on version 3.23.11. 1021 """Prepare push to trunk. Now working on version 3.23.11.
1048 1022
1049 R=danno@chromium.org 1023 R=danno@chromium.org
1050 1024
1051 Committed: https://code.google.com/p/v8/source/detail?r=17997""", body) 1025 Committed: https://code.google.com/p/v8/source/detail?r=17997""", body)
OLDNEW
« no previous file with comments | « 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