20
23
from bzrlib.builtins import merge
21
24
from bzrlib.branch import Branch
22
25
from bzrlib.tests import TestCaseWithTransport
23
26
from bzrlib.errors import NoCommonAncestor, NoCommits
24
from bzrlib.errors import NoSuchRevision
25
27
from bzrlib.revisionspec import RevisionSpec
75
77
self.assertEquals(RevisionSpec('revid:a@r-0-1').in_history(b),
77
self.assertRaises(NoSuchRevision,
79
self.assertRaises(errors.NoSuchRevision,
78
80
RevisionSpec('revid:a@r-0-0').in_history, b)
79
81
self.assertRaises(TypeError, RevisionSpec, object)
81
83
self.assertEquals(RevisionSpec('date:today').in_history(b),
83
self.assertRaises(NoSuchRevision,
85
self.assertRaises(errors.NoSuchRevision,
84
86
RevisionSpec('date:tomorrow').in_history, b)
85
87
self.assertEquals(RevisionSpec('date:yesterday').in_history(b),
133
135
rev_info = spec.in_history(branch)
134
136
self.assertEqual(rev_info, (None, 'A'))
138
def test_invalid_revno(self):
139
self.build_tree(['branch1/', 'branch1/file'])
140
wt = self.make_branch_and_tree('branch1')
142
wt.commit('first commit', rev_id='r1')
143
wt.commit('second commit', rev_id='r2')
145
# In the future -20 will probably just fall back to 0
146
# but for now, we want to make sure it raises the right error
147
self.assertRaises(errors.InvalidRevisionSpec,
148
RevisionSpec('-20').in_history, wt.branch)
149
self.assertRaises(errors.InvalidRevisionSpec,
150
RevisionSpec('10').in_history, wt.branch)
152
self.assertRaises(errors.InvalidRevisionSpec,
153
RevisionSpec('revno:-20').in_history, wt.branch)
154
self.assertRaises(errors.InvalidRevisionSpec,
155
RevisionSpec('revno:10').in_history, wt.branch)
156
self.assertRaises(errors.InvalidRevisionSpec,
157
RevisionSpec('revno:a').in_history, wt.branch)