)]}'
{"tempest/common/rest_client.py":[{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"42542a7a1082fde9f5ea4b2341df9809b3dbea55","unresolved":false,"context_lines":[{"line_number":364,"context_line":"            body, depth, wait)"},{"line_number":365,"context_line":""},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"class V3ClientJSON(RestClient):"},{"line_number":368,"context_line":""},{"line_number":369,"context_line":"    def __init__(self, config, username, password, auth_url, tenant_name\u003dNone):"},{"line_number":370,"context_line":"        super(V3ClientJSON, self).__init__(config, username,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FL%2Fs%3D","line":367,"updated":"2013-02-04 16:46:24.000000000","message":"Please stick to current naming style ... so better then V3ClientJSON could be V3RestClient or RestClientV3 etc.","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"2c9f88f3653a0a72ab821c9602783305dbe16be2","unresolved":false,"context_lines":[{"line_number":364,"context_line":"            body, depth, wait)"},{"line_number":365,"context_line":""},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"class V3ClientJSON(RestClient):"},{"line_number":368,"context_line":""},{"line_number":369,"context_line":"    def __init__(self, config, username, password, auth_url, tenant_name\u003dNone):"},{"line_number":370,"context_line":"        super(V3ClientJSON, self).__init__(config, username,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FD3k%3D","line":367,"in_reply_to":"AAAAM3%2F%2FL%2Fs%3D","updated":"2013-02-08 14:54:25.000000000","message":"I removed this code from RestClient as per Jay\u0027s comment in https://review.openstack.org/#/c/20681/ Patch Set 11. And I have added a method called check_if_v3 so as to see if user related actions that are specific to V3 can be done or not. I added this check_if_v3() method in identity_v3_client.py.\n\n-Thanks","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"8724ea7ef005f8b66ff98fc34e91b748fec95b44","unresolved":false,"context_lines":[{"line_number":371,"context_line":"                                           password, auth_url,"},{"line_number":372,"context_line":"                                           tenant_name)"},{"line_number":373,"context_line":"        # Overwrites json-specific header encoding in RestClient"},{"line_number":374,"context_line":"        self.service \u003d self.config.identity.catalog_type"},{"line_number":375,"context_line":"        self.format \u003d \u0027json\u0027"},{"line_number":376,"context_line":"        self.endpoint_url \u003d \u0027adminURL\u0027"},{"line_number":377,"context_line":"        auth_url \u003d self.config.identity.uri"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FLs8%3D","line":374,"updated":"2013-02-04 17:04:13.000000000","message":"If this is really common Client it should not be identity specific.","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"8724ea7ef005f8b66ff98fc34e91b748fec95b44","unresolved":false,"context_lines":[{"line_number":374,"context_line":"        self.service \u003d self.config.identity.catalog_type"},{"line_number":375,"context_line":"        self.format \u003d \u0027json\u0027"},{"line_number":376,"context_line":"        self.endpoint_url \u003d \u0027adminURL\u0027"},{"line_number":377,"context_line":"        auth_url \u003d self.config.identity.uri"},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"    def request(self, method, url, headers\u003dNone, body\u003dNone, wait\u003dNone):"},{"line_number":380,"context_line":"        \"\"\"A simple HTTP request interface.\"\"\""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FLsg%3D","line":377,"updated":"2013-02-04 17:04:13.000000000","message":"Looks like unused/forgotten variable auth_url?","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"42542a7a1082fde9f5ea4b2341df9809b3dbea55","unresolved":false,"context_lines":[{"line_number":376,"context_line":"        self.endpoint_url \u003d \u0027adminURL\u0027"},{"line_number":377,"context_line":"        auth_url \u003d self.config.identity.uri"},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"    def request(self, method, url, headers\u003dNone, body\u003dNone, wait\u003dNone):"},{"line_number":380,"context_line":"        \"\"\"A simple HTTP request interface.\"\"\""},{"line_number":381,"context_line":"        dscv \u003d self.config.identity.disable_ssl_certificate_validation"},{"line_number":382,"context_line":"        self.http_obj \u003d httplib2.Http(disable_ssl_certificate_validation\u003ddscv)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FL5A%3D","line":379,"updated":"2013-02-04 16:46:24.000000000","message":"Here it looks like just the _set_auth and base_url.replace parts are enough for this method, rest can be probably left to super().request. Also storing results in (resp,body) is unnecessary, it can be just \u0027return super..request()\u0027.","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"42542a7a1082fde9f5ea4b2341df9809b3dbea55","unresolved":false,"context_lines":[{"line_number":401,"context_line":"        return self.request(\u0027PATCH\u0027, url, headers, body)"},{"line_number":402,"context_line":""},{"line_number":403,"context_line":""},{"line_number":404,"context_line":"class V3ClientXML(RestClientXML):"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"    def __init__(self, config, username, password, auth_url, tenant_name\u003dNone):"},{"line_number":407,"context_line":"        super(V3ClientXML, self).__init__(config, username,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FL%2Fo%3D","line":404,"updated":"2013-02-04 16:46:24.000000000","message":"Same naming thing here ... stick to RestClientXML as base so V3RestClientXML seems better fit.","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"8724ea7ef005f8b66ff98fc34e91b748fec95b44","unresolved":false,"context_lines":[{"line_number":409,"context_line":"                                          tenant_name)"},{"line_number":410,"context_line":"        #Overwrites json-specific header encoding in RestClient"},{"line_number":411,"context_line":"        self.service \u003d self.config.identity.catalog_type"},{"line_number":412,"context_line":"        self.format \u003d \u0027json\u0027"},{"line_number":413,"context_line":"        self.endpoint_url \u003d \u0027adminURL\u0027"},{"line_number":414,"context_line":""},{"line_number":415,"context_line":"        auth_url \u003d self.config.identity.uri"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FLsY%3D","line":412,"updated":"2013-02-04 17:04:13.000000000","message":"\u0027json\u0027 format for XML client?","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"006f7edf1fb496eafe6598b83cf8560857959378","unresolved":false,"context_lines":[{"line_number":409,"context_line":"                                          tenant_name)"},{"line_number":410,"context_line":"        #Overwrites json-specific header encoding in RestClient"},{"line_number":411,"context_line":"        self.service \u003d self.config.identity.catalog_type"},{"line_number":412,"context_line":"        self.format \u003d \u0027json\u0027"},{"line_number":413,"context_line":"        self.endpoint_url \u003d \u0027adminURL\u0027"},{"line_number":414,"context_line":""},{"line_number":415,"context_line":"        auth_url \u003d self.config.identity.uri"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FLqM%3D","line":412,"in_reply_to":"AAAAM3%2F%2FLsY%3D","updated":"2013-02-04 17:12:50.000000000","message":"Ok, I\u0027m not sure but it looks like this format variable is also unused?","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"42542a7a1082fde9f5ea4b2341df9809b3dbea55","unresolved":false,"context_lines":[{"line_number":414,"context_line":""},{"line_number":415,"context_line":"        auth_url \u003d self.config.identity.uri"},{"line_number":416,"context_line":""},{"line_number":417,"context_line":"    def request(self, method, url, headers\u003dNone, body\u003dNone, wait\u003dNone):"},{"line_number":418,"context_line":"        \"\"\"A simple HTTP request interface.\"\"\""},{"line_number":419,"context_line":"        dscv \u003d self.config.identity.disable_ssl_certificate_validation"},{"line_number":420,"context_line":"        self.http_obj \u003d httplib2.Http(disable_ssl_certificate_validation\u003ddscv)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FL4w%3D","line":417,"updated":"2013-02-04 16:46:24.000000000","message":"This method can be also simplified in same way as for the JSON class above.","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"}],"tempest/services/identity/json/identity_client.py":[{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"16351cd30afc71052f5f33b101246293ca9f8348","unresolved":false,"context_lines":[{"line_number":163,"context_line":"        resp, body \u003d self.patch(\u0027users/%s\u0027 % user_id, post_body,"},{"line_number":164,"context_line":"                                self.headers)"},{"line_number":165,"context_line":"        self.base_url \u003d self.base_url.replace(urlparse(self.base_url).path,"},{"line_number":166,"context_line":"                                              \"/v2.0\")"},{"line_number":167,"context_line":"        body \u003d json.loads(body)"},{"line_number":168,"context_line":"        return resp, body[\u0027user\u0027]"},{"line_number":169,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FSR4%3D","line":166,"updated":"2013-01-30 09:42:57.000000000","message":"I would suggest not to switch url in tests.\nYou can configure your identity endpoint url with version in keystone against which you are running tests.\nAlso if something happens during your patch request, you will not return to previous version (here \u0027v2.0\u0027 hardcoded) and following tests can fail because of this.","commit_id":"9f095507846bdadb831c990acfb4dd8ce76b1c60"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"eff290a03a4a9eea4719a5a14f89cbb0eb5175f7","unresolved":false,"context_lines":[{"line_number":163,"context_line":"        resp, body \u003d self.patch(\u0027users/%s\u0027 % user_id, post_body,"},{"line_number":164,"context_line":"                                self.headers)"},{"line_number":165,"context_line":"        self.base_url \u003d self.base_url.replace(urlparse(self.base_url).path,"},{"line_number":166,"context_line":"                                              \"/v2.0\")"},{"line_number":167,"context_line":"        body \u003d json.loads(body)"},{"line_number":168,"context_line":"        return resp, body[\u0027user\u0027]"},{"line_number":169,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FOkg%3D","line":166,"in_reply_to":"AAAAM3%2F%2FSR4%3D","updated":"2013-02-01 06:40:34.000000000","message":"Hi Sedlák,\nYes, you are right when you say \u0027such switching of URL may lead to a case where previous version may not be re-set\u0027. Hence I submitted next patch by using special Client subclass as in the other submission i.e example you gave me in comment.\n\n-Thanks","commit_id":"9f095507846bdadb831c990acfb4dd8ce76b1c60"}],"tempest/services/identity/json/identity_v3_client.py":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"43e1e85009f862ce6f41602b1306e23b515d1acc","unresolved":false,"context_lines":[{"line_number":47,"context_line":"            \u0027name\u0027: name,"},{"line_number":48,"context_line":"            \u0027email\u0027: email,"},{"line_number":49,"context_line":"            \u0027enabled\u0027: en,"},{"line_number":50,"context_line":"            \u0027tenantId\u0027: tenant_id,"},{"line_number":51,"context_line":"        }"},{"line_number":52,"context_line":"        post_body \u003d json.dumps({\u0027user\u0027: post_body})"},{"line_number":53,"context_line":"        resp, body \u003d self.patch(\u0027users/%s\u0027 % user_id, post_body,"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAM3%2F%2B6y4%3D","line":50,"updated":"2013-02-14 15:01:50.000000000","message":"I don\u0027t see any camelCased key names in any requests or response examples in the v3 API spec:\n\nhttps://github.com/openstack/identity-api/blob/master/openstack-identity-api/src/markdown/identity-api-v3.md\n\nAlso, the word \"tenant\" has been entirely replaced with \"project\" in the v3 API. How is this being tested? It seems to be that the above is a v2 API call, not a v3 API call.","commit_id":"723b1710fccdf1d5bb891e9b065764bd74f9d6ca"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"71e73df5384b917e326a682ba21b5587b07f564b","unresolved":false,"context_lines":[{"line_number":47,"context_line":"            \u0027name\u0027: name,"},{"line_number":48,"context_line":"            \u0027email\u0027: email,"},{"line_number":49,"context_line":"            \u0027enabled\u0027: en,"},{"line_number":50,"context_line":"            \u0027tenantId\u0027: tenant_id,"},{"line_number":51,"context_line":"        }"},{"line_number":52,"context_line":"        post_body \u003d json.dumps({\u0027user\u0027: post_body})"},{"line_number":53,"context_line":"        resp, body \u003d self.patch(\u0027users/%s\u0027 % user_id, post_body,"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAM3%2F%2B1Sk%3D","line":50,"in_reply_to":"AAAAM3%2F%2B6y4%3D","updated":"2013-02-18 07:18:30.000000000","message":"Done","commit_id":"723b1710fccdf1d5bb891e9b065764bd74f9d6ca"}],"tempest/services/identity/v3/xml/identity_client.py":[{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"0f7d24523e5fe71b22fb1a706b3be1d63922d74b","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        return json"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    def request(self, method, url, headers\u003dNone, body\u003dNone, wait\u003dNone):"},{"line_number":59,"context_line":"        \"\"\"Overriding the existing HTTP request in super class RestClient.\"\"\""},{"line_number":60,"context_line":"        dscv \u003d self.config.identity.disable_ssl_certificate_validation"},{"line_number":61,"context_line":"        self.http_obj \u003d httplib2.Http(disable_ssl_certificate_validation\u003ddscv)"},{"line_number":62,"context_line":"        self._set_auth()"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAOn%2F%2Fu3U%3D","line":59,"updated":"2013-04-25 18:50:51.000000000","message":"Why is this here and not in IdentityV3ClientJSON? Isn\u0027t this done in the __init__ of RestClient?","commit_id":"756337cf6e85742dfc9f242664773d8abdbdffb7"},{"author":{"_account_id":6455,"name":"Harika Vakadi","email":"harika_vakadi@persistent.co.in","username":"harika-vakadi"},"change_message_id":"69cbcdc3b58092337f83dab25d8562f55aca3d82","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        return json"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    def request(self, method, url, headers\u003dNone, body\u003dNone, wait\u003dNone):"},{"line_number":59,"context_line":"        \"\"\"Overriding the existing HTTP request in super class RestClient.\"\"\""},{"line_number":60,"context_line":"        dscv \u003d self.config.identity.disable_ssl_certificate_validation"},{"line_number":61,"context_line":"        self.http_obj \u003d httplib2.Http(disable_ssl_certificate_validation\u003ddscv)"},{"line_number":62,"context_line":"        self._set_auth()"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAOn%2F%2FuLI%3D","line":59,"in_reply_to":"AAAAOn%2F%2Fu3U%3D","updated":"2013-04-26 06:09:59.000000000","message":"Yes, it is doing the same in the __init__ of RestClient. Made changes and Submitted accordingly.\n\nThanks","commit_id":"756337cf6e85742dfc9f242664773d8abdbdffb7"}],"tempest/services/identity/xml/identity_v3_client.py":[{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"f18c46ceb62ecf7e301d8bcba52bedbfea33a267","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        tenant_id \u003d kwargs.get(\u0027tenant_id\u0027, None)"},{"line_number":57,"context_line":"        update_user \u003d Element(\"user\","},{"line_number":58,"context_line":"                              xmlns\u003dXMLNS,"},{"line_number":59,"context_line":"                              user_id\u003duser_id,"},{"line_number":60,"context_line":"                              name\u003dname,"},{"line_number":61,"context_line":"                              email\u003demail,"},{"line_number":62,"context_line":"                              tenantId\u003dtenant_id,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FMBA%3D","line":59,"updated":"2013-02-04 14:04:47.000000000","message":"Based on console/log output i would suggest to use just \u0027id\u003duser_id\u0027 here.","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"2c9f88f3653a0a72ab821c9602783305dbe16be2","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        tenant_id \u003d kwargs.get(\u0027tenant_id\u0027, None)"},{"line_number":57,"context_line":"        update_user \u003d Element(\"user\","},{"line_number":58,"context_line":"                              xmlns\u003dXMLNS,"},{"line_number":59,"context_line":"                              user_id\u003duser_id,"},{"line_number":60,"context_line":"                              name\u003dname,"},{"line_number":61,"context_line":"                              email\u003demail,"},{"line_number":62,"context_line":"                              tenantId\u003dtenant_id,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FD3s%3D","line":59,"in_reply_to":"AAAAM3%2F%2FMBA%3D","updated":"2013-02-08 14:54:25.000000000","message":"Done","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"}],"tempest/tests/identity/admin/test_users.py":[{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"16351cd30afc71052f5f33b101246293ca9f8348","unresolved":false,"context_lines":[{"line_number":160,"context_line":"                                 new_user_get[\u0027tenantId\u0027])"},{"line_number":161,"context_line":"                self.assertEqual(u_email2, new_user_get[\u0027email\u0027])"},{"line_number":162,"context_line":"                self.assertEqual(\u0027false\u0027, str(new_user_get[\u0027enabled\u0027]).lower())"},{"line_number":163,"context_line":"            except Exception as e:"},{"line_number":164,"context_line":"                self.fail(\"Updation of user is not successful.\""},{"line_number":165,"context_line":"                          \"Got exception : %s\" % e)"},{"line_number":166,"context_line":"        finally:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FSQA%3D","line":163,"updated":"2013-01-30 09:42:57.000000000","message":"Please don\u0027t catch all possible exceptions.\nBetter try to be more specific (like using AssertionError), otherwise if something not actualy related to your TestCase will brake or happens, this will transform it to \"just one test failed\" when it actually can be some lib/tool/etc is broken.","commit_id":"9f095507846bdadb831c990acfb4dd8ce76b1c60"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"eff290a03a4a9eea4719a5a14f89cbb0eb5175f7","unresolved":false,"context_lines":[{"line_number":160,"context_line":"                                 new_user_get[\u0027tenantId\u0027])"},{"line_number":161,"context_line":"                self.assertEqual(u_email2, new_user_get[\u0027email\u0027])"},{"line_number":162,"context_line":"                self.assertEqual(\u0027false\u0027, str(new_user_get[\u0027enabled\u0027]).lower())"},{"line_number":163,"context_line":"            except Exception as e:"},{"line_number":164,"context_line":"                self.fail(\"Updation of user is not successful.\""},{"line_number":165,"context_line":"                          \"Got exception : %s\" % e)"},{"line_number":166,"context_line":"        finally:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FOkY%3D","line":163,"in_reply_to":"AAAAM3%2F%2FSQA%3D","updated":"2013-02-01 06:40:34.000000000","message":"As this is a positive test case, here in Tempest we generally do not use exception block. I have added this in an attempt of taking extra care. Hence removed this except block and submitted next patch.\n\n-Thanks.","commit_id":"9f095507846bdadb831c990acfb4dd8ce76b1c60"}],"tempest/tests/identity/admin/test_v3_users.py":[{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"42542a7a1082fde9f5ea4b2341df9809b3dbea55","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2012 OpenStack, LLC"},{"line_number":4,"context_line":"# All Rights Reserved."},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FLvg%3D","line":3,"updated":"2013-02-04 16:46:24.000000000","message":"Please update the year. Also in other files actually created in this patch in 2013.","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"2c9f88f3653a0a72ab821c9602783305dbe16be2","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2012 OpenStack, LLC"},{"line_number":4,"context_line":"# All Rights Reserved."},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FD34%3D","line":3,"in_reply_to":"AAAAM3%2F%2FLvg%3D","updated":"2013-02-08 14:54:25.000000000","message":"Done","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"42542a7a1082fde9f5ea4b2341df9809b3dbea55","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    alt_tenant \u003d rand_name(\u0027test_tenant_\u0027)"},{"line_number":32,"context_line":"    alt_description \u003d rand_name(\u0027desc_\u0027)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    def test_user_update(self):"},{"line_number":35,"context_line":"        try:"},{"line_number":36,"context_line":"            flag \u003d False"},{"line_number":37,"context_line":"            # Test case to check if updation of user attributes is successful."}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FL%2F0%3D","line":34,"updated":"2013-02-04 16:46:24.000000000","message":"Please, why are You doing custom-creation of test user and tenant here instead of using setup_test_user() etc? (It will take care of their deletion for You.)","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"2c9f88f3653a0a72ab821c9602783305dbe16be2","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    alt_tenant \u003d rand_name(\u0027test_tenant_\u0027)"},{"line_number":32,"context_line":"    alt_description \u003d rand_name(\u0027desc_\u0027)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    def test_user_update(self):"},{"line_number":35,"context_line":"        try:"},{"line_number":36,"context_line":"            flag \u003d False"},{"line_number":37,"context_line":"            # Test case to check if updation of user attributes is successful."}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FD30%3D","line":34,"in_reply_to":"AAAAM3%2F%2FL%2F0%3D","updated":"2013-02-08 14:54:25.000000000","message":"Done","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"42542a7a1082fde9f5ea4b2341df9809b3dbea55","unresolved":false,"context_lines":[{"line_number":99,"context_line":"                             \"Failed to find project %s in fetched list\" %"},{"line_number":100,"context_line":"                             \u0027, \u0027.join(m_project for m_project"},{"line_number":101,"context_line":"                             in missing_projects))"},{"line_number":102,"context_line":"        except Exception as e:"},{"line_number":103,"context_line":"            self.fail(\"List user projects failed. Got exception: %s\" % e)"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FL1A%3D","line":102,"updated":"2013-02-04 16:46:24.000000000","message":"As I already mention for previous patch-set, please don\u0027t catch all exceptions. If catching is necessary (why not leave it just on asserts?) use AssertionError.","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"2c9f88f3653a0a72ab821c9602783305dbe16be2","unresolved":false,"context_lines":[{"line_number":99,"context_line":"                             \"Failed to find project %s in fetched list\" %"},{"line_number":100,"context_line":"                             \u0027, \u0027.join(m_project for m_project"},{"line_number":101,"context_line":"                             in missing_projects))"},{"line_number":102,"context_line":"        except Exception as e:"},{"line_number":103,"context_line":"            self.fail(\"List user projects failed. Got exception: %s\" % e)"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2FD3w%3D","line":102,"in_reply_to":"AAAAM3%2F%2FL1A%3D","updated":"2013-02-08 14:54:25.000000000","message":"Done","commit_id":"4ebf167061d92eeaa060715e0736646e2f3ad8f4"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"ba0573756334dd92ae2626e2c9b4087452a3fc3a","unresolved":false,"context_lines":[{"line_number":15,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":16,"context_line":"#    under the License."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from nose.plugins.attrib import attr"},{"line_number":19,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":20,"context_line":"from tempest import exceptions"},{"line_number":21,"context_line":"from tempest.tests.identity import base"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAM3%2F%2FBW0%3D","line":18,"updated":"2013-02-11 12:59:18.000000000","message":"This looks like its unused (and should no longer be using nose.plugins.attrib anymore and the tempest specific attr decorator instead)","commit_id":"ce3c54ecd67850f0fbaf18911919b0f0fb14a70d"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"7e32a93096d229a3b4caf2ab28447220d1059f92","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":35,"context_line":"    def test_user_update(self):"},{"line_number":36,"context_line":"        # Test case to check if updation of user attributes is successful."},{"line_number":37,"context_line":"        #Creating first user"},{"line_number":38,"context_line":"        self.data.setup_test_user()"},{"line_number":39,"context_line":"        #Creating second tenant for updation"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAM3%2F%2B8%2Fs%3D","line":36,"updated":"2013-02-13 12:45:05.000000000","message":"\"updation\" -\u003e \"updating\" perhaps?","commit_id":"673a69b8e0dd916b160b284baf0ed4eca238c65d"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"ec9717af6d7897c09cc1ba37d376eeeb3df97917","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":35,"context_line":"    def test_user_update(self):"},{"line_number":36,"context_line":"        # Test case to check if updation of user attributes is successful."},{"line_number":37,"context_line":"        #Creating first user"},{"line_number":38,"context_line":"        self.data.setup_test_user()"},{"line_number":39,"context_line":"        #Creating second tenant for updation"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAM3%2F%2B61E%3D","line":36,"in_reply_to":"AAAAM3%2F%2B8%2Fs%3D","updated":"2013-02-14 14:45:19.000000000","message":"Done","commit_id":"673a69b8e0dd916b160b284baf0ed4eca238c65d"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"7e32a93096d229a3b4caf2ab28447220d1059f92","unresolved":false,"context_lines":[{"line_number":46,"context_line":"            tenant_id\u003dself.data.tenant[\u0027id\u0027],"},{"line_number":47,"context_line":"            email\u003du_email2, enabled\u003dFalse)"},{"line_number":48,"context_line":"        #Assert response body of update user."},{"line_number":49,"context_line":"        self.assertTrue(resp[\u0027status\u0027].startswith(\u00272\u0027))"},{"line_number":50,"context_line":"        self.assertEqual(u_name2, update_user[\u0027name\u0027])"},{"line_number":51,"context_line":"        self.assertEqual(self.data.tenant[\u0027id\u0027],"},{"line_number":52,"context_line":"                         update_user[\u0027tenantId\u0027])"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAM3%2F%2B8%2Fo%3D","line":49,"updated":"2013-02-13 12:45:05.000000000","message":"Is the API really not specific about the return code here?","commit_id":"673a69b8e0dd916b160b284baf0ed4eca238c65d"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"ec9717af6d7897c09cc1ba37d376eeeb3df97917","unresolved":false,"context_lines":[{"line_number":46,"context_line":"            tenant_id\u003dself.data.tenant[\u0027id\u0027],"},{"line_number":47,"context_line":"            email\u003du_email2, enabled\u003dFalse)"},{"line_number":48,"context_line":"        #Assert response body of update user."},{"line_number":49,"context_line":"        self.assertTrue(resp[\u0027status\u0027].startswith(\u00272\u0027))"},{"line_number":50,"context_line":"        self.assertEqual(u_name2, update_user[\u0027name\u0027])"},{"line_number":51,"context_line":"        self.assertEqual(self.data.tenant[\u0027id\u0027],"},{"line_number":52,"context_line":"                         update_user[\u0027tenantId\u0027])"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAM3%2F%2B61A%3D","line":49,"in_reply_to":"AAAAM3%2F%2B8%2Fo%3D","updated":"2013-02-14 14:45:19.000000000","message":"Done","commit_id":"673a69b8e0dd916b160b284baf0ed4eca238c65d"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"43e1e85009f862ce6f41602b1306e23b515d1acc","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        if not cls.identity_v3_client.check_if_v3():"},{"line_number":32,"context_line":"            raise cls.skipException(\"Identity API V3 is not enabled\")"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":35,"context_line":"    def test_user_update(self):"},{"line_number":36,"context_line":"        # Test case to check if updating of user attributes is successful."},{"line_number":37,"context_line":"        #Creating first user"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAM3%2F%2B6z4%3D","line":34,"updated":"2013-02-14 15:01:50.000000000","message":"testtools.test.attr does not use kwargs... this should be @attr(\"smoke\"). Here and below.","commit_id":"723b1710fccdf1d5bb891e9b065764bd74f9d6ca"},{"author":{"_account_id":2238,"name":"rajalakshmi-ganesan","email":"rajalakshmi.girish@hpe.com","username":"rajalakshmi-ganesan"},"change_message_id":"71e73df5384b917e326a682ba21b5587b07f564b","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        if not cls.identity_v3_client.check_if_v3():"},{"line_number":32,"context_line":"            raise cls.skipException(\"Identity API V3 is not enabled\")"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":35,"context_line":"    def test_user_update(self):"},{"line_number":36,"context_line":"        # Test case to check if updating of user attributes is successful."},{"line_number":37,"context_line":"        #Creating first user"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAM3%2F%2B1Sg%3D","line":34,"in_reply_to":"AAAAM3%2F%2B6z4%3D","updated":"2013-02-18 07:18:30.000000000","message":"Done","commit_id":"723b1710fccdf1d5bb891e9b065764bd74f9d6ca"}]}
