418 |
418 |
container_url = join_urls(self.pithos_path, self.user, cname)
|
419 |
419 |
onames = self.objects[cname].keys()
|
420 |
420 |
|
|
421 |
r = self.get('%s?shared=&public=&format=json' % container_url)
|
|
422 |
self.assertEqual(r.status_code, 200)
|
|
423 |
objects = json.loads(r.content)
|
|
424 |
self.assertEqual(len(objects), 0)
|
|
425 |
|
421 |
426 |
# publish an object
|
422 |
427 |
public1 = onames.pop()
|
423 |
428 |
url = join_urls(container_url, public1)
|
424 |
429 |
r = self.post(url, content_type='', HTTP_X_OBJECT_PUBLIC='true')
|
425 |
430 |
self.assertEqual(r.status_code, 202)
|
426 |
431 |
|
|
432 |
r = self.get('%s?shared=&public=&format=json' % container_url)
|
|
433 |
self.assertEqual(r.status_code, 200)
|
|
434 |
objects = json.loads(r.content)
|
|
435 |
self.assertEqual(len(objects), 1)
|
|
436 |
self.assertEqual(objects[0]['name'], public1)
|
|
437 |
self.assertEqual(objects[0]['bytes'],
|
|
438 |
len(self.objects[cname][public1]))
|
|
439 |
self.assertTrue('x_object_public' in objects[0])
|
|
440 |
|
427 |
441 |
# publish another
|
428 |
442 |
public2 = onames.pop()
|
429 |
443 |
url = join_urls(container_url, public2)
|
... | ... | |
469 |
483 |
# create child object
|
470 |
484 |
descendant = strnextling(public1)
|
471 |
485 |
self.upload_object(cname, descendant)
|
472 |
|
# request public and assert child obejct is not listed
|
|
486 |
# request public and assert child object is not listed
|
473 |
487 |
r = self.get('%s?shared=&public=' % container_url)
|
474 |
488 |
objects = r.content.split('\n')
|
475 |
489 |
if '' in objects:
|
... | ... | |
491 |
505 |
self.assertTrue(folder in objects)
|
492 |
506 |
self.assertTrue(descendant not in objects)
|
493 |
507 |
|
|
508 |
# unpublish public1
|
|
509 |
url = join_urls(container_url, public1)
|
|
510 |
r = self.post(url, content_type='', HTTP_X_OBJECT_PUBLIC='false')
|
|
511 |
self.assertEqual(r.status_code, 202)
|
|
512 |
|
|
513 |
# unpublish public2
|
|
514 |
url = join_urls(container_url, public2)
|
|
515 |
r = self.post(url, content_type='', HTTP_X_OBJECT_PUBLIC='false')
|
|
516 |
self.assertEqual(r.status_code, 202)
|
|
517 |
|
|
518 |
# unpublish folder
|
|
519 |
url = join_urls(container_url, folder)
|
|
520 |
r = self.post(url, content_type='', HTTP_X_OBJECT_PUBLIC='false')
|
|
521 |
self.assertEqual(r.status_code, 202)
|
|
522 |
|
|
523 |
r = self.get('%s?shared=&public=' % container_url)
|
|
524 |
self.assertEqual(r.status_code, 200)
|
|
525 |
objects = r.content.split('\n')
|
|
526 |
if '' in objects:
|
|
527 |
objects.remove('')
|
|
528 |
l = sorted([shared1, shared2])
|
|
529 |
self.assertEqual(objects, l)
|
|
530 |
|
494 |
531 |
def test_list_objects(self):
|
495 |
532 |
cname = self.cnames[0]
|
496 |
533 |
url = join_urls(self.pithos_path, self.user, cname)
|