243
243
self.assertEqual(udf2['path'], 'path2')
244
244
self.assertEqual(udf2['generation'], 8)
246
def test_change_public_access(self):
247
"""Change the public acces of a node."""
250
# node, with a generation attribute
252
expect(node.public_url).result('test public url')
254
# user, with the chained calls to the action
257
user.volume('vol_id').node('node_id').change_public_access(True)
259
self.backend._get_user = lambda *a: user
262
kwargs = dict(user_id='user_id', volume_id='vol_id',
263
node_id='node_id', is_public=True,
264
session_id='session_id')
265
result = self.backend.change_public_access(**kwargs)
267
self.assertEqual(result, dict(public_url='test public url'))
269
def test_list_public_files(self):
270
"""List public files."""
274
node1 = mocker.mock()
275
expect(node1.id).result('node_id1')
276
expect(node1.path).result('path1')
277
expect(node1.name).result('name1')
278
expect(node1.vol_id).result('volume_id1')
279
expect(node1.generation).result('generation1')
280
expect(node1.is_public).result(True)
281
expect(node1.parent_id).result('parent_id1')
282
expect(node1.status).result(STATUS_LIVE)
283
expect(node1.content_hash).result('content_hash1')
284
expect(node1.kind).result(StorageObject.FILE)
285
expect(node1.when_last_modified).result('last_modified1')
286
content1 = mocker.mock()
287
expect(content1.size).result('size1')
288
expect(content1.crc32).result('crc321')
289
expect(content1.deflated_size).result('deflated_size1')
290
expect(content1.storage_key).result('storage_key1')
291
expect(node1.content).result(content1)
292
expect(node1.public_url).result('public url 1')
295
node2 = mocker.mock()
296
expect(node2.id).result('node_id2')
297
expect(node2.path).result('path2')
298
expect(node2.name).result('name2')
299
expect(node2.vol_id).result('volume_id2')
300
expect(node2.generation).result('generation2')
301
expect(node2.is_public).result(True)
302
expect(node2.parent_id).result('parent_id2')
303
expect(node2.status).result(STATUS_DEAD)
304
expect(node2.content_hash).result('content_hash2')
305
expect(node2.kind).result(StorageObject.DIRECTORY)
306
expect(node2.when_last_modified).result('last_modified2')
307
content2 = mocker.mock()
308
expect(content2.size).result('size2')
309
expect(content2.crc32).result('crc322')
310
expect(content2.deflated_size).result('deflated_size2')
311
expect(content2.storage_key).result('storage_key2')
312
expect(node2.content).result(content2)
313
expect(node2.public_url).result('public url 2')
317
self.backend._get_user = lambda *a: user
318
expect(user.get_public_files()).result([node1, node2])
321
result = self.backend.list_public_files(user_id='user_id',)
322
node1, node2 = result['public_files']
324
self.assertEqual(node1['id'], 'node_id1')
325
self.assertEqual(node1['path'], 'path1')
326
self.assertEqual(node1['name'], 'name1')
327
self.assertEqual(node1['volume_id'], 'volume_id1')
328
self.assertEqual(node1['parent_id'], 'parent_id1')
329
self.assertEqual(node1['is_live'], True)
330
self.assertEqual(node1['generation'], 'generation1')
331
self.assertEqual(node1['is_public'], True)
332
self.assertEqual(node1['content_hash'], 'content_hash1')
333
self.assertEqual(node1['is_file'], True)
334
self.assertEqual(node1['size'], 'size1')
335
self.assertEqual(node1['crc32'], 'crc321')
336
self.assertEqual(node1['deflated_size'], 'deflated_size1')
337
self.assertEqual(node1['storage_key'], 'storage_key1')
338
self.assertEqual(node1['last_modified'], 'last_modified1')
339
self.assertEqual(node1['public_url'], 'public url 1')
341
self.assertEqual(node2['id'], 'node_id2')
342
self.assertEqual(node2['path'], 'path2')
343
self.assertEqual(node2['name'], 'name2')
344
self.assertEqual(node2['volume_id'], 'volume_id2')
345
self.assertEqual(node2['parent_id'], 'parent_id2')
346
self.assertEqual(node2['is_live'], False)
347
self.assertEqual(node2['generation'], 'generation2')
348
self.assertEqual(node2['is_public'], True)
349
self.assertEqual(node2['content_hash'], 'content_hash2')
350
self.assertEqual(node2['is_file'], False)
351
self.assertEqual(node2['size'], 'size2')
352
self.assertEqual(node2['crc32'], 'crc322')
353
self.assertEqual(node2['deflated_size'], 'deflated_size2')
354
self.assertEqual(node2['storage_key'], 'storage_key2')
355
self.assertEqual(node2['last_modified'], 'last_modified2')
356
self.assertEqual(node2['public_url'], 'public url 2')
246
358
def test_move(self):
248
360
mocker = Mocker()