~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

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

  • Committer: Andrew Bennetts
  • Date: 2009-10-07 08:17:25 UTC
  • mto: This revision was merged to the branch mainline in revision 4734.
  • Revision ID: andrew.bennetts@canonical.com-20091007081725-4t3vkhher69a4k0j
Refactor to reduce duplication.

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
import os
22
22
 
23
23
from bzrlib import tests
24
 
from bzrlib.tests.matchers import ContainsNoVfsCalls
25
 
 
26
24
 
27
25
class TestRevno(tests.TestCaseWithTransport):
28
26
 
36
34
        bzr('init')
37
35
        self.assertEquals(int(bzr('revno')), 0)
38
36
 
39
 
        with open('foo', 'wb') as f: f.write('foo\n')
 
37
        open('foo', 'wb').write('foo\n')
40
38
        bzr('add foo')
41
39
        bzr('commit -m foo')
42
40
        self.assertEquals(int(bzr('revno')), 1)
119
117
        out, err = self.run_bzr('revno --tree checkout_b')
120
118
        self.assertEqual('', err)
121
119
        self.assertEqual('???\n', out)
122
 
 
123
 
    def test_revno_with_revision(self):
124
 
        wt = self.make_branch_and_tree('.')
125
 
        revid1 = wt.commit('rev1')
126
 
        revid2 = wt.commit('rev2')
127
 
 
128
 
        out, err = self.run_bzr('revno -r-2 .')
129
 
        self.assertEqual('1\n', out)
130
 
 
131
 
        out, err = self.run_bzr('revno -rrevid:%s .' % revid1)
132
 
        self.assertEqual('1\n', out)
133
 
 
134
 
    def test_revno_and_tree_mutually_exclusive(self):
135
 
        wt = self.make_branch_and_tree('.')
136
 
        out, err = self.run_bzr('revno -r-2 --tree .', retcode=3)
137
 
        self.assertEqual('', out)
138
 
        self.assertEqual(
139
 
            'bzr: ERROR: --tree and --revision can not be used together\n',
140
 
            err)
141
 
 
142
 
 
143
 
class TestSmartServerRevno(tests.TestCaseWithTransport):
144
 
 
145
 
    def test_simple_branch_revno(self):
146
 
        self.setup_smart_server_with_call_log()
147
 
        t = self.make_branch_and_tree('branch')
148
 
        self.build_tree_contents([('branch/foo', 'thecontents')])
149
 
        t.add("foo")
150
 
        revid = t.commit("message")
151
 
        self.reset_smart_call_log()
152
 
        out, err = self.run_bzr(['revno', self.get_url('branch')])
153
 
        # This figure represent the amount of work to perform this use case. It
154
 
        # is entirely ok to reduce this number if a test fails due to rpc_count
155
 
        # being too low. If rpc_count increases, more network roundtrips have
156
 
        # become necessary for this use case. Please do not adjust this number
157
 
        # upwards without agreement from bzr's network support maintainers.
158
 
        self.assertThat(self.hpss_calls, ContainsNoVfsCalls)
159
 
        self.assertLength(1, self.hpss_connections)
160
 
        self.assertLength(6, self.hpss_calls)
161
 
 
162
 
    def test_simple_branch_revno_lookup(self):
163
 
        self.setup_smart_server_with_call_log()
164
 
        t = self.make_branch_and_tree('branch')
165
 
        self.build_tree_contents([('branch/foo', 'thecontents')])
166
 
        t.add("foo")
167
 
        revid1 = t.commit("message")
168
 
        revid2 = t.commit("message")
169
 
        self.reset_smart_call_log()
170
 
        out, err = self.run_bzr(['revno', '-rrevid:' + revid1,
171
 
            self.get_url('branch')])
172
 
        # This figure represent the amount of work to perform this use case. It
173
 
        # is entirely ok to reduce this number if a test fails due to rpc_count
174
 
        # being too low. If rpc_count increases, more network roundtrips have
175
 
        # become necessary for this use case. Please do not adjust this number
176
 
        # upwards without agreement from bzr's network support maintainers.
177
 
        self.assertLength(5, self.hpss_calls)
178
 
        self.assertLength(1, self.hpss_connections)
179
 
        self.assertThat(self.hpss_calls, ContainsNoVfsCalls)