)]}'
{"tempest/api/identity/admin/v3/test_default_project_id.py":[{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"80266cc320c3f967132c3e174cce42437d9cbc20","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    @test.attr(type\u003d\u0027smoke\u0027)"},{"line_number":35,"context_line":"    def test_default_project_id(self):"},{"line_number":36,"context_line":"        # create a domain"},{"line_number":37,"context_line":"        dom_name \u003d data_utils.rand_name(\u0027dom-\u0027)"},{"line_number":38,"context_line":"        _, body \u003d self.client.create_domain(dom_name)"},{"line_number":39,"context_line":"        self.assertIsNotNone(body, \"failed to create a domain named \" +"},{"line_number":40,"context_line":"                             dom_name)"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a890539_ec145a45","line":37,"updated":"2014-11-26 07:10:15.000000000","message":"nit: rand names shouldn\u0027t have \"-\" at the end","commit_id":"16df5c3000a283c560abe7cdcc52d65f757c7644"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"80266cc320c3f967132c3e174cce42437d9cbc20","unresolved":false,"context_lines":[{"line_number":35,"context_line":"    def test_default_project_id(self):"},{"line_number":36,"context_line":"        # create a domain"},{"line_number":37,"context_line":"        dom_name \u003d data_utils.rand_name(\u0027dom-\u0027)"},{"line_number":38,"context_line":"        _, body \u003d self.client.create_domain(dom_name)"},{"line_number":39,"context_line":"        self.assertIsNotNone(body, \"failed to create a domain named \" +"},{"line_number":40,"context_line":"                             dom_name)"},{"line_number":41,"context_line":"        dom_id \u003d body[\u0027id\u0027]"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a890539_4c2d6e8e","line":38,"updated":"2014-11-26 07:10:15.000000000","message":"Maybe replace \"body\" with a meaningful name (like \"domain\"). code would be clearer and L41 would be redundant","commit_id":"16df5c3000a283c560abe7cdcc52d65f757c7644"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"80266cc320c3f967132c3e174cce42437d9cbc20","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        # create a domain"},{"line_number":37,"context_line":"        dom_name \u003d data_utils.rand_name(\u0027dom-\u0027)"},{"line_number":38,"context_line":"        _, body \u003d self.client.create_domain(dom_name)"},{"line_number":39,"context_line":"        self.assertIsNotNone(body, \"failed to create a domain named \" +"},{"line_number":40,"context_line":"                             dom_name)"},{"line_number":41,"context_line":"        dom_id \u003d body[\u0027id\u0027]"},{"line_number":42,"context_line":"        self.addCleanup(self._delete_domain, dom_id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a890539_6c286a86","line":39,"updated":"2014-11-26 07:10:15.000000000","message":"maybe assert that body[\u0027name\u0027] \u003d dom_name?","commit_id":"16df5c3000a283c560abe7cdcc52d65f757c7644"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"80266cc320c3f967132c3e174cce42437d9cbc20","unresolved":false,"context_lines":[{"line_number":41,"context_line":"        dom_id \u003d body[\u0027id\u0027]"},{"line_number":42,"context_line":"        self.addCleanup(self._delete_domain, dom_id)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"        # create a project in the domain"},{"line_number":45,"context_line":"        proj_name \u003d data_utils.rand_name(\u0027proj-\u0027)"},{"line_number":46,"context_line":"        _, body \u003d self.client.create_project(proj_name, domain_id\u003ddom_id)"},{"line_number":47,"context_line":"        self.assertIsNotNone(body, \"failed to create a project named \" +"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a890539_8c52f610","line":44,"updated":"2014-11-26 07:10:15.000000000","message":"ditto","commit_id":"16df5c3000a283c560abe7cdcc52d65f757c7644"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"80266cc320c3f967132c3e174cce42437d9cbc20","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        self.addCleanup(self.client.delete_project, proj_id)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"        # create a user in the domain, with the previous project as his"},{"line_number":53,"context_line":"        # default project"},{"line_number":54,"context_line":"        user_name \u003d data_utils.rand_name(\u0027user-\u0027)"},{"line_number":55,"context_line":"        _, body \u003d self.client.create_user(user_name, password\u003duser_name,"},{"line_number":56,"context_line":"                                          domain_id\u003ddom_id,"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a890539_ec429a3c","line":53,"updated":"2014-11-26 07:10:15.000000000","message":"ditto","commit_id":"16df5c3000a283c560abe7cdcc52d65f757c7644"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"80266cc320c3f967132c3e174cce42437d9cbc20","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        _, body \u003d self.client.create_user(user_name, password\u003duser_name,"},{"line_number":56,"context_line":"                                          domain_id\u003ddom_id,"},{"line_number":57,"context_line":"                                          default_project_id\u003dproj_id)"},{"line_number":58,"context_line":"        self.assertIsNotNone(body, \"failed to create a user named \" +"},{"line_number":59,"context_line":"                             user_name)"},{"line_number":60,"context_line":"        user_id \u003d body[\u0027id\u0027]"},{"line_number":61,"context_line":"        self.addCleanup(self.client.delete_user, user_id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a890539_6c76aaa5","line":58,"updated":"2014-11-26 07:10:15.000000000","message":"please assert that various user attributes (name, pass, domain, project) are as required","commit_id":"16df5c3000a283c560abe7cdcc52d65f757c7644"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"80266cc320c3f967132c3e174cce42437d9cbc20","unresolved":false,"context_lines":[{"line_number":67,"context_line":""},{"line_number":68,"context_line":"        # grant the admin role to the user on his project"},{"line_number":69,"context_line":"        self.client.assign_user_role_on_project(proj_id, user_id,"},{"line_number":70,"context_line":"                                                admin_role_id)"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        # create a new client with user\u0027s credentials (NOTE: unscoped token!)"},{"line_number":73,"context_line":"        creds \u003d auth.KeystoneV3Credentials(username\u003duser_name,"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a890539_ec69babe","line":70,"updated":"2014-11-26 07:10:15.000000000","message":"maybe add an assertion here?","commit_id":"16df5c3000a283c560abe7cdcc52d65f757c7644"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"80266cc320c3f967132c3e174cce42437d9cbc20","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        creds \u003d auth_provider.fill_credentials()"},{"line_number":78,"context_line":"        admin_client \u003d clients.Manager(interface\u003dself._interface,"},{"line_number":79,"context_line":"                                       credentials\u003dcreds)"},{"line_number":80,"context_line":"        self.assertIsNotNone(admin_client,"},{"line_number":81,"context_line":"                             \"could not create a client with the generated \""},{"line_number":82,"context_line":"                             \"user credentials\")"},{"line_number":83,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"5a890539_2c6022ce","line":80,"updated":"2014-11-26 07:10:15.000000000","message":"more meaningful assertions please","commit_id":"16df5c3000a283c560abe7cdcc52d65f757c7644"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"aa815801d4707e9aef3684a50fc0ecebf484f10a","unresolved":false,"context_lines":[{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        # grant the admin role to the user on his project"},{"line_number":76,"context_line":"        self.client.assign_user_role_on_project(proj_id, user_id,"},{"line_number":77,"context_line":"                                                admin_role_id)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        # create a new client with user\u0027s credentials (NOTE: unscoped token!)"},{"line_number":80,"context_line":"        creds \u003d auth.KeystoneV3Credentials(username\u003duser_name,"}],"source_content_type":"text/x-python","patch_set":6,"id":"5a890539_2144a445","line":77,"updated":"2014-11-26 10:40:28.000000000","message":"see comments on previous patch previous","commit_id":"85433690c6b853307de84a8f48b9c6b210df6eb8"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"aa815801d4707e9aef3684a50fc0ecebf484f10a","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        creds \u003d auth_provider.fill_credentials()"},{"line_number":85,"context_line":"        admin_client \u003d clients.Manager(interface\u003dself._interface,"},{"line_number":86,"context_line":"                                       credentials\u003dcreds)"},{"line_number":87,"context_line":"        self.assertIsNotNone(admin_client,"},{"line_number":88,"context_line":"                             \"could not create a client with the generated \""},{"line_number":89,"context_line":"                             \"user credentials\")"},{"line_number":90,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"5a890539_61794c92","line":87,"updated":"2014-11-26 10:40:28.000000000","message":"ditto","commit_id":"85433690c6b853307de84a8f48b9c6b210df6eb8"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"be5483aa6b013bb7fd91ac363e66e529132eb0f9","unresolved":false,"context_lines":[{"line_number":44,"context_line":"        # create a project in the domain"},{"line_number":45,"context_line":"        proj_name \u003d data_utils.rand_name(\u0027proj\u0027)"},{"line_number":46,"context_line":"        _, proj_body \u003d self.client.create_project(proj_name, domain_id\u003ddom_id)"},{"line_number":47,"context_line":"        self.assertEqual(proj_body[\u0027name\u0027], proj_name,"},{"line_number":48,"context_line":"                         \"failed to create a project named \" + proj_name +"},{"line_number":49,"context_line":"                         \" in domain \" + dom_name)"},{"line_number":50,"context_line":"        self.assertEqual(proj_body[\u0027domain_id\u0027], dom_id,"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a890539_8cc44342","line":47,"updated":"2014-12-01 17:59:13.000000000","message":"As in my previous comment, you are basically asserting that \"create_project\" is working properly. I don\u0027t think this is really necessary. If you do put in the assertion than you are saying it might fail. But since \"create_project\" at this point has already returned success, the addCleanup needs to happen before these assertions.","commit_id":"5f54a834f2c3330d28083fc13ef4f88aefe6444a"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"be5483aa6b013bb7fd91ac363e66e529132eb0f9","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        _, user_body \u003d self.client.create_user(user_name, password\u003duser_name,"},{"line_number":60,"context_line":"                                               domain_id\u003ddom_id,"},{"line_number":61,"context_line":"                                               default_project_id\u003dproj_id)"},{"line_number":62,"context_line":"        self.assertEqual(user_body[\u0027name\u0027], user_name,"},{"line_number":63,"context_line":"                         \"failed to create a user named \" + user_name)"},{"line_number":64,"context_line":"        self.assertEqual(user_body[\u0027domain_id\u0027], dom_id,"},{"line_number":65,"context_line":"                         \"user \" + user_name +"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a890539_acc3bf36","line":62,"updated":"2014-12-01 17:59:13.000000000","message":"Ditto","commit_id":"5f54a834f2c3330d28083fc13ef4f88aefe6444a"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"d255b2bdf50ce5b36d15370405e6493a364ede80","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        self.addCleanup(self.client.delete_project, proj_id)"},{"line_number":47,"context_line":"        self.assertEqual(proj_body[\u0027domain_id\u0027], dom_id,"},{"line_number":48,"context_line":"                         \"project \" + proj_name +"},{"line_number":49,"context_line":"                         \"doesn\u0027t have domain id \" + dom_id)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"        # create a user in the domain, with the previous project as his"},{"line_number":52,"context_line":"        # default project"}],"source_content_type":"text/x-python","patch_set":8,"id":"5a890539_cd16a9f2","line":49,"updated":"2014-12-05 03:37:55.000000000","message":"need space before \u0027doesn\u0027t\u0027- \"doesn\u0027t have....\" -\u003e \" doesn\u0027t have....\"","commit_id":"3434547582f6343138a5d9810ab2c4969fc36998"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"d255b2bdf50ce5b36d15370405e6493a364ede80","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        self.addCleanup(self.client.delete_user, user_id)"},{"line_number":59,"context_line":"        self.assertEqual(user_body[\u0027domain_id\u0027], dom_id,"},{"line_number":60,"context_line":"                         \"user \" + user_name +"},{"line_number":61,"context_line":"                         \"doesn\u0027t have domain id \" + dom_id)"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"        # get roles and find the admin role"},{"line_number":64,"context_line":"        admin_role \u003d self.get_role_by_name(\"admin\")"}],"source_content_type":"text/x-python","patch_set":8,"id":"5a890539_ed1365ff","line":61,"updated":"2014-12-05 03:37:55.000000000","message":"ditto","commit_id":"3434547582f6343138a5d9810ab2c4969fc36998"}],"tempest/services/identity/v3/json/identity_client.py":[{"author":{"_account_id":10969,"name":"Shnaidman Sagi (Sergey)","display_name":"Shnaidman Sagi","email":"sshnaidm@redhat.com","username":"sergsh"},"change_message_id":"54a686db36792c53223e50c01c96704809df136f","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        \"\"\"Creates a user.\"\"\""},{"line_number":37,"context_line":"        en \u003d kwargs.get(\u0027enabled\u0027, True)"},{"line_number":38,"context_line":"        description \u003d kwargs.get(\u0027description\u0027, None)"},{"line_number":39,"context_line":"        default_project_id \u003d kwargs.get(\u0027default_project_id\u0027, None)"},{"line_number":40,"context_line":"        post_body \u003d {"},{"line_number":41,"context_line":"            \u0027project_id\u0027: project_id,"},{"line_number":42,"context_line":"            \u0027default_project_id\u0027: default_project_id,"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_6cd41c20","line":39,"updated":"2014-11-24 23:49:45.000000000","message":"None it\u0027s by default if you don\u0027t get key.","commit_id":"2cdcdc931a5c5c08d008726d75d23e5734cbd1d7"},{"author":{"_account_id":10969,"name":"Shnaidman Sagi (Sergey)","display_name":"Shnaidman Sagi","email":"sshnaidm@redhat.com","username":"sergsh"},"change_message_id":"54a686db36792c53223e50c01c96704809df136f","unresolved":false,"context_lines":[{"line_number":64,"context_line":"                                            body[\u0027default_project_id\u0027])"},{"line_number":65,"context_line":"        else:"},{"line_number":66,"context_line":"            default_project_id \u003d kwargs.get(\u0027default_project_id\u0027,"},{"line_number":67,"context_line":"                                            None)"},{"line_number":68,"context_line":"        description \u003d kwargs.get(\u0027description\u0027, body[\u0027description\u0027])"},{"line_number":69,"context_line":"        domain_id \u003d kwargs.get(\u0027domain_id\u0027, body[\u0027domain_id\u0027])"},{"line_number":70,"context_line":"        post_body \u003d {"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_acda8448","line":67,"updated":"2014-11-24 23:49:45.000000000","message":"see above","commit_id":"2cdcdc931a5c5c08d008726d75d23e5734cbd1d7"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"80266cc320c3f967132c3e174cce42437d9cbc20","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        \"\"\"Creates a user.\"\"\""},{"line_number":37,"context_line":"        en \u003d kwargs.get(\u0027enabled\u0027, True)"},{"line_number":38,"context_line":"        description \u003d kwargs.get(\u0027description\u0027, None)"},{"line_number":39,"context_line":"        default_project_id \u003d kwargs.get(\u0027default_project_id\u0027)"},{"line_number":40,"context_line":"        post_body \u003d {"},{"line_number":41,"context_line":"            \u0027project_id\u0027: project_id,"},{"line_number":42,"context_line":"            \u0027default_project_id\u0027: default_project_id,"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a890539_aca332fe","line":39,"updated":"2014-11-26 07:10:15.000000000","message":"you need a default value here - like stated in L38.\nOtherwise, this is a required argument and should be declared in L34","commit_id":"16df5c3000a283c560abe7cdcc52d65f757c7644"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"80266cc320c3f967132c3e174cce42437d9cbc20","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        email \u003d kwargs.get(\u0027email\u0027, body[\u0027email\u0027])"},{"line_number":60,"context_line":"        en \u003d kwargs.get(\u0027enabled\u0027, body[\u0027enabled\u0027])"},{"line_number":61,"context_line":"        project_id \u003d kwargs.get(\u0027project_id\u0027, body[\u0027project_id\u0027])"},{"line_number":62,"context_line":"        if \u0027default_project_id\u0027 in body.keys():"},{"line_number":63,"context_line":"            default_project_id \u003d kwargs.get(\u0027default_project_id\u0027,"},{"line_number":64,"context_line":"                                            body[\u0027default_project_id\u0027])"},{"line_number":65,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a890539_ecd29afe","line":62,"updated":"2014-11-26 07:10:15.000000000","message":"the priorities of the value of default_project_id are unclear to me.\nIIUC it is:\nif not \u0027default_project_id\u0027 in kwargs and \u0027default_project_id\u0027 in body:\n    default_project_id \u003d body[\u0027default_project_id\u0027]\nelse:\n    default_project_id \u003d kwargs.get(\u0027default_project_id\u0027)\n\nif this is your intended flow, it\u0027s problematic in cases default_project_id isn\u0027t provided in kwargs, and you should either set default in L66 or add default_project_id to L56 to force its presence.\nIf this isn\u0027t what you wanted to do, please rethink this block","commit_id":"16df5c3000a283c560abe7cdcc52d65f757c7644"}]}
