~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/selftest/testrevisionnamespaces.py

Nathaniel McCallums patch for urandom friendliness on aix.

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 
17
17
import os
18
18
from bzrlib.selftest import TestCaseInTempDir
19
 
from bzrlib.errors import NoCommonAncestor, NoCommits
20
 
from bzrlib.branch import copy_branch
21
 
from bzrlib.merge import merge
22
19
 
23
20
class TestRevisionNamespaces(TestCaseInTempDir):
24
 
 
25
21
    def test_revision_namespaces(self):
26
 
        """Test revision specifiers.
27
 
 
28
 
        These identify revisions by date, etc."""
 
22
        """Functional tests for hashcache"""
29
23
        from bzrlib.errors import NoSuchRevision
30
24
        from bzrlib.branch import Branch
31
 
        from bzrlib.revisionspec import RevisionSpec
32
25
 
33
 
        b = Branch.initialize('.')
 
26
        b = Branch('.', init=True)
34
27
 
35
28
        b.commit('Commit one', rev_id='a@r-0-1')
36
29
        b.commit('Commit two', rev_id='a@r-0-2')
37
30
        b.commit('Commit three', rev_id='a@r-0-3')
38
31
 
39
 
        self.assertEquals(RevisionSpec(None).in_history(b), (0, None))
40
 
        self.assertEquals(RevisionSpec(1).in_history(b), (1, 'a@r-0-1'))
41
 
        self.assertEquals(RevisionSpec('revno:1').in_history(b),
42
 
                          (1, 'a@r-0-1'))
43
 
        self.assertEquals(RevisionSpec('revid:a@r-0-1').in_history(b),
44
 
                          (1, 'a@r-0-1'))
45
 
        self.assertRaises(NoSuchRevision,
46
 
                          RevisionSpec('revid:a@r-0-0').in_history, b)
47
 
        self.assertRaises(TypeError, RevisionSpec, object)
48
 
 
49
 
        self.assertEquals(RevisionSpec('date:-tomorrow').in_history(b),
50
 
                          (3, 'a@r-0-3'))
51
 
        self.assertEquals(RevisionSpec('date:+today').in_history(b),
52
 
                          (1, 'a@r-0-1'))
53
 
 
54
 
        self.assertEquals(RevisionSpec('last:1').in_history(b),
55
 
                          (3, 'a@r-0-3'))
56
 
        self.assertEquals(RevisionSpec('-1').in_history(b), (3, 'a@r-0-3'))
57
 
#        self.assertEquals(b.get_revision_info('last:1'), (3, 'a@r-0-3'))
58
 
#        self.assertEquals(b.get_revision_info('-1'), (3, 'a@r-0-3'))
59
 
 
60
 
        self.assertEquals(RevisionSpec('ancestor:.').in_history(b).rev_id,
61
 
                          'a@r-0-3')
 
32
        self.assertEquals(b.get_revision_info(None), (0, None))
 
33
        self.assertEquals(b.get_revision_info(1), (1, 'a@r-0-1'))
 
34
        self.assertEquals(b.get_revision_info('revno:1'), (1, 'a@r-0-1'))
 
35
        self.assertEquals(b.get_revision_info('revid:a@r-0-1'), (1, 'a@r-0-1'))
 
36
        self.assertRaises(NoSuchRevision, b.get_revision_info, 'revid:a@r-0-0')
 
37
        self.assertRaises(TypeError, b.get_revision_info, object)
 
38
 
 
39
        self.assertEquals(b.get_revision_info('date:-tomorrow'), (3, 'a@r-0-3'))
 
40
        self.assertEquals(b.get_revision_info('date:+today'), (1, 'a@r-0-1'))
 
41
 
 
42
        self.assertEquals(b.get_revision_info('last:1'), (3, 'a@r-0-3'))
 
43
        self.assertEquals(b.get_revision_info('-1'), (3, 'a@r-0-3'))
62
44
 
63
45
        os.mkdir('newbranch')
64
 
        b2 = Branch.initialize('newbranch')
65
 
        self.assertRaises(NoCommits, RevisionSpec('ancestor:.').in_history, b2)
66
 
 
67
 
        os.mkdir('copy')
68
 
        b3 = copy_branch(b, 'copy')
69
 
        b3.commit('Commit four', rev_id='b@r-0-4')
70
 
        self.assertEquals(RevisionSpec('ancestor:.').in_history(b3).rev_id,
71
 
                          'a@r-0-3')
72
 
        merge(['copy', -1], [None, None])
73
 
        b.commit('Commit five', rev_id='a@r-0-4')
74
 
        self.assertEquals(RevisionSpec('ancestor:copy').in_history(b).rev_id,
75
 
                          'b@r-0-4')
76
 
        self.assertEquals(RevisionSpec('ancestor:.').in_history(b3).rev_id,
77
 
                          'b@r-0-4')
 
46
        b2 = Branch('newbranch', init=True)
 
47
        self.assertEquals(b2.lookup_revision('revid:a@r-0-1'), 'a@r-0-1')