~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/blackbox/test_shared_repository.py

  • Committer: Patch Queue Manager
  • Date: 2016-01-15 09:21:49 UTC
  • mfrom: (6606.2.1 autodoc-unicode)
  • Revision ID: pqm@pqm.ubuntu.com-20160115092149-z5f4sfq3jvaz0enb
(vila) Fix autodoc runner when LANG=C. (Jelmer Vernooij)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2006-2010 Canonical Ltd
 
1
# Copyright (C) 2006-2011 Canonical Ltd
2
2
#
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
18
18
 
19
19
import os
20
20
 
21
 
from bzrlib import osutils
22
 
from bzrlib.bzrdir import BzrDir, BzrDirMetaFormat1
 
21
from bzrlib.bzrdir import BzrDirMetaFormat1
 
22
from bzrlib.controldir import ControlDir
23
23
import bzrlib.errors as errors
24
24
from bzrlib.tests import TestCaseInTempDir
 
25
from bzrlib.tests.matchers import ContainsNoVfsCalls
 
26
 
25
27
 
26
28
class TestSharedRepo(TestCaseInTempDir):
27
29
 
33
35
  shared repository: a
34
36
""")
35
37
        self.assertEqual(err, "")
36
 
        dir = BzrDir.open('a')
 
38
        dir = ControlDir.open('a')
37
39
        self.assertIs(dir.open_repository().is_shared(), True)
38
40
        self.assertRaises(errors.NotBranchError, dir.open_branch)
39
41
        self.assertRaises(errors.NoWorkingTree, dir.open_workingtree)
42
44
        out, err = self.run_bzr("init-repository a -q")
43
45
        self.assertEqual(out, "")
44
46
        self.assertEqual(err, "")
45
 
        dir = BzrDir.open('a')
 
47
        dir = ControlDir.open('a')
46
48
        self.assertIs(dir.open_repository().is_shared(), True)
47
49
        self.assertRaises(errors.NotBranchError, dir.open_branch)
48
50
        self.assertRaises(errors.NoWorkingTree, dir.open_workingtree)
53
55
        (Malone #38331)
54
56
        """
55
57
        out, err = self.run_bzr("init-repository .")
56
 
        dir = BzrDir.open('.')
 
58
        dir = ControlDir.open('.')
57
59
        self.assertTrue(dir.open_repository())
58
60
 
59
61
    def test_init(self):
60
62
        self.run_bzr("init-repo a")
61
63
        self.run_bzr("init --format=default a/b")
62
 
        dir = BzrDir.open('a')
 
64
        dir = ControlDir.open('a')
63
65
        self.assertIs(dir.open_repository().is_shared(), True)
64
66
        self.assertRaises(errors.NotBranchError, dir.open_branch)
65
67
        self.assertRaises(errors.NoWorkingTree, dir.open_workingtree)
66
 
        bdir = BzrDir.open('a/b')
 
68
        bdir = ControlDir.open('a/b')
67
69
        bdir.open_branch()
68
70
        self.assertRaises(errors.NoRepositoryPresent, bdir.open_repository)
69
71
        wt = bdir.open_workingtree()
72
74
        self.run_bzr("init-repo a")
73
75
        self.run_bzr("init --format=default a/b")
74
76
        self.run_bzr('branch a/b a/c')
75
 
        cdir = BzrDir.open('a/c')
 
77
        cdir = ControlDir.open('a/c')
76
78
        cdir.open_branch()
77
79
        self.assertRaises(errors.NoRepositoryPresent, cdir.open_repository)
78
80
        cdir.open_workingtree()
80
82
    def test_branch_tree(self):
81
83
        self.run_bzr("init-repo --trees a")
82
84
        self.run_bzr("init --format=default b")
83
 
        file('b/hello', 'wt').write('bar')
 
85
        with file('b/hello', 'wt') as f: f.write('bar')
84
86
        self.run_bzr("add b/hello")
85
87
        self.run_bzr("commit -m bar b/hello")
86
88
 
87
89
        self.run_bzr('branch b a/c')
88
 
        cdir = BzrDir.open('a/c')
 
90
        cdir = ControlDir.open('a/c')
89
91
        cdir.open_branch()
90
92
        self.assertRaises(errors.NoRepositoryPresent, cdir.open_repository)
91
 
        self.failUnlessExists('a/c/hello')
 
93
        self.assertPathExists('a/c/hello')
92
94
        cdir.open_workingtree()
93
95
 
94
96
    def test_trees_default(self):
95
97
        # 0.15 switched to trees by default
96
98
        self.run_bzr("init-repo repo")
97
 
        repo = BzrDir.open("repo").open_repository()
 
99
        repo = ControlDir.open("repo").open_repository()
98
100
        self.assertEqual(True, repo.make_working_trees())
99
101
 
100
102
    def test_trees_argument(self):
101
103
        # Supplying the --trees argument should be harmless,
102
104
        # as it was previously non-default we need to get it right.
103
105
        self.run_bzr("init-repo --trees trees")
104
 
        repo = BzrDir.open("trees").open_repository()
 
106
        repo = ControlDir.open("trees").open_repository()
105
107
        self.assertEqual(True, repo.make_working_trees())
106
108
 
107
109
    def test_no_trees_argument(self):
108
110
        # --no-trees should make it so that there is no working tree
109
111
        self.run_bzr("init-repo --no-trees notrees")
110
 
        repo = BzrDir.open("notrees").open_repository()
 
112
        repo = ControlDir.open("notrees").open_repository()
111
113
        self.assertEqual(False, repo.make_working_trees())
112
114
 
113
115
    def test_init_repo_smart_acceptance(self):
120
122
        # being too low. If rpc_count increases, more network roundtrips have
121
123
        # become necessary for this use case. Please do not adjust this number
122
124
        # upwards without agreement from bzr's network support maintainers.
123
 
        self.assertLength(15, self.hpss_calls)
 
125
        self.assertLength(11, self.hpss_calls)
 
126
        self.assertLength(1, self.hpss_connections)
 
127
        self.assertThat(self.hpss_calls, ContainsNoVfsCalls)
124
128
 
125
129
    def test_notification_on_branch_from_repository(self):
126
130
        out, err = self.run_bzr("init-repository -q a")
127
131
        self.assertEqual(out, "")
128
132
        self.assertEqual(err, "")
129
 
        dir = BzrDir.open('a')
 
133
        dir = ControlDir.open('a')
130
134
        dir.open_repository() # there is a repository there
131
135
        e = self.assertRaises(errors.NotBranchError, dir.open_branch)
132
136
        self.assertContainsRe(str(e), "location is a repository")
142
146
 
143
147
    def test_init_repo_with_post_repo_init_hook(self):
144
148
        calls = []
145
 
        BzrDir.hooks.install_named_hook('post_repo_init', calls.append, None)
 
149
        ControlDir.hooks.install_named_hook('post_repo_init', calls.append, None)
146
150
        self.assertLength(0, calls)
147
151
        self.run_bzr("init-repository a")
148
152
        self.assertLength(1, calls)
155
159
        # and uses whoami only in a lock file. Without whoami the login name
156
160
        # is used. This test is to ensure that init-repo passes even when whoami
157
161
        # is not available.
158
 
        osutils.set_or_unset_env('EMAIL', None)
159
 
        osutils.set_or_unset_env('BZR_EMAIL', None)
 
162
        self.overrideEnv('EMAIL', None)
 
163
        self.overrideEnv('BZR_EMAIL', None)
160
164
        out, err = self.run_bzr(['init-repo', 'foo'])
161
165
        self.assertEqual(err, '')
162
166
        self.assertTrue(os.path.exists('foo'))