)]}'
{"keystone/tests/unit/core.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":312,"context_line":"    return ref"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":""},{"line_number":315,"context_line":"def new_user_ref(domain_id, project_id\u003dNone, **kwargs):"},{"line_number":316,"context_line":"    ref \u003d new_ref()"},{"line_number":317,"context_line":"    ref[\u0027domain_id\u0027] \u003d domain_id"},{"line_number":318,"context_line":"    ref[\u0027email\u0027] \u003d uuid.uuid4().hex"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_07a3c69f","line":315,"updated":"2015-11-13 13:26:28.000000000","message":"you could be ambitious and have \u0027default_project_id\u0027 be part of the kwargs that are passed in. \n\nlong term we want to remove the \u0027default_project_id\u0027 as it\u0027s mainly a v2.0ism, and not something we want in v3","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"708d912f96ce1bab95ff8af6593aabfa2955f063","unresolved":false,"context_lines":[{"line_number":312,"context_line":"    return ref"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":""},{"line_number":315,"context_line":"def new_user_ref(domain_id, project_id\u003dNone, **kwargs):"},{"line_number":316,"context_line":"    ref \u003d new_ref()"},{"line_number":317,"context_line":"    ref[\u0027domain_id\u0027] \u003d domain_id"},{"line_number":318,"context_line":"    ref[\u0027email\u0027] \u003d uuid.uuid4().hex"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_49d0eac9","line":315,"in_reply_to":"da85f559_07a3c69f","updated":"2015-11-13 21:58:55.000000000","message":"is that in place of project_id?","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"421aaa7c41afe8de0d438725a1530b8d7b914652","unresolved":false,"context_lines":[{"line_number":315,"context_line":"def new_user_ref(domain_id, project_id\u003dNone, **kwargs):"},{"line_number":316,"context_line":"    ref \u003d new_ref()"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"    # do not include by default, allow user to add with kwargs"},{"line_number":319,"context_line":"    del ref[\u0027description\u0027]"},{"line_number":320,"context_line":""},{"line_number":321,"context_line":"    ref[\u0027domain_id\u0027] \u003d domain_id"}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_8dbb4b72","line":318,"updated":"2015-11-17 05:08:13.000000000","message":"cannot this get updated in L326?","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"421aaa7c41afe8de0d438725a1530b8d7b914652","unresolved":false,"context_lines":[{"line_number":414,"context_line":"    \"\"\""},{"line_number":415,"context_line":"    user \u003d new_user_ref(domain_id\u003ddomain_id, **kwargs)"},{"line_number":416,"context_line":"    password \u003d user[\u0027password\u0027]"},{"line_number":417,"context_line":"    user \u003d api.create_user(user)"},{"line_number":418,"context_line":"    user[\u0027password\u0027] \u003d password"},{"line_number":419,"context_line":"    return user"},{"line_number":420,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_583f5fb4","line":417,"updated":"2015-11-17 05:08:13.000000000","message":"do it like this:\n  self.identity_api.create_user(user)\n\nand get rid of \u0027api\u0027 parameter, and update all of the related changes.","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"48a231084d9489f48b84807a0fb3305b7091368d","unresolved":false,"context_lines":[{"line_number":414,"context_line":"    \"\"\""},{"line_number":415,"context_line":"    user \u003d new_user_ref(domain_id\u003ddomain_id, **kwargs)"},{"line_number":416,"context_line":"    password \u003d user[\u0027password\u0027]"},{"line_number":417,"context_line":"    user \u003d api.create_user(user)"},{"line_number":418,"context_line":"    user[\u0027password\u0027] \u003d password"},{"line_number":419,"context_line":"    return user"},{"line_number":420,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_d0ea1fac","line":417,"in_reply_to":"ba8a016a_583f5fb4","updated":"2015-11-17 18:12:26.000000000","message":"what self? This is a function, not a method on a class. I pulled this out because no class was shared in common for all of the uses.","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"dfd651514b6f7ba9bc4f26cf0b222f8a6f61c805","unresolved":false,"context_lines":[{"line_number":414,"context_line":"    \"\"\""},{"line_number":415,"context_line":"    user \u003d new_user_ref(domain_id\u003ddomain_id, **kwargs)"},{"line_number":416,"context_line":"    password \u003d user[\u0027password\u0027]"},{"line_number":417,"context_line":"    user \u003d api.create_user(user)"},{"line_number":418,"context_line":"    user[\u0027password\u0027] \u003d password"},{"line_number":419,"context_line":"    return user"},{"line_number":420,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_4ed208d4","line":417,"in_reply_to":"ba8a016a_d0ea1fac","updated":"2015-11-17 22:34:54.000000000","message":"I am properly wrong and miss the point you have pulled this out, thanks!","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"}],"keystone/tests/unit/test_auth.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":717,"context_line":"        #    default-domain foo."},{"line_number":718,"context_line":"        new_user \u003d unit.new_user_ref(name\u003dself.user_foo[\u0027name\u0027],"},{"line_number":719,"context_line":"                                     domain_id\u003dnew_domain_id,"},{"line_number":720,"context_line":"                                     email\u003d\u0027foo@bar2.com\u0027)"},{"line_number":721,"context_line":"        new_user_password \u003d new_user[\u0027password\u0027]"},{"line_number":722,"context_line":"        new_user \u003d self.identity_api.create_user(new_user)"},{"line_number":723,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_a7bafabe","line":720,"updated":"2015-11-13 13:26:28.000000000","message":"i think email can be a uuid here, and doesn\u0027t need to be passed in","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"421aaa7c41afe8de0d438725a1530b8d7b914652","unresolved":false,"context_lines":[{"line_number":715,"context_line":""},{"line_number":716,"context_line":"        # 2) Create user \"foo\" in new domain with different password than"},{"line_number":717,"context_line":"        #    default-domain foo."},{"line_number":718,"context_line":"        new_user \u003d unit.create_user(self.identity_api,"},{"line_number":719,"context_line":"                                    name\u003dself.user_foo[\u0027name\u0027],"},{"line_number":720,"context_line":"                                    domain_id\u003dnew_domain_id)"},{"line_number":721,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_786ee3ca","line":718,"updated":"2015-11-17 05:08:13.000000000","message":"\u0027self.identity_api\u0027 argument is not necessary given here.","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"48a231084d9489f48b84807a0fb3305b7091368d","unresolved":false,"context_lines":[{"line_number":715,"context_line":""},{"line_number":716,"context_line":"        # 2) Create user \"foo\" in new domain with different password than"},{"line_number":717,"context_line":"        #    default-domain foo."},{"line_number":718,"context_line":"        new_user \u003d unit.create_user(self.identity_api,"},{"line_number":719,"context_line":"                                    name\u003dself.user_foo[\u0027name\u0027],"},{"line_number":720,"context_line":"                                    domain_id\u003dnew_domain_id)"},{"line_number":721,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_10a507b4","line":718,"in_reply_to":"ba8a016a_786ee3ca","updated":"2015-11-17 18:12:26.000000000","message":"Yes it really is. Look at the function in core.py. I cannot call api.create_user() without the api reference.","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"}],"keystone/tests/unit/test_backend.py":[{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"311433e390bf5e945121d409d12c1837dabdc2f2","unresolved":false,"context_lines":[{"line_number":481,"context_line":"    def test_authenticate_and_get_roles_no_metadata(self):"},{"line_number":482,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027NO_META\u0027,"},{"line_number":483,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":484,"context_line":"                                 password\u003d\u0027no_meta2\u0027)"},{"line_number":485,"context_line":"        del user[\u0027id\u0027]"},{"line_number":486,"context_line":"        del user[\u0027description\u0027]"},{"line_number":487,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da85f559_3c50dcd3","line":484,"updated":"2015-11-11 14:22:29.000000000","message":"No need to specify explicit name and password here.","commit_id":"8519846ced5fc1a9cedf888bb37fdf9b3d4ffd73"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"2388765cc86f08f0930eebb3272bbb0101d5c336","unresolved":false,"context_lines":[{"line_number":481,"context_line":"    def test_authenticate_and_get_roles_no_metadata(self):"},{"line_number":482,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027NO_META\u0027,"},{"line_number":483,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":484,"context_line":"                                 password\u003d\u0027no_meta2\u0027)"},{"line_number":485,"context_line":"        del user[\u0027id\u0027]"},{"line_number":486,"context_line":"        del user[\u0027description\u0027]"},{"line_number":487,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da85f559_c0df5667","line":484,"in_reply_to":"da85f559_3c50dcd3","updated":"2015-11-11 17:45:49.000000000","message":"I was trying to make the smallest change possible since that has been a consistent request during review.","commit_id":"8519846ced5fc1a9cedf888bb37fdf9b3d4ffd73"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"311433e390bf5e945121d409d12c1837dabdc2f2","unresolved":false,"context_lines":[{"line_number":686,"context_line":""},{"line_number":687,"context_line":"        user2 \u003d unit.new_user_ref(name\u003duser1[\u0027name\u0027],"},{"line_number":688,"context_line":"                                  domain_id\u003dnew_domain[\u0027id\u0027])"},{"line_number":689,"context_line":"                 "},{"line_number":690,"context_line":"        self.identity_api.create_user(user1)"},{"line_number":691,"context_line":"        self.identity_api.create_user(user2)"},{"line_number":692,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da85f559_5cdfe068","line":689,"updated":"2015-11-11 14:22:29.000000000","message":"This is making pep8 to fail :)","commit_id":"8519846ced5fc1a9cedf888bb37fdf9b3d4ffd73"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"2388765cc86f08f0930eebb3272bbb0101d5c336","unresolved":false,"context_lines":[{"line_number":686,"context_line":""},{"line_number":687,"context_line":"        user2 \u003d unit.new_user_ref(name\u003duser1[\u0027name\u0027],"},{"line_number":688,"context_line":"                                  domain_id\u003dnew_domain[\u0027id\u0027])"},{"line_number":689,"context_line":"                 "},{"line_number":690,"context_line":"        self.identity_api.create_user(user1)"},{"line_number":691,"context_line":"        self.identity_api.create_user(user2)"},{"line_number":692,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da85f559_80b70e39","line":689,"in_reply_to":"da85f559_5cdfe068","updated":"2015-11-11 17:45:49.000000000","message":"I know. WIP :-) I have not run it through PEP8 yet just the core py27 tests.","commit_id":"8519846ced5fc1a9cedf888bb37fdf9b3d4ffd73"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":481,"context_line":"    def test_authenticate_and_get_roles_no_metadata(self):"},{"line_number":482,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027NO_META\u0027,"},{"line_number":483,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":484,"context_line":"                                 password\u003d\u0027no_meta2\u0027)"},{"line_number":485,"context_line":"        del user[\u0027id\u0027]"},{"line_number":486,"context_line":"        del user[\u0027description\u0027]"},{"line_number":487,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_077746d5","line":484,"updated":"2015-11-13 13:26:28.000000000","message":"so i\u0027m starting to realize that asking to replace all these hard-coded values might be out of scope for this patch, but if you do a follow on, please remove all these unnecessary hardcoded strings like NO_META and no_meta2","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"708d912f96ce1bab95ff8af6593aabfa2955f063","unresolved":false,"context_lines":[{"line_number":481,"context_line":"    def test_authenticate_and_get_roles_no_metadata(self):"},{"line_number":482,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027NO_META\u0027,"},{"line_number":483,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":484,"context_line":"                                 password\u003d\u0027no_meta2\u0027)"},{"line_number":485,"context_line":"        del user[\u0027id\u0027]"},{"line_number":486,"context_line":"        del user[\u0027description\u0027]"},{"line_number":487,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_892a52e6","line":484,"in_reply_to":"da85f559_077746d5","updated":"2015-11-13 21:58:55.000000000","message":"I thought about it but I could not be sure if they were related to earlier bugs or issues.\n\nI can make a follow on patch.","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":653,"context_line":"                          user[\u0027name\u0027], DEFAULT_DOMAIN_ID)"},{"line_number":654,"context_line":"        user \u003d unit.new_user_ref(domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":655,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":656,"context_line":"        del user[\"description\"]"},{"line_number":657,"context_line":"        ref \u003d self.identity_api.get_user_by_name(user[\u0027name\u0027],"},{"line_number":658,"context_line":"                                                 user[\u0027domain_id\u0027])"},{"line_number":659,"context_line":"        user_updated \u003d self.identity_api.update_user(ref[\u0027id\u0027], user)"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_e7548222","line":656,"updated":"2015-11-13 13:26:28.000000000","message":"why delete description?","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"708d912f96ce1bab95ff8af6593aabfa2955f063","unresolved":false,"context_lines":[{"line_number":653,"context_line":"                          user[\u0027name\u0027], DEFAULT_DOMAIN_ID)"},{"line_number":654,"context_line":"        user \u003d unit.new_user_ref(domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":655,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":656,"context_line":"        del user[\"description\"]"},{"line_number":657,"context_line":"        ref \u003d self.identity_api.get_user_by_name(user[\u0027name\u0027],"},{"line_number":658,"context_line":"                                                 user[\u0027domain_id\u0027])"},{"line_number":659,"context_line":"        user_updated \u003d self.identity_api.update_user(ref[\u0027id\u0027], user)"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_e9451eb3","line":656,"in_reply_to":"da85f559_e7548222","updated":"2015-11-13 21:58:55.000000000","message":"I get test failures with it.","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":673,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027fake1\u0027,"},{"line_number":674,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":675,"context_line":"                                 password\u003d\u0027fakepass\u0027,"},{"line_number":676,"context_line":"                                 tenants\u003d[\u0027bar\u0027])"},{"line_number":677,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":678,"context_line":"        self.assertRaises(exception.Conflict,"},{"line_number":679,"context_line":"                          self.identity_api.create_user,"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_8717b653","line":676,"updated":"2015-11-13 13:26:28.000000000","message":"again, for a follow on patch, remove name and password, and what the heck is \u0027tenants\u0027?","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":1295,"context_line":"        new_group \u003d self.identity_api.create_group(new_group)"},{"line_number":1296,"context_line":"        new_group2 \u003d unit.new_group_ref(domain_id\u003dnew_domain[\u0027id\u0027])"},{"line_number":1297,"context_line":"        new_group2 \u003d self.identity_api.create_group(new_group2)"},{"line_number":1298,"context_line":"        new_user \u003d unit.new_user_ref(name\u003d\u0027new_user\u0027,"},{"line_number":1299,"context_line":"                                     domain_id\u003dnew_domain[\u0027id\u0027])"},{"line_number":1300,"context_line":"        new_user \u003d self.identity_api.create_user(new_user)"},{"line_number":1301,"context_line":"        new_user2 \u003d unit.new_user_ref(name\u003d\u0027new_user2\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_e230f0ea","line":1298,"updated":"2015-11-13 13:26:28.000000000","message":"can use uuid here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":1298,"context_line":"        new_user \u003d unit.new_user_ref(name\u003d\u0027new_user\u0027,"},{"line_number":1299,"context_line":"                                     domain_id\u003dnew_domain[\u0027id\u0027])"},{"line_number":1300,"context_line":"        new_user \u003d self.identity_api.create_user(new_user)"},{"line_number":1301,"context_line":"        new_user2 \u003d unit.new_user_ref(name\u003d\u0027new_user2\u0027,"},{"line_number":1302,"context_line":"                                      domain_id\u003dnew_domain[\u0027id\u0027])"},{"line_number":1303,"context_line":"        new_user2 \u003d self.identity_api.create_user(new_user2)"},{"line_number":1304,"context_line":"        self.identity_api.add_user_to_group(new_user[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_a2518810","line":1301,"updated":"2015-11-13 13:26:28.000000000","message":"can use uuid here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":1345,"context_line":"    def test_get_and_remove_role_grant_by_user_and_domain(self):"},{"line_number":1346,"context_line":"        new_domain \u003d unit.new_domain_ref()"},{"line_number":1347,"context_line":"        self.resource_api.create_domain(new_domain[\u0027id\u0027], new_domain)"},{"line_number":1348,"context_line":"        new_user \u003d unit.new_user_ref(name\u003d\u0027new_user\u0027,"},{"line_number":1349,"context_line":"                                     password\u003d\u0027secret\u0027,"},{"line_number":1350,"context_line":"                                     domain_id\u003dnew_domain[\u0027id\u0027])"},{"line_number":1351,"context_line":"        new_user \u003d self.identity_api.create_user(new_user)"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_42569c07","line":1348,"updated":"2015-11-13 13:26:28.000000000","message":"can use uuid here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":2245,"context_line":"                          password\u003dNone)"},{"line_number":2246,"context_line":""},{"line_number":2247,"context_line":"    def test_create_user_none_password(self):"},{"line_number":2248,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027fake1\u0027,"},{"line_number":2249,"context_line":"                                 password\u003dNone,"},{"line_number":2250,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":2251,"context_line":"        user \u003d self.identity_api.create_user(user)"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_e2ff90a8","line":2248,"updated":"2015-11-13 13:26:28.000000000","message":"can use uuid here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":2322,"context_line":"                          user)"},{"line_number":2323,"context_line":""},{"line_number":2324,"context_line":"    def test_update_user_long_name_fails(self):"},{"line_number":2325,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027fake1\u0027,"},{"line_number":2326,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":2327,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":2328,"context_line":"        user[\u0027name\u0027] \u003d \u0027a\u0027 * 256"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_221d980f","line":2325,"updated":"2015-11-13 13:26:28.000000000","message":"can use uuid here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":2332,"context_line":"                          user)"},{"line_number":2333,"context_line":""},{"line_number":2334,"context_line":"    def test_update_user_blank_name_fails(self):"},{"line_number":2335,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027fake1\u0027,"},{"line_number":2336,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":2337,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":2338,"context_line":"        user[\u0027name\u0027] \u003d \u0027\u0027"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_82d24433","line":2335,"updated":"2015-11-13 13:26:28.000000000","message":"can use uuid here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":2342,"context_line":"                          user)"},{"line_number":2343,"context_line":""},{"line_number":2344,"context_line":"    def test_update_user_invalid_name_fails(self):"},{"line_number":2345,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027fake1\u0027,"},{"line_number":2346,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":2347,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":2348,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_42dc5c46","line":2345,"updated":"2015-11-13 13:26:28.000000000","message":"can use uuid here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":2840,"context_line":"        self.assertDictEqual(original_user, new_user)"},{"line_number":2841,"context_line":""},{"line_number":2842,"context_line":"    def test_update_user_enable(self):"},{"line_number":2843,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027fake1\u0027,"},{"line_number":2844,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":2845,"context_line":"        del user[\u0027description\u0027]"},{"line_number":2846,"context_line":"        user \u003d self.identity_api.create_user(user)"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_02e73413","line":2843,"updated":"2015-11-13 13:26:28.000000000","message":"can use uuid here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":2842,"context_line":"    def test_update_user_enable(self):"},{"line_number":2843,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027fake1\u0027,"},{"line_number":2844,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":2845,"context_line":"        del user[\u0027description\u0027]"},{"line_number":2846,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":2847,"context_line":"        user_ref \u003d self.identity_api.get_user(user[\u0027id\u0027])"},{"line_number":2848,"context_line":"        self.assertTrue(user_ref[\u0027enabled\u0027])"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_e2ed50f0","line":2845,"updated":"2015-11-13 13:26:28.000000000","message":"why delete description?","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"708d912f96ce1bab95ff8af6593aabfa2955f063","unresolved":false,"context_lines":[{"line_number":2842,"context_line":"    def test_update_user_enable(self):"},{"line_number":2843,"context_line":"        user \u003d unit.new_user_ref(name\u003d\u0027fake1\u0027,"},{"line_number":2844,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":2845,"context_line":"        del user[\u0027description\u0027]"},{"line_number":2846,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":2847,"context_line":"        user_ref \u003d self.identity_api.get_user(user[\u0027id\u0027])"},{"line_number":2848,"context_line":"        self.assertTrue(user_ref[\u0027enabled\u0027])"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_897812fa","line":2845,"in_reply_to":"da85f559_e2ed50f0","updated":"2015-11-13 21:58:55.000000000","message":"tests fail Every time you see me delete a field it is because tests did not pass with it present.","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":2947,"context_line":"        domain \u003d self._get_domain_fixture()"},{"line_number":2948,"context_line":"        new_group \u003d unit.new_group_ref(domain_id\u003ddomain[\u0027id\u0027])"},{"line_number":2949,"context_line":"        new_group \u003d self.identity_api.create_group(new_group)"},{"line_number":2950,"context_line":"        new_user \u003d unit.new_user_ref(name\u003d\u0027new_user\u0027,"},{"line_number":2951,"context_line":"                                     domain_id\u003ddomain[\u0027id\u0027])"},{"line_number":2952,"context_line":"        new_user \u003d self.identity_api.create_user(new_user)"},{"line_number":2953,"context_line":"        self.identity_api.add_user_to_group(new_user[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_62b880e6","line":2950,"updated":"2015-11-13 13:26:28.000000000","message":"can use uuid here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":2962,"context_line":""},{"line_number":2963,"context_line":"    def test_add_user_to_group_returns_not_found(self):"},{"line_number":2964,"context_line":"        domain \u003d self._get_domain_fixture()"},{"line_number":2965,"context_line":"        new_user \u003d unit.new_user_ref(name\u003d\u0027new_user\u0027,"},{"line_number":2966,"context_line":"                                     domain_id\u003ddomain[\u0027id\u0027])"},{"line_number":2967,"context_line":"        new_user \u003d self.identity_api.create_user(new_user)"},{"line_number":2968,"context_line":"        self.assertRaises(exception.GroupNotFound,"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_c2c7ec62","line":2965,"updated":"2015-11-13 13:26:28.000000000","message":"can use uuid here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":3658,"context_line":"    def test_user_crud(self):"},{"line_number":3659,"context_line":"        user_dict \u003d unit.new_user_ref(domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":3660,"context_line":"                                      password\u003d\u0027passw0rd\u0027)"},{"line_number":3661,"context_line":"        del user_dict[\u0027id\u0027]"},{"line_number":3662,"context_line":"        del user_dict[\u0027description\u0027]"},{"line_number":3663,"context_line":"        user \u003d self.identity_api.create_user(user_dict)"},{"line_number":3664,"context_line":"        user_ref \u003d self.identity_api.get_user(user[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_22927858","line":3661,"updated":"2015-11-13 13:26:28.000000000","message":"no reason to delete id or description here","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":671,"context_line":""},{"line_number":672,"context_line":"    def test_create_duplicate_user_name_fails(self):"},{"line_number":673,"context_line":"        user \u003d unit.new_user_ref(domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":674,"context_line":"                                 tenants\u003d[\u0027bar\u0027])"},{"line_number":675,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":676,"context_line":"        self.assertRaises(exception.Conflict,"},{"line_number":677,"context_line":"                          self.identity_api.create_user,"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_d5f9ea4e","line":674,"updated":"2015-11-16 20:38:50.000000000","message":"what happens if this argument is removed? i don\u0027t think it does anything","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":724,"context_line":""},{"line_number":725,"context_line":"    def test_rename_duplicate_user_name_fails(self):"},{"line_number":726,"context_line":"        user1 \u003d unit.new_user_ref(domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":727,"context_line":"                                  tenants\u003d[\u0027bar\u0027])"},{"line_number":728,"context_line":"        user2 \u003d unit.new_user_ref(domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":729,"context_line":"                                  tenants\u003d[\u0027bar\u0027])"},{"line_number":730,"context_line":"        self.identity_api.create_user(user1)"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_15ae922e","line":727,"updated":"2015-11-16 20:38:50.000000000","message":"same as above","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":726,"context_line":"        user1 \u003d unit.new_user_ref(domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":727,"context_line":"                                  tenants\u003d[\u0027bar\u0027])"},{"line_number":728,"context_line":"        user2 \u003d unit.new_user_ref(domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":729,"context_line":"                                  tenants\u003d[\u0027bar\u0027])"},{"line_number":730,"context_line":"        self.identity_api.create_user(user1)"},{"line_number":731,"context_line":"        user2 \u003d self.identity_api.create_user(user2)"},{"line_number":732,"context_line":"        user2[\u0027name\u0027] \u003d user1[\u0027name\u0027]"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_75635e1b","line":729,"updated":"2015-11-16 20:38:50.000000000","message":"same as above","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":737,"context_line":""},{"line_number":738,"context_line":"    def test_update_user_id_fails(self):"},{"line_number":739,"context_line":"        user \u003d unit.new_user_ref(domain_id\u003dDEFAULT_DOMAIN_ID,"},{"line_number":740,"context_line":"                                 tenants\u003d[\u0027bar\u0027])"},{"line_number":741,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":742,"context_line":"        original_id \u003d user[\u0027id\u0027]"},{"line_number":743,"context_line":"        user[\u0027id\u0027] \u003d \u0027fake2\u0027"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_956842f7","line":740,"updated":"2015-11-16 20:38:50.000000000","message":"same as above","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"}],"keystone/tests/unit/test_backend_ldap.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"cf452f62f416776272d90e6dd7e1bb9600e531a8","unresolved":false,"context_lines":[{"line_number":142,"context_line":"        config_files.append(unit.dirs.tests_conf(\u0027backend_ldap.conf\u0027))"},{"line_number":143,"context_line":"        return config_files"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"    def new_user_ref(self, domain_id, project_id\u003dNone, **kwargs):"},{"line_number":146,"context_line":"        ref \u003d unit.new_user_ref(domain_id\u003ddomain_id, project_id\u003dproject_id,"},{"line_number":147,"context_line":"                                **kwargs)"},{"line_number":148,"context_line":"        if \u0027description\u0027 not in kwargs:"}],"source_content_type":"text/x-python","patch_set":6,"id":"da85f559_828ec425","line":145,"updated":"2015-11-13 13:26:28.000000000","message":"maybe do the ldap bits in a different patch?","commit_id":"08da7df421afa1e2d6fdfca635592d373259f8e4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":169,"context_line":"        self.assertTrue(user_api)"},{"line_number":170,"context_line":"        self.assertEqual(\"ou\u003dUsers,%s\" % CONF.ldap.suffix, user_api.tree_dn)"},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"    def test_configurable_allowed_user_actions(self):"},{"line_number":173,"context_line":"        user \u003d self.new_user_ref(domain_id\u003dCONF.identity.default_domain_id,"},{"line_number":174,"context_line":"                                 tenants\u003d[\u0027bar\u0027])"},{"line_number":175,"context_line":"        user \u003d self.identity_api.create_user(user)"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_c01daa67","line":172,"updated":"2015-11-16 20:38:50.000000000","message":"i think we want to keep the name and password that are used here, since they use special characters","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":191,"context_line":"        driver.user.allow_delete \u003d False"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"        user \u003d self.new_user_ref(domain_id\u003dCONF.identity.default_domain_id,"},{"line_number":194,"context_line":"                                 tenants\u003d[\u0027bar\u0027])"},{"line_number":195,"context_line":"        self.assertRaises(exception.ForbiddenAction,"},{"line_number":196,"context_line":"                          self.identity_api.create_user,"},{"line_number":197,"context_line":"                          user)"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_804d6274","line":194,"updated":"2015-11-16 20:38:50.000000000","message":"more tenants! which i\u0027m pretty sure do nothing?","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":2192,"context_line":"        self.load_fixtures(default_fixtures)"},{"line_number":2193,"context_line":""},{"line_number":2194,"context_line":"        # Create a user and ensure they are enabled."},{"line_number":2195,"context_line":"        user1 \u003d unit.new_user_ref(enabled\u003dTrue,"},{"line_number":2196,"context_line":"                                  domain_id\u003dCONF.identity.default_domain_id)"},{"line_number":2197,"context_line":"        user_ref \u003d self.identity_api.create_user(user1)"},{"line_number":2198,"context_line":"        self.assertIs(True, user_ref[\u0027enabled\u0027])"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_40a53a02","line":2195,"updated":"2015-11-16 20:38:50.000000000","message":"this is done by default","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"7913b68d6130f740b8fc6eab0604a96a3ea69fa1","unresolved":false,"context_lines":[{"line_number":2192,"context_line":"        self.load_fixtures(default_fixtures)"},{"line_number":2193,"context_line":""},{"line_number":2194,"context_line":"        # Create a user and ensure they are enabled."},{"line_number":2195,"context_line":"        user1 \u003d unit.new_user_ref(enabled\u003dTrue,"},{"line_number":2196,"context_line":"                                  domain_id\u003dCONF.identity.default_domain_id)"},{"line_number":2197,"context_line":"        user_ref \u003d self.identity_api.create_user(user1)"},{"line_number":2198,"context_line":"        self.assertIs(True, user_ref[\u0027enabled\u0027])"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_66edf68a","line":2195,"in_reply_to":"ba8a016a_40a53a02","updated":"2015-11-16 22:07:01.000000000","message":"Yes, but I wanted to be explicit since the test is about ensuring enabled\u003dTrue. i can insert a comment instead if that is preferred.","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"421aaa7c41afe8de0d438725a1530b8d7b914652","unresolved":false,"context_lines":[{"line_number":2451,"context_line":"    def create_user(self, domain_id):"},{"line_number":2452,"context_line":"        # can\u0027t call unit.create_user() because \u0027enabled\u0027 can never be present"},{"line_number":2453,"context_line":"        user \u003d unit.new_user_ref(domain_id\u003ddomain_id)"},{"line_number":2454,"context_line":"        del user[\u0027enabled\u0027]"},{"line_number":2455,"context_line":""},{"line_number":2456,"context_line":"        user_ref \u003d self.identity_api.create_user(user)"},{"line_number":2457,"context_line":"        # Put the password back in, since this is used later by tests to"}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_b82c4b4b","line":2454,"updated":"2015-11-17 05:08:13.000000000","message":"why do this? I think the initial code has \u0027enable\u0027 field.","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"48a231084d9489f48b84807a0fb3305b7091368d","unresolved":false,"context_lines":[{"line_number":2451,"context_line":"    def create_user(self, domain_id):"},{"line_number":2452,"context_line":"        # can\u0027t call unit.create_user() because \u0027enabled\u0027 can never be present"},{"line_number":2453,"context_line":"        user \u003d unit.new_user_ref(domain_id\u003ddomain_id)"},{"line_number":2454,"context_line":"        del user[\u0027enabled\u0027]"},{"line_number":2455,"context_line":""},{"line_number":2456,"context_line":"        user_ref \u003d self.identity_api.create_user(user)"},{"line_number":2457,"context_line":"        # Put the password back in, since this is used later by tests to"}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_50edcfed","line":2454,"in_reply_to":"ba8a016a_b82c4b4b","updated":"2015-11-17 18:12:26.000000000","message":"Unit tests broke. I will investigate and respond. Every \u0027del\u0027 you see I added because of a unit test failure. The LDAP tests are quite finnicky.","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"}],"keystone/tests/unit/test_backend_sql.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":205,"context_line":"        # LDAP."},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"        # create a ref with a lowercase name"},{"line_number":208,"context_line":"        ref \u003d unit.new_user_ref(name\u003duuid.uuid4().hex.lower(),"},{"line_number":209,"context_line":"                                domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":210,"context_line":"        ref \u003d self.identity_api.create_user(ref)"},{"line_number":211,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_004c1241","line":208,"updated":"2015-11-16 20:38:50.000000000","message":"as a side note, i don\u0027t think this is necessary, since the generated ID is already in lower case. either the test is broken, or this can be simplified.","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"7913b68d6130f740b8fc6eab0604a96a3ea69fa1","unresolved":false,"context_lines":[{"line_number":205,"context_line":"        # LDAP."},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"        # create a ref with a lowercase name"},{"line_number":208,"context_line":"        ref \u003d unit.new_user_ref(name\u003duuid.uuid4().hex.lower(),"},{"line_number":209,"context_line":"                                domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":210,"context_line":"        ref \u003d self.identity_api.create_user(ref)"},{"line_number":211,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_c69382f9","line":208,"in_reply_to":"ba8a016a_004c1241","updated":"2015-11-16 22:07:01.000000000","message":"Again, I left this as an explicit test. new_user_ref() could return all kinds of things some day. :-)","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"469ee5f56d47040e4c8c836740fe220c0b6f96ba","unresolved":false,"context_lines":[{"line_number":310,"context_line":"        self.assertEqual(arbitrary_value, ref[arbitrary_key])"},{"line_number":311,"context_line":"        self.assertEqual(arbitrary_value, ref[\u0027extra\u0027][arbitrary_key])"},{"line_number":312,"context_line":""},{"line_number":313,"context_line":"    def test_sql_user_to_dict_null_default_project_id(self):"},{"line_number":314,"context_line":"        user \u003d {"},{"line_number":315,"context_line":"            \u0027name\u0027: uuid.uuid4().hex,"},{"line_number":316,"context_line":"            \u0027domain_id\u0027: DEFAULT_DOMAIN_ID,"}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_5772a94a","line":313,"updated":"2015-11-17 17:30:01.000000000","message":"this one too","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"48a231084d9489f48b84807a0fb3305b7091368d","unresolved":false,"context_lines":[{"line_number":310,"context_line":"        self.assertEqual(arbitrary_value, ref[arbitrary_key])"},{"line_number":311,"context_line":"        self.assertEqual(arbitrary_value, ref[\u0027extra\u0027][arbitrary_key])"},{"line_number":312,"context_line":""},{"line_number":313,"context_line":"    def test_sql_user_to_dict_null_default_project_id(self):"},{"line_number":314,"context_line":"        user \u003d {"},{"line_number":315,"context_line":"            \u0027name\u0027: uuid.uuid4().hex,"},{"line_number":316,"context_line":"            \u0027domain_id\u0027: DEFAULT_DOMAIN_ID,"}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_7021f34c","line":313,"in_reply_to":"ba8a016a_5772a94a","updated":"2015-11-17 18:12:26.000000000","message":"Grrr, how are these sneaking through...... I swear the rebase is shifting something.","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"}],"keystone/tests/unit/test_cert_setup.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        controller \u003d token.controllers.Auth()"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        self.config_fixture.config(group\u003d\u0027signing\u0027, certfile\u003d\u0027invalid\u0027)"},{"line_number":78,"context_line":"        password \u003d \u0027fake1\u0027"},{"line_number":79,"context_line":"        user \u003d unit.new_user_ref(password\u003dpassword,"},{"line_number":80,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":81,"context_line":"        user \u003d self.identity_api.create_user(user)"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_e000eeac","line":78,"updated":"2015-11-16 20:38:50.000000000","message":"remove this line and don\u0027t pass it in the next line","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        self.config_fixture.config(group\u003d\u0027signing\u0027, certfile\u003d\u0027invalid\u0027)"},{"line_number":78,"context_line":"        password \u003d \u0027fake1\u0027"},{"line_number":79,"context_line":"        user \u003d unit.new_user_ref(password\u003dpassword,"},{"line_number":80,"context_line":"                                 domain_id\u003dDEFAULT_DOMAIN_ID)"},{"line_number":81,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":82,"context_line":"        body_dict \u003d {"},{"line_number":83,"context_line":"            \u0027passwordCredentials\u0027: {"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_602b9e31","line":80,"updated":"2015-11-16 20:38:50.000000000","message":"set password after user creation\n\n  password \u003d user[\u0027password\u0027]\n\nor just use user[\u0027password\u0027] at line 85","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"}],"keystone/tests/unit/test_ldap_pool_livetest.py":[{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"421aaa7c41afe8de0d438725a1530b8d7b914652","unresolved":false,"context_lines":[{"line_number":105,"context_line":"                          password\u003dold_password)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def _create_user_and_authenticate(self, password):"},{"line_number":108,"context_line":"        # TODO(shaleh): port to new_user_ref()"},{"line_number":109,"context_line":"        user_dict \u003d {"},{"line_number":110,"context_line":"            \u0027domain_id\u0027: CONF.identity.default_domain_id,"},{"line_number":111,"context_line":"            \u0027name\u0027: uuid.uuid4().hex,"}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_98b067f6","line":108,"updated":"2015-11-17 05:08:13.000000000","message":"why this doesnt work in this patch? or you just miss this?","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"48a231084d9489f48b84807a0fb3305b7091368d","unresolved":false,"context_lines":[{"line_number":105,"context_line":"                          password\u003dold_password)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def _create_user_and_authenticate(self, password):"},{"line_number":108,"context_line":"        # TODO(shaleh): port to new_user_ref()"},{"line_number":109,"context_line":"        user_dict \u003d {"},{"line_number":110,"context_line":"            \u0027domain_id\u0027: CONF.identity.default_domain_id,"},{"line_number":111,"context_line":"            \u0027name\u0027: uuid.uuid4().hex,"}],"source_content_type":"text/x-python","patch_set":10,"id":"ba8a016a_100987dd","line":108,"in_reply_to":"ba8a016a_98b067f6","updated":"2015-11-17 18:12:26.000000000","message":"I have not setup a real live LDAP devstack to test it. stevemar said it could wait for another patch.","commit_id":"349c578136e73e04c7f1cb6381f4915ff53ecb4d"}],"keystone/tests/unit/test_v3_auth.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":2565,"context_line":""},{"line_number":2566,"context_line":"    def test_authenticating_a_user_with_no_password(self):"},{"line_number":2567,"context_line":"        user \u003d unit.new_user_ref(domain_id\u003dself.domain[\u0027id\u0027])"},{"line_number":2568,"context_line":"        del user[\u0027password\u0027]  # can\u0027t have a password for this test"},{"line_number":2569,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":2570,"context_line":""},{"line_number":2571,"context_line":"        auth_data \u003d self.build_authentication_request("}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_c0760a3e","line":2568,"updated":"2015-11-16 20:38:50.000000000","message":"out of scope: this test seems broken, since we aren\u0027t even passing in the right password when authenticating","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"}],"keystone/tests/unit/test_v3_filters.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7781a830504b88eca97d599ea0bed6bc56e14bf3","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        # A default auth request we can use - un-scoped user token"},{"line_number":86,"context_line":"        self.auth \u003d self.build_authentication_request("},{"line_number":87,"context_line":"            user_id\u003dself.user1[\u0027id\u0027],"},{"line_number":88,"context_line":"            password\u003dpassword)"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def _get_id_list_from_ref_list(self, ref_list):"},{"line_number":91,"context_line":"        result_list \u003d []"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_80b6c2da","line":88,"updated":"2015-11-16 20:38:50.000000000","message":"you can just pass in: self.user1[\u0027password\u0027] and delete the password assignment","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"},{"author":{"_account_id":17026,"name":"Sean Perry","email":"sean.perry@hpe.com","username":"sean_perry"},"change_message_id":"7913b68d6130f740b8fc6eab0604a96a3ea69fa1","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        # A default auth request we can use - un-scoped user token"},{"line_number":86,"context_line":"        self.auth \u003d self.build_authentication_request("},{"line_number":87,"context_line":"            user_id\u003dself.user1[\u0027id\u0027],"},{"line_number":88,"context_line":"            password\u003dpassword)"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def _get_id_list_from_ref_list(self, ref_list):"},{"line_number":91,"context_line":"        result_list \u003d []"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba8a016a_93db771b","line":88,"in_reply_to":"ba8a016a_80b6c2da","updated":"2015-11-16 22:07:01.000000000","message":"nope, the password is removed by identity_api.create_user().","commit_id":"7a3324e5b8e1cbd1da999b5850b0b70b23b75a58"}]}
