From 7d6b84ecc524086f20047e9ce62bea5ab036e2a3 Mon Sep 17 00:00:00 2001 From: zhengxie Date: Wed, 1 Jul 2015 15:21:08 +0800 Subject: [PATCH] WIP: update return fields --- seahub/api2/views.py | 17 ++++++++++++----- tests/api/test_shares.py | 6 +++--- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/seahub/api2/views.py b/seahub/api2/views.py index 46a8abd4c8..2f4e8b261a 100644 --- a/seahub/api2/views.py +++ b/seahub/api2/views.py @@ -2270,7 +2270,7 @@ class DirSharedItemsView(APIView): "name": item.user, "nickname": email2nickname(item.user), }, - "perm": item.perm, + "permission": item.perm, }) return ret @@ -2402,7 +2402,14 @@ class DirSharedItemsView(APIView): from_user=username, to_user=to_user, repo=shared_repo) - success.append(to_user) + success.append({ + "share_type": "user", + "user_info": { + "name": to_user, + "nickname": email2nickname(to_user), + }, + "permission": permission + }) except SearpcError as e: logger.error(e) failed.append(to_user) @@ -2412,8 +2419,8 @@ class DirSharedItemsView(APIView): pass return HttpResponse(json.dumps({ - "shared_success": success, - "shared_failed": failed + "success": success, + "failed": failed }), status=200, content_type=json_content_type) def delete(self, request, repo_id, format=None): @@ -2455,7 +2462,7 @@ class DirSharedItemsView(APIView): if shared_to_group: pass - return HttpResponse(json.dumps([{'success': True}]), status=200, + return HttpResponse(json.dumps({'success': True}), status=200, content_type=json_content_type) diff --git a/tests/api/test_shares.py b/tests/api/test_shares.py index cbaec300b8..f3ad60802c 100644 --- a/tests/api/test_shares.py +++ b/tests/api/test_shares.py @@ -92,8 +92,8 @@ class DirSharedItemsTest(TestCase, Fixtures): ) self.assertEqual(200, resp.status_code) json_resp = json.loads(resp.content) - assert 'a@a.com' in json_resp['shared_success'] - assert 'b@b.com' in json_resp['shared_success'] + assert len(json_resp['success']) == 2 + assert json_resp['success'][0]['permission'] == 'r' def test_can_update(self): self._login_as(self.user) @@ -116,7 +116,7 @@ class DirSharedItemsTest(TestCase, Fixtures): )) self.assertEqual(200, resp.status_code) json_resp = json.loads(resp.content) - assert json_resp[0]['success'] is True + assert json_resp['success'] is True resp = self.client.get('/api2/repos/%s/dir/shared_items/?p=%s&share_type=user,group' % ( self.repo.id,