Merge lp:~jelmer/bzr-builddeb/move-tag-upstream-version into lp:bzr-builddeb

Proposed by Jelmer Vernooij
Status: Merged
Approved by: James Westby
Approved revision: 654
Merged at revision: 655
Proposed branch: lp:~jelmer/bzr-builddeb/move-tag-upstream-version
Merge into: lp:bzr-builddeb
Diff against target: 273 lines (+54/-54)
2 files modified
import_dsc.py (+0/-21)
tests/test_import_dsc.py (+54/-33)
To merge this branch: bzr merge lp:~jelmer/bzr-builddeb/move-tag-upstream-version
Reviewer Review Type Date Requested Status
Bzr-builddeb-hackers Pending
Review via email: mp+84251@code.launchpad.net

Description of the change

DistributionBranch.tag_upstream_version is only used in the testsuite, so move it there. DistributionBranch is already big enough as it as :-)

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'import_dsc.py'
--- import_dsc.py 2011-11-29 14:34:28 +0000
+++ import_dsc.py 2011-12-02 11:56:28 +0000
@@ -444,27 +444,6 @@
444 self.branch.tags.set_tag(tag_name, revid)444 self.branch.tags.set_tag(tag_name, revid)
445 return tag_name445 return tag_name
446446
447 def tag_upstream_version(self, version, revid=None):
448 """Tags the upstream branch's last revision with an upstream version.
449
450 Sets a tag on the last revision of the upstream branch and on the main
451 branch with a tag that refers to the upstream part of the version
452 provided.
453
454 :param version: the upstream part of the version number to derive the
455 tag name from.
456 :param revid: the revid to associate the tag with, or None for the
457 tip of self.pristine_upstream_branch.
458 :return The tag name, revid of the added tag.
459 """
460 assert isinstance(version, str)
461 tag_name = self.pristine_upstream_source.tag_name(version)
462 if revid is None:
463 revid = self.pristine_upstream_branch.last_revision()
464 self.pristine_upstream_source.tag_version(version, revid)
465 self.branch.fetch(self.pristine_upstream_branch)
466 self.branch.tags.set_tag(tag_name, revid)
467 return tag_name, revid
468447
469 def _default_config_for_tree(self, tree):448 def _default_config_for_tree(self, tree):
470 # FIXME: shouldn't go to configobj directly449 # FIXME: shouldn't go to configobj directly
471450
=== modified file 'tests/test_import_dsc.py'
--- tests/test_import_dsc.py 2011-11-29 15:12:11 +0000
+++ tests/test_import_dsc.py 2011-12-02 11:56:28 +0000
@@ -146,6 +146,27 @@
146 def do_commit_with_md5(self, tree, message, md5):146 def do_commit_with_md5(self, tree, message, md5):
147 return tree.commit(message, revprops={"deb-md5":md5})147 return tree.commit(message, revprops={"deb-md5":md5})
148148
149 def tag_upstream_version(self, db, version):
150 """Tags the upstream branch's last revision with an upstream version.
151
152 Sets a tag on the last revision of the upstream branch and on the main
153 branch with a tag that refers to the upstream part of the version
154 provided.
155
156 :param version: the upstream part of the version number to derive the
157 tag name from.
158 :param revid: the revid to associate the tag with, or None for the
159 tip of self.pristine_upstream_branch.
160 :return The tag name, revid of the added tag.
161 """
162 assert isinstance(version, str)
163 tag_name = db.pristine_upstream_source.tag_name(version)
164 revid = db.pristine_upstream_branch.last_revision()
165 db.pristine_upstream_source.tag_version(version, revid)
166 db.branch.fetch(db.pristine_upstream_branch)
167 db.branch.tags.set_tag(tag_name, revid)
168 return tag_name, revid
169
149 def test_create(self):170 def test_create(self):
150 db = self.db1171 db = self.db1
151 self.assertNotEqual(db, None)172 self.assertNotEqual(db, None)
@@ -174,7 +195,7 @@
174 tree = self.up_tree1195 tree = self.up_tree1
175 version = "0.1"196 version = "0.1"
176 revid = tree.commit("one")197 revid = tree.commit("one")
177 db.tag_upstream_version(version)198 self.tag_upstream_version(db, version)
178 tag_name = db.pristine_upstream_source.tag_name(version)199 tag_name = db.pristine_upstream_source.tag_name(version)
179 self.assertEqual(tree.branch.tags.lookup_tag(tag_name), revid)200 self.assertEqual(tree.branch.tags.lookup_tag(tag_name), revid)
180201
@@ -200,7 +221,7 @@
200 self.assertFalse(db.pristine_upstream_source.has_version("package", version,221 self.assertFalse(db.pristine_upstream_source.has_version("package", version,
201 [("foo.tar.gz", None, self.fake_md5_1)]))222 [("foo.tar.gz", None, self.fake_md5_1)]))
202 self.do_commit_with_md5(self.up_tree1, "one", self.fake_md5_1)223 self.do_commit_with_md5(self.up_tree1, "one", self.fake_md5_1)
203 db.tag_upstream_version(version)224 self.tag_upstream_version(db, version)
204 self.assertTrue(db.pristine_upstream_source.has_version("package", version))225 self.assertTrue(db.pristine_upstream_source.has_version("package", version))
205 self.assertTrue(db.pristine_upstream_source.has_version("package",226 self.assertTrue(db.pristine_upstream_source.has_version("package",
206 version, [("foo.tar.gz", None, self.fake_md5_1)]))227 version, [("foo.tar.gz", None, self.fake_md5_1)]))
@@ -232,7 +253,7 @@
232 tree = self.up_tree1253 tree = self.up_tree1
233 version = "0.1"254 version = "0.1"
234 revid = tree.commit("one")255 revid = tree.commit("one")
235 db.tag_upstream_version(version)256 self.tag_upstream_version(db, version)
236 self.assertEqual(257 self.assertEqual(
237 db.pristine_upstream_source.version_as_revisions("package", version), 258 db.pristine_upstream_source.version_as_revisions("package", version),
238 { None: revid })259 { None: revid })
@@ -424,13 +445,13 @@
424 db = self.db1445 db = self.db1
425 version1 = Version("0.1-1")446 version1 = Version("0.1-1")
426 up_revid = self.up_tree1.commit("one")447 up_revid = self.up_tree1.commit("one")
427 db.tag_upstream_version(version1.upstream_version)448 self.tag_upstream_version(db, version1.upstream_version)
428 self.assertEqual(449 self.assertEqual(
429 db.get_parents_with_upstream("package", version1, [version1], None),450 db.get_parents_with_upstream("package", version1, [version1], None),
430 [up_revid])451 [up_revid])
431 db = self.db2452 db = self.db2
432 self.up_tree2.pull(self.up_tree1.branch)453 self.up_tree2.pull(self.up_tree1.branch)
433 db.tag_upstream_version(version1.upstream_version)454 self.tag_upstream_version(db, version1.upstream_version)
434 self.assertEqual(455 self.assertEqual(
435 db.get_parents_with_upstream("package", version1, [version1], None),456 db.get_parents_with_upstream("package", version1, [version1], None),
436 [up_revid])457 [up_revid])
@@ -442,7 +463,7 @@
442 revid1 = self.tree1.commit("one")463 revid1 = self.tree1.commit("one")
443 db.tag_version(version1)464 db.tag_version(version1)
444 up_revid = self.up_tree1.commit("upstream one")465 up_revid = self.up_tree1.commit("upstream one")
445 db.tag_upstream_version(version1.upstream_version)466 self.tag_upstream_version(db, version1.upstream_version)
446 # No upstream parent467 # No upstream parent
447 self.assertEqual(db.get_parents_with_upstream(468 self.assertEqual(db.get_parents_with_upstream(
448 "package", version2, [version2, version1], None), [revid1])469 "package", version2, [version2, version1], None), [revid1])
@@ -457,8 +478,8 @@
457 self.db2.tag_version(version2)478 self.db2.tag_version(version2)
458 up_revid1 = self.up_tree1.commit("upstream one")479 up_revid1 = self.up_tree1.commit("upstream one")
459 self.up_tree2.pull(self.up_tree1.branch)480 self.up_tree2.pull(self.up_tree1.branch)
460 self.db1.tag_upstream_version(version1.upstream_version)481 self.tag_upstream_version(self.db1, version1.upstream_version)
461 self.db2.tag_upstream_version(version2.upstream_version)482 self.tag_upstream_version(self.db2, version2.upstream_version)
462 versions = [version3, version1, version2]483 versions = [version3, version1, version2]
463 # No upstream parent484 # No upstream parent
464 self.assertEqual(self.db2.get_parents_with_upstream(485 self.assertEqual(self.db2.get_parents_with_upstream(
@@ -474,8 +495,8 @@
474 self.db2.tag_version(version2)495 self.db2.tag_version(version2)
475 up_revid1 = self.up_tree1.commit("upstream one")496 up_revid1 = self.up_tree1.commit("upstream one")
476 self.up_tree2.pull(self.up_tree1.branch)497 self.up_tree2.pull(self.up_tree1.branch)
477 self.db1.tag_upstream_version(version1.upstream_version)498 self.tag_upstream_version(self.db1, version1.upstream_version)
478 self.db2.tag_upstream_version(version2.upstream_version)499 self.tag_upstream_version(self.db2, version2.upstream_version)
479 versions = [version3, version2, version1]500 versions = [version3, version2, version1]
480 # No upstream parent501 # No upstream parent
481 self.assertEqual(self.db1.get_parents_with_upstream(502 self.assertEqual(self.db1.get_parents_with_upstream(
@@ -490,8 +511,8 @@
490 self.db2.tag_version(version1)511 self.db2.tag_version(version1)
491 up_revid1 = self.up_tree1.commit("upstream one")512 up_revid1 = self.up_tree1.commit("upstream one")
492 up_revid2 = self.up_tree2.commit("upstream two")513 up_revid2 = self.up_tree2.commit("upstream two")
493 self.db1.tag_upstream_version(version1.upstream_version)514 self.tag_upstream_version(self.db1, version1.upstream_version)
494 self.db2.tag_upstream_version(version2.upstream_version)515 self.tag_upstream_version(self.db2, version2.upstream_version)
495 versions = [version2, version1]516 versions = [version2, version1]
496 # Upstream parent as it is new upstream version517 # Upstream parent as it is new upstream version
497 self.assertEqual(self.db2.get_parents_with_upstream(518 self.assertEqual(self.db2.get_parents_with_upstream(
@@ -509,13 +530,13 @@
509 revid3 = self.tree1.commit("three")530 revid3 = self.tree1.commit("three")
510 self.db1.tag_version(version3)531 self.db1.tag_version(version3)
511 up_revid1 = self.up_tree1.commit("upstream one")532 up_revid1 = self.up_tree1.commit("upstream one")
512 self.db1.tag_upstream_version(version1.upstream_version)533 self.tag_upstream_version(self.db1, version1.upstream_version)
513 self.up_tree2.pull(self.up_tree1.branch)534 self.up_tree2.pull(self.up_tree1.branch)
514 self.db2.tag_upstream_version(version2.upstream_version)535 self.tag_upstream_version(self.db2, version2.upstream_version)
515 up_revid2 = self.up_tree1.commit("upstream two")536 up_revid2 = self.up_tree1.commit("upstream two")
516 self.db1.tag_upstream_version(version3.upstream_version)537 self.tag_upstream_version(self.db1, version3.upstream_version)
517 self.up_tree2.pull(self.up_tree1.branch)538 self.up_tree2.pull(self.up_tree1.branch)
518 self.db2.tag_upstream_version(version4.upstream_version)539 self.tag_upstream_version(self.db2, version4.upstream_version)
519 versions = [version4, version3, version2, version1]540 versions = [version4, version3, version2, version1]
520 # no upstream parent as the lesser branch has already merged it541 # no upstream parent as the lesser branch has already merged it
521 self.assertEqual(self.db2.get_parents_with_upstream(542 self.assertEqual(self.db2.get_parents_with_upstream(
@@ -527,9 +548,9 @@
527 revid1 = self.tree1.commit("one")548 revid1 = self.tree1.commit("one")
528 self.db1.tag_version(version1)549 self.db1.tag_version(version1)
529 up_revid1 = self.up_tree1.commit("upstream one")550 up_revid1 = self.up_tree1.commit("upstream one")
530 self.db1.tag_upstream_version(version1.upstream_version)551 self.tag_upstream_version(self.db1, version1.upstream_version)
531 up_revid2 = self.up_tree2.commit("different upstream one")552 up_revid2 = self.up_tree2.commit("different upstream one")
532 self.db2.tag_upstream_version(version2.upstream_version)553 self.tag_upstream_version(self.db2, version2.upstream_version)
533 versions = [version2, version1]554 versions = [version2, version1]
534 # a previous test checked that this wouldn't give an555 # a previous test checked that this wouldn't give an
535 # upstream parent, but we are requiring one.556 # upstream parent, but we are requiring one.
@@ -548,9 +569,9 @@
548 self.db2.tag_version(version2)569 self.db2.tag_version(version2)
549 self.db1.tag_version(version3)570 self.db1.tag_version(version3)
550 up_revid1 = self.up_tree1.commit("upstream one")571 up_revid1 = self.up_tree1.commit("upstream one")
551 self.db1.tag_upstream_version(version1.upstream_version)572 self.tag_upstream_version(self.db1, version1.upstream_version)
552 self.up_tree2.pull(self.up_tree1.branch)573 self.up_tree2.pull(self.up_tree1.branch)
553 self.db2.tag_upstream_version(version2.upstream_version)574 self.tag_upstream_version(self.db2, version2.upstream_version)
554 versions = [version3, version2, version1]575 versions = [version3, version2, version1]
555 # This is a sync but we are diverged so we should get two576 # This is a sync but we are diverged so we should get two
556 # parents577 # parents
@@ -568,11 +589,11 @@
568 self.db2.tag_version(version2)589 self.db2.tag_version(version2)
569 self.db1.tag_version(version3)590 self.db1.tag_version(version3)
570 up_revid1 = self.up_tree1.commit("upstream one")591 up_revid1 = self.up_tree1.commit("upstream one")
571 self.db1.tag_upstream_version(version1.upstream_version)592 self.tag_upstream_version(self.db1, version1.upstream_version)
572 self.up_tree2.pull(self.up_tree1.branch)593 self.up_tree2.pull(self.up_tree1.branch)
573 self.db2.tag_upstream_version(version2.upstream_version)594 self.tag_upstream_version(self.db2, version2.upstream_version)
574 up_revid2 = self.up_tree1.commit("upstream two")595 up_revid2 = self.up_tree1.commit("upstream two")
575 self.db1.tag_upstream_version(version3.upstream_version)596 self.tag_upstream_version(self.db1, version3.upstream_version)
576 versions = [version3, version2, version1]597 versions = [version3, version2, version1]
577 # This a sync, but we are diverged, so we should get two598 # This a sync, but we are diverged, so we should get two
578 # parents. There should be no upstream as the synced599 # parents. There should be no upstream as the synced
@@ -591,14 +612,14 @@
591 self.db2.tag_version(version2)612 self.db2.tag_version(version2)
592 self.db1.tag_version(version3)613 self.db1.tag_version(version3)
593 up_revid1 = self.up_tree1.commit("upstream one")614 up_revid1 = self.up_tree1.commit("upstream one")
594 self.db1.tag_upstream_version(version1.upstream_version)615 self.tag_upstream_version(self.db1, version1.upstream_version)
595 self.up_tree2.pull(self.up_tree1.branch)616 self.up_tree2.pull(self.up_tree1.branch)
596 self.db2.tag_upstream_version(version2.upstream_version)617 self.tag_upstream_version(self.db2, version2.upstream_version)
597 up_revid2 = self.up_tree1.commit("upstream two")618 up_revid2 = self.up_tree1.commit("upstream two")
598 self.db1.tag_upstream_version(version3.upstream_version)619 self.tag_upstream_version(self.db1, version3.upstream_version)
599 versions = [version3, version2, version1]620 versions = [version3, version2, version1]
600 up_revid3 = self.up_tree2.commit("different upstream two")621 up_revid3 = self.up_tree2.commit("different upstream two")
601 self.db2.tag_upstream_version(version3.upstream_version)622 self.tag_upstream_version(self.db2, version3.upstream_version)
602 versions = [version3, version2, version1]623 versions = [version3, version2, version1]
603 # test_get_parents_with_upstream_sync_new_upstream624 # test_get_parents_with_upstream_sync_new_upstream
604 # checks that there is not normally an upstream parent625 # checks that there is not normally an upstream parent
@@ -675,7 +696,7 @@
675 version1.upstream_version, [("foo.tar.gz", None, self.fake_md5_1)])696 version1.upstream_version, [("foo.tar.gz", None, self.fake_md5_1)])
676 self.assertEqual(branch, None)697 self.assertEqual(branch, None)
677 self.do_commit_with_md5(self.up_tree1, "one", self.fake_md5_1)698 self.do_commit_with_md5(self.up_tree1, "one", self.fake_md5_1)
678 self.db1.tag_upstream_version(version1.upstream_version)699 self.tag_upstream_version(self.db1, version1.upstream_version)
679 # Version and md5 available, so we get the correct branch.700 # Version and md5 available, so we get the correct branch.
680 branch = self.db2.branch_to_pull_upstream_from("package",701 branch = self.db2.branch_to_pull_upstream_from("package",
681 version1.upstream_version, [("foo.tar.gz", None, self.fake_md5_1)])702 version1.upstream_version, [("foo.tar.gz", None, self.fake_md5_1)])
@@ -698,7 +719,7 @@
698 version1.upstream_version, [("foo.tar.gz", None, self.fake_md5_1)])719 version1.upstream_version, [("foo.tar.gz", None, self.fake_md5_1)])
699 self.assertEqual(branch, None)720 self.assertEqual(branch, None)
700 self.up_tree2.pull(self.up_tree1.branch)721 self.up_tree2.pull(self.up_tree1.branch)
701 self.db2.tag_upstream_version(version1.upstream_version)722 self.tag_upstream_version(self.db2, version1.upstream_version)
702 # And we get the greatest branch when two lesser branches723 # And we get the greatest branch when two lesser branches
703 # have what we are looking for.724 # have what we are looking for.
704 branch = self.db3.branch_to_pull_upstream_from("package",725 branch = self.db3.branch_to_pull_upstream_from("package",
@@ -714,10 +735,10 @@
714 version = Version("0.1-1")735 version = Version("0.1-1")
715 self.do_commit_with_md5(self.up_tree1, "upstream one",736 self.do_commit_with_md5(self.up_tree1, "upstream one",
716 self.fake_md5_1)737 self.fake_md5_1)
717 self.db1.tag_upstream_version(version.upstream_version)738 self.tag_upstream_version(self.db1, version.upstream_version)
718 up_revid = self.do_commit_with_md5(self.up_tree2, "upstream two",739 up_revid = self.do_commit_with_md5(self.up_tree2, "upstream two",
719 self.fake_md5_1)740 self.fake_md5_1)
720 self.db2.tag_upstream_version(version.upstream_version)741 self.tag_upstream_version(self.db2, version.upstream_version)
721 revid = self.do_commit_with_md5(self.tree1, "one", self.fake_md5_2)742 revid = self.do_commit_with_md5(self.tree1, "one", self.fake_md5_2)
722 self.db1.tag_version(version)743 self.db1.tag_version(version)
723 self.assertNotEqual(self.tree2.branch.last_revision(), revid)744 self.assertNotEqual(self.tree2.branch.last_revision(), revid)
@@ -732,7 +753,7 @@
732 version = Version("0.1-1")753 version = Version("0.1-1")
733 up_revid = self.do_commit_with_md5(self.up_tree1, "upstream one",754 up_revid = self.do_commit_with_md5(self.up_tree1, "upstream one",
734 self.fake_md5_1)755 self.fake_md5_1)
735 self.db1.tag_upstream_version(version.upstream_version)756 self.tag_upstream_version(self.db1, version.upstream_version)
736 revid = self.do_commit_with_md5(self.tree1, "one", self.fake_md5_2)757 revid = self.do_commit_with_md5(self.tree1, "one", self.fake_md5_2)
737 self.db1.tag_version(version)758 self.db1.tag_version(version)
738 self.assertNotEqual(self.tree2.branch.last_revision(), revid)759 self.assertNotEqual(self.tree2.branch.last_revision(), revid)
@@ -748,7 +769,7 @@
748 version = "0.1"769 version = "0.1"
749 up_revid = self.do_commit_with_md5(self.up_tree1, "upstream one",770 up_revid = self.do_commit_with_md5(self.up_tree1, "upstream one",
750 self.fake_md5_1)771 self.fake_md5_1)
751 self.db1.tag_upstream_version(version)772 self.tag_upstream_version(self.db1, version)
752 self.assertNotEqual(self.up_tree2.branch.last_revision(), up_revid)773 self.assertNotEqual(self.up_tree2.branch.last_revision(), up_revid)
753 self.db2.pull_upstream_from_branch(self.db1, "package", version)774 self.db2.pull_upstream_from_branch(self.db1, "package", version)
754 self.assertEqual(self.up_tree2.branch.last_revision(), up_revid)775 self.assertEqual(self.up_tree2.branch.last_revision(), up_revid)

Subscribers

People subscribed via source and target branches