/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to tests/test_git_branch.py

More performance hacking, introduce sqlite cache, escape characters in commits that break serializers.

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 
17
17
"""Tests for interfacing with a Git Branch"""
18
18
 
19
 
from bzrlib import revision
20
 
from bzrlib.branch import Branch
21
 
 
 
19
import subprocess
 
20
 
 
21
from bzrlib import branch, revision
 
22
 
 
23
from bzrlib.plugins.git import tests
22
24
from bzrlib.plugins.git import (
23
 
    branch,
24
 
    tests,
 
25
    git_branch,
 
26
    ids,
25
27
    )
26
 
from bzrlib.plugins.git.mapping import default_mapping
27
 
from bzrlib.plugins.git import git
28
 
 
29
28
 
30
29
 
31
30
class TestGitBranch(tests.TestCaseInTempDir):
35
34
    def test_open_existing(self):
36
35
        tests.run_git('init')
37
36
 
38
 
        thebranch = Branch.open('.')
39
 
        self.assertIsInstance(thebranch, branch.GitBranch)
 
37
        thebranch = branch.Branch.open('.')
 
38
        self.assertIsInstance(thebranch, git_branch.GitBranch)
40
39
 
41
40
    def test_last_revision_is_null(self):
42
41
        tests.run_git('init')
43
42
 
44
 
        thebranch = Branch.open('.')
 
43
        thebranch = branch.Branch.open('.')
45
44
        self.assertEqual(revision.NULL_REVISION, thebranch.last_revision())
46
45
        self.assertEqual((0, revision.NULL_REVISION),
47
46
                         thebranch.last_revision_info())
48
47
 
49
 
    def simple_commit_a(self):
 
48
    def test_last_revision_is_valid(self):
50
49
        tests.run_git('init')
51
50
        self.build_tree(['a'])
52
51
        tests.run_git('add', 'a')
53
52
        tests.run_git('commit', '-m', 'a')
54
 
 
55
 
    def test_last_revision_is_valid(self):
56
 
        self.simple_commit_a()
57
53
        head = tests.run_git('rev-parse', 'HEAD').strip()
58
54
 
59
 
        thebranch = Branch.open('.')
60
 
        self.assertEqual(default_mapping.revision_id_foreign_to_bzr(head),
 
55
        thebranch = branch.Branch.open('.')
 
56
        self.assertEqual(ids.convert_revision_id_git_to_bzr(head),
61
57
                         thebranch.last_revision())
62
 
 
63
 
    def test_revision_history(self):
64
 
        self.simple_commit_a()
65
 
        reva = tests.run_git('rev-parse', 'HEAD').strip()
66
 
        self.build_tree(['b'])
67
 
        tests.run_git('add', 'b')
68
 
        tests.run_git('commit', '-m', 'b')
69
 
        revb = tests.run_git('rev-parse', 'HEAD').strip()
70
 
 
71
 
        thebranch = Branch.open('.')
72
 
        self.assertEqual([default_mapping.revision_id_foreign_to_bzr(r) for r in (reva, revb)],
73
 
                         thebranch.revision_history())
74
 
 
75
 
    def test_tags(self):
76
 
        self.simple_commit_a()
77
 
        reva = tests.run_git('rev-parse', 'HEAD').strip()
78
 
        
79
 
        tests.run_git('tag', '-a', '-m', 'add tag', 'foo')
80
 
        
81
 
        newid = open('.git/refs/tags/foo').read().rstrip()
82
 
 
83
 
        thebranch = Branch.open('.')
84
 
        self.assertEquals({"foo": default_mapping.revision_id_foreign_to_bzr(newid)},
85
 
                          thebranch.tags.get_tag_dict())
86
 
        
87
 
 
88
 
class TestWithGitBranch(tests.TestCaseWithTransport):
89
 
 
90
 
    def setUp(self):
91
 
        tests.TestCaseWithTransport.setUp(self)
92
 
        git.repo.Repo.create(self.test_dir)
93
 
        self.git_branch = Branch.open(self.test_dir)
94
 
 
95
 
    def test_get_parent(self):
96
 
        self.assertIs(None, self.git_branch.get_parent())
97
 
 
98
 
    def test_get_stacked_on_url(self):
99
 
        self.assertIs(None, self.git_branch.get_stacked_on_url())
100
 
 
101
 
    def test_get_physical_lock_status(self):
102
 
        self.assertFalse(self.git_branch.get_physical_lock_status())
103
 
 
104
 
 
105
 
class TestGitBranchFormat(tests.TestCase):
106
 
 
107
 
    def setUp(self):
108
 
        super(TestGitBranchFormat, self).setUp()
109
 
        self.format = branch.GitBranchFormat()
110
 
 
111
 
    def test_get_format_description(self):
112
 
        self.assertEquals("Git Branch", self.format.get_format_description())