/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 bzrlib/tests/test_smart.py

  • Committer: John Arbash Meinel
  • Date: 2009-07-08 14:37:25 UTC
  • mfrom: (4516 +trunk)
  • mto: This revision was merged to the branch mainline in revision 4517.
  • Revision ID: john@arbash-meinel.com-20090708143725-sc9sjy3mz4cxwxzz
Merge bzr.dev 4516

Show diffs side-by-side

added added

removed removed

Lines of Context:
29
29
import tarfile
30
30
 
31
31
from bzrlib import (
 
32
    bencode,
32
33
    bzrdir,
33
34
    errors,
34
35
    pack,
51
52
    split_suite_by_re,
52
53
    )
53
54
from bzrlib.transport import chroot, get_transport
54
 
from bzrlib.util import bencode
55
55
 
56
56
 
57
57
def load_tests(standard_tests, module, loader):
351
351
 
352
352
 
353
353
class TestSmartServerRequestBzrDirInitializeEx(tests.TestCaseWithMemoryTransport):
354
 
    """Basic tests for BzrDir.initialize_ex in the smart server.
 
354
    """Basic tests for BzrDir.initialize_ex_1.16 in the smart server.
355
355
 
356
356
    The main unit tests in test_bzrdir exercise the API comprehensively.
357
357
    """
381
381
            'subdir/dir', 'False', 'False', 'False', '', '', '', '', 'False')
382
382
 
383
383
    def test_initialized_dir(self):
384
 
        """Initializing an extant dirctory should fail like the bzrdir api."""
 
384
        """Initializing an extant directory should fail like the bzrdir api."""
385
385
        backing = self.get_transport()
386
386
        name = self.make_bzrdir('reference')._format.network_name()
387
387
        request = smart.bzrdir.SmartServerRequestBzrDirInitializeEx(backing)
1161
1161
            request.execute('', 'missingrevision'))
1162
1162
 
1163
1163
 
 
1164
class TestSmartServerRepositoryGetRevIdForRevno(tests.TestCaseWithMemoryTransport):
 
1165
 
 
1166
    def test_revno_found(self):
 
1167
        backing = self.get_transport()
 
1168
        request = smart.repository.SmartServerRepositoryGetRevIdForRevno(backing)
 
1169
        tree = self.make_branch_and_memory_tree('.')
 
1170
        tree.lock_write()
 
1171
        tree.add('')
 
1172
        rev1_id_utf8 = u'\xc8'.encode('utf-8')
 
1173
        rev2_id_utf8 = u'\xc9'.encode('utf-8')
 
1174
        tree.commit('1st commit', rev_id=rev1_id_utf8)
 
1175
        tree.commit('2nd commit', rev_id=rev2_id_utf8)
 
1176
        tree.unlock()
 
1177
 
 
1178
        self.assertEqual(SmartServerResponse(('ok', rev1_id_utf8)),
 
1179
            request.execute('', 1, (2, rev2_id_utf8)))
 
1180
 
 
1181
    def test_known_revid_missing(self):
 
1182
        backing = self.get_transport()
 
1183
        request = smart.repository.SmartServerRepositoryGetRevIdForRevno(backing)
 
1184
        repo = self.make_repository('.')
 
1185
        self.assertEqual(
 
1186
            FailedSmartServerResponse(('nosuchrevision', 'ghost')),
 
1187
            request.execute('', 1, (2, 'ghost')))
 
1188
 
 
1189
    def test_history_incomplete(self):
 
1190
        backing = self.get_transport()
 
1191
        request = smart.repository.SmartServerRepositoryGetRevIdForRevno(backing)
 
1192
        parent = self.make_branch_and_memory_tree('parent', format='1.9')
 
1193
        r1 = parent.commit(message='first commit')
 
1194
        r2 = parent.commit(message='second commit')
 
1195
        local = self.make_branch_and_memory_tree('local', format='1.9')
 
1196
        local.branch.pull(parent.branch)
 
1197
        local.set_parent_ids([r2])
 
1198
        r3 = local.commit(message='local commit')
 
1199
        local.branch.create_clone_on_transport(
 
1200
            self.get_transport('stacked'), stacked_on=self.get_url('parent'))
 
1201
        self.assertEqual(
 
1202
            SmartServerResponse(('history-incomplete', 2, r2)),
 
1203
            request.execute('stacked', 1, (3, r3)))
 
1204
 
1164
1205
class TestSmartServerRepositoryGetStream(tests.TestCaseWithMemoryTransport):
1165
1206
 
1166
1207
    def make_two_commit_repo(self):
1560
1601
            smart.bzrdir.SmartServerRequestFindRepositoryV2)
1561
1602
        self.assertHandlerEqual('BzrDirFormat.initialize',
1562
1603
            smart.bzrdir.SmartServerRequestInitializeBzrDir)
1563
 
        self.assertHandlerEqual('BzrDirFormat.initialize_ex',
 
1604
        self.assertHandlerEqual('BzrDirFormat.initialize_ex_1.16',
1564
1605
            smart.bzrdir.SmartServerRequestBzrDirInitializeEx)
1565
1606
        self.assertHandlerEqual('BzrDir.cloning_metadir',
1566
1607
            smart.bzrdir.SmartServerBzrDirRequestCloningMetaDir)
1576
1617
            smart.repository.SmartServerRepositoryGatherStats)
1577
1618
        self.assertHandlerEqual('Repository.get_parent_map',
1578
1619
            smart.repository.SmartServerRepositoryGetParentMap)
 
1620
        self.assertHandlerEqual('Repository.get_rev_id_for_revno',
 
1621
            smart.repository.SmartServerRepositoryGetRevIdForRevno)
1579
1622
        self.assertHandlerEqual('Repository.get_revision_graph',
1580
1623
            smart.repository.SmartServerRepositoryGetRevisionGraph)
1581
1624
        self.assertHandlerEqual('Repository.get_stream',