)]}'
{"tempest/api/image/v1/test_image_members.py":[{"author":{"_account_id":8625,"name":"Anju Tiwari","username":"Anju5","inactive":true},"change_message_id":"37a3f7d42eb45b004ccc30e23060adb1c60d022c","unresolved":false,"context_lines":[{"line_number":111,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":112,"context_line":"    def test_update_member(self):"},{"line_number":113,"context_line":"        image_id \u003d self._create_image()"},{"line_number":114,"context_line":"        resp \u003d self.client.add_member(self.tenants[0], image_id)"},{"line_number":115,"context_line":"        resp, body \u003d self.client.get_image_membership(image_id)"},{"line_number":116,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":117,"context_line":"        members \u003d body[\u0027members\u0027]"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATH%2F%2F1sc%3D","line":114,"updated":"2013-10-09 06:09:40.000000000","message":"can we check status here after adding member? self.assertEqual(204, resp.status)","commit_id":"ea128697b6a3eb3cd9f26c098f78a50ee6d88562"},{"author":{"_account_id":6981,"name":"Yang Yu","email":"yangyu@vmware.com","username":"yuyangbj"},"change_message_id":"473c5041f82df999e9f2147bdd01a38a9ad2d088","unresolved":false,"context_lines":[{"line_number":111,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":112,"context_line":"    def test_update_member(self):"},{"line_number":113,"context_line":"        image_id \u003d self._create_image()"},{"line_number":114,"context_line":"        resp \u003d self.client.add_member(self.tenants[0], image_id)"},{"line_number":115,"context_line":"        resp, body \u003d self.client.get_image_membership(image_id)"},{"line_number":116,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":117,"context_line":"        members \u003d body[\u0027members\u0027]"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATH%2F%2F1pQ%3D","line":114,"in_reply_to":"AAAATH%2F%2F1sc%3D","updated":"2013-10-09 06:28:51.000000000","message":"Sure!","commit_id":"ea128697b6a3eb3cd9f26c098f78a50ee6d88562"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"a3da75d3b729e69c6b6015313c93679ece113584","unresolved":false,"context_lines":[{"line_number":108,"context_line":"        self.assertRaises(exceptions.NotFound, self.client.delete_member,"},{"line_number":109,"context_line":"                          non_exist_tenant, image_id)"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":112,"context_line":"    def test_replace_member(self):"},{"line_number":113,"context_line":"        image_id \u003d self._create_image()"},{"line_number":114,"context_line":"        resp \u003d self.client.add_member(self.tenants[0], image_id)"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAATH%2F%2FqXo%3D","line":111,"updated":"2013-10-11 15:47:00.000000000","message":"why don\u0027t you put this test case before negative tests?","commit_id":"d69844fec30dccc6e82319d5c940252888e12105"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"a3da75d3b729e69c6b6015313c93679ece113584","unresolved":false,"context_lines":[{"line_number":109,"context_line":"                          non_exist_tenant, image_id)"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":112,"context_line":"    def test_replace_member(self):"},{"line_number":113,"context_line":"        image_id \u003d self._create_image()"},{"line_number":114,"context_line":"        resp \u003d self.client.add_member(self.tenants[0], image_id)"},{"line_number":115,"context_line":"        self.assertEqual(204, resp.status)"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAATH%2F%2FqXg%3D","line":112,"updated":"2013-10-11 15:47:00.000000000","message":"please add the comment about this test like other test cases.","commit_id":"d69844fec30dccc6e82319d5c940252888e12105"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"1d7d361391f80b324e2cad6d9a7f67e4cc7d1199","unresolved":false,"context_lines":[{"line_number":93,"context_line":"        resp \u003d self.client.add_member(self.tenants[0], image_id)"},{"line_number":94,"context_line":"        self.assertEqual(204, resp.status)"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"        resp, tenant \u003d self.admin_client.create_tenant(name\u003d\u0027New tenant\u0027)"},{"line_number":97,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"        memb_list \u003d [{\u0027member_id\u0027: tenant[\u0027id\u0027], \u0027can_share\u0027: True}]"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAATH%2F%2Fobk%3D","line":96,"updated":"2013-10-12 03:28:19.000000000","message":"addCleanup to remove this tenant","commit_id":"2d1155c83d7cee2705976c61a5680e65fa83878d"},{"author":{"_account_id":8641,"name":"DennyZhang","email":"filebat.mark@gmail.com","username":"dennyzhang"},"change_message_id":"83589e964ee0b85133c144644c792a5c36c2755a","unresolved":false,"context_lines":[{"line_number":111,"context_line":"        resp, body \u003d self.client.get_image_membership(image_id)"},{"line_number":112,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":113,"context_line":"        members \u003d body[\u0027members\u0027]"},{"line_number":114,"context_line":"        members \u003d map(lambda x: x[\u0027member_id\u0027], members)"},{"line_number":115,"context_line":"        self.assertIn(tenant[\u0027id\u0027], members)"},{"line_number":116,"context_line":"        self.assertNotIn(self.alt_tenant_id, members)"},{"line_number":117,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAATn%2F%2FkmM%3D","line":114,"updated":"2013-11-01 04:51:57.000000000","message":"Would below is more clear?\nmember_ids \u003d map(lambda x: x[\u0027member_id\u0027], members)","commit_id":"174a26d8bb46bcd58361802e05bbb3942925a64b"},{"author":{"_account_id":8641,"name":"DennyZhang","email":"filebat.mark@gmail.com","username":"dennyzhang"},"change_message_id":"83589e964ee0b85133c144644c792a5c36c2755a","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        members \u003d body[\u0027members\u0027]"},{"line_number":114,"context_line":"        members \u003d map(lambda x: x[\u0027member_id\u0027], members)"},{"line_number":115,"context_line":"        self.assertIn(tenant[\u0027id\u0027], members)"},{"line_number":116,"context_line":"        self.assertNotIn(self.alt_tenant_id, members)"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027gate\u0027])"},{"line_number":119,"context_line":"    def test_add_member_with_non_existing_image(self):"}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAATn%2F%2FknY%3D","line":116,"updated":"2013-11-01 04:51:57.000000000","message":"Line 116 works a bit strange and extra. Would you please explain a little bit for this?","commit_id":"174a26d8bb46bcd58361802e05bbb3942925a64b"}]}
