235
236
transport.append_bytes('foo', 'content')
236
237
self.assertEquals(True, transport.has('foo'))
239
def test_list_dir(self):
240
transport = MemoryTransport()
241
transport.put_bytes('foo', 'content')
242
transport.mkdir('dir')
243
transport.put_bytes('dir/subfoo', 'content')
244
transport.put_bytes('dirlike', 'content')
246
self.assertEquals(['dir', 'dirlike', 'foo'], sorted(transport.list_dir('.')))
247
self.assertEquals(['subfoo'], sorted(transport.list_dir('dir')))
238
249
def test_mkdir(self):
239
250
transport = MemoryTransport()
240
251
transport.mkdir('dir')
273
284
self.assertEqual(7, transport.stat('foo').st_size)
274
285
self.assertEqual(6, transport.stat('bar').st_size)
288
class ChrootDecoratorTransportTest(TestCase):
289
"""Chroot decoration specific tests."""
291
def test_construct(self):
292
from bzrlib.transport import chroot
293
transport = chroot.ChrootTransportDecorator('chroot+memory:///pathA/')
294
self.assertEqual('memory:///pathA/', transport.chroot_url)
296
transport = chroot.ChrootTransportDecorator(
297
'chroot+memory:///path/B', chroot='memory:///path/')
298
self.assertEqual('memory:///path/', transport.chroot_url)
300
def test_append_file(self):
301
transport = get_transport('chroot+file:///foo/bar')
302
self.assertRaises(PathNotChild, transport.append_file, '/foo', None)
304
def test_append_bytes(self):
305
transport = get_transport('chroot+file:///foo/bar')
306
self.assertRaises(PathNotChild, transport.append_bytes, '/foo', 'bytes')
308
def test_clone(self):
309
transport = get_transport('chroot+file:///foo/bar')
310
self.assertRaises(PathNotChild, transport.clone, '/foo')
312
def test_delete(self):
313
transport = get_transport('chroot+file:///foo/bar')
314
self.assertRaises(PathNotChild, transport.delete, '/foo')
316
def test_delete_tree(self):
317
transport = get_transport('chroot+file:///foo/bar')
318
self.assertRaises(PathNotChild, transport.delete_tree, '/foo')
321
transport = get_transport('chroot+file:///foo/bar')
322
self.assertRaises(PathNotChild, transport.get, '/foo')
324
def test_get_bytes(self):
325
transport = get_transport('chroot+file:///foo/bar')
326
self.assertRaises(PathNotChild, transport.get_bytes, '/foo')
329
transport = get_transport('chroot+file:///foo/bar')
330
self.assertRaises(PathNotChild, transport.has, '/foo')
332
def test_list_dir(self):
333
transport = get_transport('chroot+file:///foo/bar')
334
self.assertRaises(PathNotChild, transport.list_dir, '/foo')
336
def test_lock_read(self):
337
transport = get_transport('chroot+file:///foo/bar')
338
self.assertRaises(PathNotChild, transport.lock_read, '/foo')
340
def test_lock_write(self):
341
transport = get_transport('chroot+file:///foo/bar')
342
self.assertRaises(PathNotChild, transport.lock_write, '/foo')
344
def test_mkdir(self):
345
transport = get_transport('chroot+file:///foo/bar')
346
self.assertRaises(PathNotChild, transport.mkdir, '/foo')
348
def test_put_bytes(self):
349
transport = get_transport('chroot+file:///foo/bar')
350
self.assertRaises(PathNotChild, transport.put_bytes, '/foo', 'bytes')
352
def test_put_file(self):
353
transport = get_transport('chroot+file:///foo/bar')
354
self.assertRaises(PathNotChild, transport.put_file, '/foo', None)
356
def test_rename(self):
357
transport = get_transport('chroot+file:///foo/bar')
358
self.assertRaises(PathNotChild, transport.rename, '/aaa', 'bbb')
359
self.assertRaises(PathNotChild, transport.rename, 'ccc', '/d')
361
def test_rmdir(self):
362
transport = get_transport('chroot+file:///foo/bar')
363
self.assertRaises(PathNotChild, transport.rmdir, '/foo')
366
transport = get_transport('chroot+file:///foo/bar')
367
self.assertRaises(PathNotChild, transport.stat, '/foo')
277
370
class ReadonlyDecoratorTransportTest(TestCase):
278
371
"""Readonly decoration specific tests."""