)]}'
{"tempest/api/image/base.py":[{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"0e1f51405533d824ee8d9e91c242db802c2328a4","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        cls.image_member_client \u003d cls.os.image_member_client_v2"},{"line_number":171,"context_line":"        cls.alt_image_member_client \u003d cls.os_alt.image_member_client_v2"},{"line_number":172,"context_line":"        cls.alt_img_client \u003d cls.os_alt.image_client_v2"},{"line_number":173,"context_line":"        cls.alt_client \u003d cls.os_alt.image_client_v2"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"    @classmethod"},{"line_number":176,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":2,"id":"bff0334d_8eed1c8d","line":173,"range":{"start_line":173,"start_character":8,"end_line":173,"end_character":51},"updated":"2017-04-07 01:57:35.000000000","message":"this is the same value with the previous cls.alt_img_client","commit_id":"b46315e60c25e4cd888eefc6fddbea7c255c7241"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"1cd5699314e7904a5dcaafd0a4b4ae00100c7f48","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        cls.image_member_client \u003d cls.os.image_member_client_v2"},{"line_number":171,"context_line":"        cls.alt_image_member_client \u003d cls.os_alt.image_member_client_v2"},{"line_number":172,"context_line":"        cls.alt_img_client \u003d cls.os_alt.image_client_v2"},{"line_number":173,"context_line":"        cls.alt_client \u003d cls.os_alt.image_client_v2"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"    @classmethod"},{"line_number":176,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":2,"id":"bff0334d_3d81fac3","line":173,"range":{"start_line":173,"start_character":8,"end_line":173,"end_character":51},"in_reply_to":"bff0334d_8eed1c8d","updated":"2017-04-12 18:36:25.000000000","message":"ok fixing","commit_id":"b46315e60c25e4cd888eefc6fddbea7c255c7241"}],"tempest/api/image/v2/test_images_member.py":[{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"0e1f51405533d824ee8d9e91c242db802c2328a4","unresolved":false,"context_lines":[{"line_number":92,"context_line":"        # primary tenant creates an image"},{"line_number":93,"context_line":"        image_id \u003d self._create_image()"},{"line_number":94,"context_line":"        # add two members to the image"},{"line_number":95,"context_line":"        self.image_member_client.create_image_member("},{"line_number":96,"context_line":"            image_id, member\u003dself.tenant_id)"},{"line_number":97,"context_line":"        self.image_member_client.create_image_member("},{"line_number":98,"context_line":"            image_id, member\u003dself.alt_tenant_id)"},{"line_number":99,"context_line":"        self.addCleanup(self.image_member_client.delete_image_member,"}],"source_content_type":"text/x-python","patch_set":2,"id":"bff0334d_098d867a","line":96,"range":{"start_line":95,"start_character":0,"end_line":96,"end_character":44},"updated":"2017-04-07 01:57:35.000000000","message":"this should also with an addCleanup, even if we will delete image member in #L117","commit_id":"b46315e60c25e4cd888eefc6fddbea7c255c7241"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"545094314556d9aace1e4b79e0ff1fe7505773d1","unresolved":false,"context_lines":[{"line_number":89,"context_line":"        self.assertNotIn(image_id, self._list_image_ids_as_alt())"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    @decorators.idempotent_id(\u0027647347b9-6769-487f-9964-f3a72e9a928c\u0027)"},{"line_number":92,"context_line":"    def test_reuse_deleted_image_member_by_other_project(self):"},{"line_number":93,"context_line":"        # primary tenant creates an image"},{"line_number":94,"context_line":"        image_id \u003d self._create_image()"},{"line_number":95,"context_line":"        # add two members to the image"}],"source_content_type":"text/x-python","patch_set":4,"id":"7ffa3b31_027c3fb3","line":92,"updated":"2017-04-18 09:23:04.000000000","message":"This is not how Tempest api tests should be written. API tests are here to test only a single API route, not a mix/scenarios of API calls.\n\nBesides, the commit message doesn\u0027t say what exactly was not already tested. Are you trying to prevent a regression tied to a specific bug ? Are you trying to bridge a coverage gap ?","commit_id":"a9b0b4d7076025f50b78710ce2a060f519002cba"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"09a4ef1b1dc09ed1e41d58d92d1f734333b33c40","unresolved":false,"context_lines":[{"line_number":89,"context_line":"        self.assertNotIn(image_id, self._list_image_ids_as_alt())"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    @decorators.idempotent_id(\u0027647347b9-6769-487f-9964-f3a72e9a928c\u0027)"},{"line_number":92,"context_line":"    def test_reuse_deleted_image_member_by_other_project(self):"},{"line_number":93,"context_line":"        # primary tenant creates an image"},{"line_number":94,"context_line":"        image_id \u003d self._create_image()"},{"line_number":95,"context_line":"        # add two members to the image"}],"source_content_type":"text/x-python","patch_set":4,"id":"7ffa3b31_842bbce9","line":92,"in_reply_to":"7ffa3b31_027c3fb3","updated":"2017-04-18 09:40:50.000000000","message":"Hi Jordon ,\n\nThe idea comes from :\nhttps://blueprints.launchpad.net/glance/+spec/reuse-the-deleted-image-member","commit_id":"a9b0b4d7076025f50b78710ce2a060f519002cba"}]}
