~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

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

(gz) Remove bzrlib/util/elementtree/ package (Martin Packman)

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 
17
17
"""Tests for the 'checkout' CLI command."""
18
18
 
19
 
from cStringIO import StringIO
20
19
import os
21
 
import re
22
 
import shutil
23
 
import sys
24
20
 
25
21
from bzrlib import (
26
22
    branch as _mod_branch,
31
27
from bzrlib.tests import (
32
28
    TestCaseWithTransport,
33
29
    )
34
 
from bzrlib.tests import (
 
30
from bzrlib.tests.matchers import ContainsNoVfsCalls
 
31
from bzrlib.tests.features import (
35
32
    HardlinkFeature,
36
 
    KnownFailure,
37
33
    )
38
34
 
39
35
 
173
169
        second_stat = os.stat('second/file1')
174
170
        target_stat = os.stat('target/file1')
175
171
        self.assertEqual(second_stat, target_stat)
 
172
 
 
173
 
 
174
class TestSmartServerCheckout(TestCaseWithTransport):
 
175
 
 
176
    def test_heavyweight_checkout(self):
 
177
        self.setup_smart_server_with_call_log()
 
178
        t = self.make_branch_and_tree('from')
 
179
        for count in range(9):
 
180
            t.commit(message='commit %d' % count)
 
181
        self.reset_smart_call_log()
 
182
        out, err = self.run_bzr(['checkout', self.get_url('from'), 'target'])
 
183
        # This figure represent the amount of work to perform this use case. It
 
184
        # is entirely ok to reduce this number if a test fails due to rpc_count
 
185
        # being too low. If rpc_count increases, more network roundtrips have
 
186
        # become necessary for this use case. Please do not adjust this number
 
187
        # upwards without agreement from bzr's network support maintainers.
 
188
        self.assertLength(10, self.hpss_calls)
 
189
        self.assertLength(1, self.hpss_connections)
 
190
        self.assertThat(self.hpss_calls, ContainsNoVfsCalls)
 
191
 
 
192
    def test_lightweight_checkout(self):
 
193
        self.setup_smart_server_with_call_log()
 
194
        t = self.make_branch_and_tree('from')
 
195
        for count in range(9):
 
196
            t.commit(message='commit %d' % count)
 
197
        self.reset_smart_call_log()
 
198
        out, err = self.run_bzr(['checkout', '--lightweight', self.get_url('from'),
 
199
            'target'])
 
200
        # This figure represent the amount of work to perform this use case. It
 
201
        # is entirely ok to reduce this number if a test fails due to rpc_count
 
202
        # being too low. If rpc_count increases, more network roundtrips have
 
203
        # become necessary for this use case. Please do not adjust this number
 
204
        # upwards without agreement from bzr's network support maintainers.
 
205
        self.assertLength(15, self.hpss_calls)
 
206
        self.assertThat(self.hpss_calls, ContainsNoVfsCalls)