Merge lp:~jelmer/bzr-builddeb/version-as-rev-nosuchtag into lp:~jelmer/bzr-builddeb/716854-fix-build

Proposed by Jelmer Vernooij
Status: Superseded
Proposed branch: lp:~jelmer/bzr-builddeb/version-as-rev-nosuchtag
Merge into: lp:~jelmer/bzr-builddeb/716854-fix-build
Diff against target: 85 lines (+44/-1)
2 files modified
tests/test_upstream.py (+39/-0)
upstream/__init__.py (+5/-1)
To merge this branch: bzr merge lp:~jelmer/bzr-builddeb/version-as-rev-nosuchtag
Reviewer Review Type Date Requested Status
Jelmer Vernooij Pending
Review via email: mp+49487@code.launchpad.net

This proposal has been superseded by a proposal from 2011-02-20.

Description of the change

Make PristineTarSource.version_as_revision() raise a PackageVersionNotPresent error, as expected by callers.

To post a comment you must log in.

Unmerged revisions

521. By Jelmer Vernooij

Add tests for missing tags in PristineTarSource.version_as_revision.

520. By Jelmer Vernooij

Merge build fixes.

519. By Jelmer Vernooij

Merge addition of more PristineTarSource tests.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'tests/test_upstream.py'
2--- tests/test_upstream.py 2011-02-04 11:30:52 +0000
3+++ tests/test_upstream.py 2011-02-12 01:43:14 +0000
4@@ -22,6 +22,7 @@
5
6 """Tests for the upstream module."""
7
8+from base64 import standard_b64encode
9
10 import os
11 import tarfile
12@@ -531,11 +532,49 @@
13 self.assertEqual(self.source.tag_name(upstream_v_no),
14 "upstream-" + upstream_v_no)
15
16+ def test_tag_name_distro(self):
17+ self.assertEquals(self.source.tag_name("0.3", "ubuntu"),
18+ "upstream-ubuntu-0.3")
19+
20 def test_version(self):
21 self.assertEquals(['upstream-3.3', 'upstream-debian-3.3',
22 'upstream-ubuntu-3.3', 'upstream/3.3'],
23 self.source.possible_tag_names("3.3"))
24
25+ def test_pristine_tar_format_gz(self):
26+ rev = Revision("myrevid")
27+ rev.properties["deb-pristine-delta"] = "1"
28+ self.assertEquals("gz", self.source.pristine_tar_format(rev))
29+
30+ def test_pristine_tar_format_bz2(self):
31+ rev = Revision("myrevid")
32+ rev.properties["deb-pristine-delta-bz2"] = "1"
33+ self.assertEquals("bz2", self.source.pristine_tar_format(rev))
34+
35+ def test_pristine_tar_format_unknown(self):
36+ rev = Revision("myrevid")
37+ self.assertRaises(AssertionError,
38+ self.source.pristine_tar_format, rev)
39+
40+ def test_pristine_tar_delta_unknown(self):
41+ rev = Revision("myrevid")
42+ self.assertRaises(AssertionError,
43+ self.source.pristine_tar_delta, rev)
44+
45+ def test_pristine_tar_delta_gz(self):
46+ rev = Revision("myrevid")
47+ rev.properties["deb-pristine-delta"] = standard_b64encode("bla")
48+ self.assertEquals("bla", self.source.pristine_tar_delta(rev))
49+
50+ def test_version_as_revision_missing(self):
51+ self.assertRaises(PackageVersionNotPresent,
52+ self.source.version_as_revision, None, "1.2")
53+
54+ def test_version_as_revision(self):
55+ revid1 = self.tree.commit("msg")
56+ self.tree.branch.tags.set_tag("upstream-2.1", revid1)
57+ self.assertEquals(revid1, self.source.version_as_revision(None, "2.1"))
58+
59
60 class TarfileSourceTests(TestCaseWithTransport):
61 """Tests for TarfileSource."""
62
63=== modified file 'upstream/__init__.py'
64--- upstream/__init__.py 2011-02-11 14:29:07 +0000
65+++ upstream/__init__.py 2011-02-12 01:43:14 +0000
66@@ -37,6 +37,7 @@
67
68 from bzrlib.errors import (
69 NoSuchRevision,
70+ NoSuchTag,
71 )
72 from bzrlib.trace import (
73 note,
74@@ -169,7 +170,10 @@
75 if self._has_version(tag_name):
76 return self.branch.tags.lookup_tag(tag_name)
77 tag_name = self.tag_name(version)
78- return self.branch.tags.lookup_tag(tag_name)
79+ try:
80+ return self.branch.tags.lookup_tag(tag_name)
81+ except NoSuchTag:
82+ raise PackageVersionNotPresent(package, version, self)
83
84 def has_version(self, package, version, md5=None):
85 assert isinstance(version, str), str(type(version))

Subscribers

People subscribed via source and target branches

to all changes: