aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2011-12-28 10:30:07 +0100
committerGuido Günther <agx@sigxcpu.org>2011-12-28 10:44:36 +0100
commit747c05d728d3ab15c84ff22e077c7943d924d695 (patch)
treee672e40af1429aa878a5bcbe1ab2ec5f88c2393c /tests
parent0a462f437763014123b75f9784f4bf17cfc809cd (diff)
dch: Honor epoch when guessing new upstream version
Closes: #652366 Thanks: a lot to Daniel Dehennin for the testcase
Diffstat (limited to 'tests')
-rw-r--r--tests/03_test_dch_guess_version.py50
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/03_test_dch_guess_version.py b/tests/03_test_dch_guess_version.py
new file mode 100644
index 00000000..10343074
--- /dev/null
+++ b/tests/03_test_dch_guess_version.py
@@ -0,0 +1,50 @@
+import unittest
+
+from gbp.scripts import dch
+from gbp.errors import GbpError
+from gbp.deb.changelog import ChangeLog
+from gbp.deb.git import DebianGitRepository
+
+class MockGitRepository(object):
+ def __init__(self, upstream_tag):
+ self.upstream_tag = upstream_tag
+
+ def find_tag(self, branch, pattern):
+ return self.upstream_tag
+
+ def tag_to_version(self, tag, format):
+ return DebianGitRepository.tag_to_version(tag, format)
+
+
+class MockedChangeLog(ChangeLog):
+ contents = """foo (%s) experimental; urgency=low
+
+ * a important change
+
+ -- Debian Maintainer <maint@debian.org> Sat, 01 Jan 2012 00:00:00 +0100"""
+
+ def __init__(self, version):
+ ChangeLog.__init__(self, contents=self.contents % version)
+
+
+class TestGuessVersionFromUpstream(unittest.TestCase):
+ """Dest guess_version_from_upstream"""
+ def test_guess_no_epoch(self):
+ """Guess the new version from the upstream tag"""
+ repo = MockGitRepository(upstream_tag='upstream/1.1')
+ cp = MockedChangeLog('1.0-1')
+ guessed = dch.guess_version_from_upstream(repo,
+ 'upstream/%(version)s',
+ cp)
+ self.assertEqual('1.1-1', guessed)
+
+ def test_guess_epoch(self):
+ """Check if we picked up the epoch correctly (#652366)"""
+ repo = MockGitRepository(upstream_tag='upstream/1.1')
+ cp = MockedChangeLog('1:1.0-1')
+ guessed = dch.guess_version_from_upstream(repo,
+ 'upstream/%(version)s',
+ cp)
+ self.assertEqual('1:1.1-1', guessed)
+
+