Revision 39c737d4

b/kamaki/clients/storage.py
306 306
                r.status_code)
307 307
        elif r.status_code == 304:
308 308
            return []
309
        reply = r.json
310
        return reply
309
        return r.json
311 310

  
312 311
    def list_objects_in_path(self, path_prefix):
313 312
        """
b/kamaki/clients/test/pithos.py
94 94
        bytes=0,
95 95
        name="trash",
96 96
        x_container_policy=dict(quota="21474836480", versioning="auto"))]
97
object_list = [
98
    dict(hash="",
99
        name="The_Secret_Garden.zip",
100
        x_object_public="/public/wdp9p",
101
        bytes=203304947,
102
        x_object_version_timestamp="1360237915.7027509",
103
        x_object_uuid="s0m3uu1df0r0bj0n3",
104
        last_modified="2013-02-07T11:51:55.702751+00:00",
105
        content_type="application/octet-stream",
106
        x_object_hash="0afdf29f71cd53126225c3f54ca",
107
        x_object_version=17737,
108
        x_object_modified_by=user_id),
109
    dict(hash="",
110
        name="The_Revealed_Garden.zip",
111
        x_object_public="/public/wpd7p",
112
        bytes=20330947,
113
        x_object_version_timestamp="13602915.7027509",
114
        x_object_uuid="s0m3uu1df0r0bj70w",
115
        last_modified="2013-02-07T11:51:55.702751+00:00",
116
        content_type="application/octet-stream",
117
        x_object_hash="0afdf29f71cd53126225c3f54ca",
118
        x_object_version=17737,
119
        x_object_modified_by=user_id)]
97 120

  
98 121

  
99 122
class Pithos(TestCase):
......
472 495
            self.client.move_object(src_cont, src_obj, dst_cont, **kwargs)
473 496
            for k, v in kwargs.items():
474 497
                self.assertEqual(v, put.mock_calls[-1][2][k])
498

  
499
    def test_delete_object(self):
500
        obj = 's0m30bj3c7'
501
        cont = self.client.container
502
        with patch.object(PC, 'delete', return_value=self.FR()) as delete:
503
            self.client.delete_object(obj)
504
            self.assertEqual(delete.mock_calls, [
505
                call('/%s/%s/%s' % (user_id, cont, obj), success=(204, 404))])
506
            self.FR.status_code = 404
507
            self.assertRaises(ClientError, self.client.delete_object, obj)
508

  
509
    def test_list_objects(self):
510
        self.FR.json = object_list
511
        acc = self.client.account
512
        cont = self.client.container
513
        PC.set_param = Mock()
514
        SP = PC.set_param
515
        with patch.object(PC, 'get', return_value=self.FR()) as get:
516
            r = self.client.list_objects()
517
            for i in range(len(r)):
518
                self.assert_dicts_are_equal(r[i], object_list[i])
519
            self.assertEqual(get.mock_calls, [
520
                call('/%s/%s' % (acc, cont), success=(200, 204, 304, 404))])
521
            self.assertEqual(SP.mock_calls, [call('format', 'json')])
522
            self.FR.status_code = 304
523
            self.assertEqual(self.client.list_objects(), [])
524
            self.FR.status_code = 404
525
            self.assertRaises(ClientError, self.client.list_objects)

Also available in: Unified diff