)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e43d09fa0e1d1d28261d489907c52710d99d7028","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Ignore groups that don\u0027t match ones in the backend."},{"line_number":10,"context_line":"For Federation this will be the norm;"},{"line_number":11,"context_line":"groups may pass the blacklist but Keystone doesn\u0027t know about them."},{"line_number":12,"context_line":"Otherwisie, any changes in the external IdP will break the mapping"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ic1729da8606f50458db2fd163cd90bc5d89e24fa"},{"line_number":15,"context_line":"Fixes-Bug: 1429334"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9a80dd14_df3744fd","line":12,"updated":"2015-03-09 22:51:53.000000000","message":"otherwise*","commit_id":"200167b174d07e1688b0c348c2085b1cb74f4e3a"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e43d09fa0e1d1d28261d489907c52710d99d7028","unresolved":false,"context_lines":[{"line_number":12,"context_line":"Otherwisie, any changes in the external IdP will break the mapping"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ic1729da8606f50458db2fd163cd90bc5d89e24fa"},{"line_number":15,"context_line":"Fixes-Bug: 1429334"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9a80dd14_1f3e3cda","line":15,"updated":"2015-03-09 22:51:53.000000000","message":"use Closes-Bug","commit_id":"200167b174d07e1688b0c348c2085b1cb74f4e3a"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"f7dc32325403da7bb111d68438c1b840356c9980","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Ignore groups that don\u0027t match ones in the backend."},{"line_number":10,"context_line":"For Federation this will be the norm;"},{"line_number":11,"context_line":"groups may pass the blacklist but Keystone doesn\u0027t know about them."},{"line_number":12,"context_line":"Otherwisie, any changes in the external IdP will break the mapping"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ic1729da8606f50458db2fd163cd90bc5d89e24fa"},{"line_number":15,"context_line":"Fixes-Bug: 1429334"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9a80dd14_2120ef9a","line":12,"updated":"2015-03-11 14:15:03.000000000","message":"s/Otherwisie/Otherwise/","commit_id":"cdeafee67665cb0c47f8a7ca98d37d71d8c8cfbe"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"f7dc32325403da7bb111d68438c1b840356c9980","unresolved":false,"context_lines":[{"line_number":12,"context_line":"Otherwisie, any changes in the external IdP will break the mapping"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ic1729da8606f50458db2fd163cd90bc5d89e24fa"},{"line_number":15,"context_line":"Fixes-Bug: 1429334"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9a80dd14_be023a09","line":15,"updated":"2015-03-11 14:15:03.000000000","message":"s/Fixes/Closes/","commit_id":"cdeafee67665cb0c47f8a7ca98d37d71d8c8cfbe"}],"keystone/contrib/federation/utils.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e43d09fa0e1d1d28261d489907c52710d99d7028","unresolved":false,"context_lines":[{"line_number":294,"context_line":"                     assignment_api.get_domain_by_name("},{"line_number":295,"context_line":"                     domain.get(\u0027name\u0027)).get(\u0027id\u0027))"},{"line_number":296,"context_line":"        return domain_id"},{"line_number":297,"context_line":""},{"line_number":298,"context_line":"    for group in group_names:"},{"line_number":299,"context_line":"        try:"},{"line_number":300,"context_line":"            group_dict \u003d identity_api.get_group_by_name("}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_3f614005","side":"PARENT","line":297,"updated":"2015-03-09 22:51:53.000000000","message":"revert this change","commit_id":"d9534a2e70eb6733e074416a53a1722450972764"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"51ba9aaef76ba746794e931f39f6f0ab137717ab","unresolved":false,"context_lines":[{"line_number":294,"context_line":"                     assignment_api.get_domain_by_name("},{"line_number":295,"context_line":"                     domain.get(\u0027name\u0027)).get(\u0027id\u0027))"},{"line_number":296,"context_line":"        return domain_id"},{"line_number":297,"context_line":""},{"line_number":298,"context_line":"    for group in group_names:"},{"line_number":299,"context_line":"        try:"},{"line_number":300,"context_line":"            group_dict \u003d identity_api.get_group_by_name("}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_bec9b1ad","side":"PARENT","line":297,"in_reply_to":"9a80dd14_3f614005","updated":"2015-03-10 01:45:10.000000000","message":"Done","commit_id":"d9534a2e70eb6733e074416a53a1722450972764"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e43d09fa0e1d1d28261d489907c52710d99d7028","unresolved":false,"context_lines":[{"line_number":301,"context_line":"            yield group_dict[\u0027id\u0027]"},{"line_number":302,"context_line":"        except exception.GroupNotFound:"},{"line_number":303,"context_line":"            pass"},{"line_number":304,"context_line":"            #raise exception.MappedGroupNotFound("},{"line_number":305,"context_line":"            #    group_id\u003dgroup[\u0027name\u0027], mapping_id\u003dmapping_id)"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_bf3450fc","line":304,"updated":"2015-03-09 22:51:53.000000000","message":"remove the commented out code and add a comment","commit_id":"200167b174d07e1688b0c348c2085b1cb74f4e3a"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"51ba9aaef76ba746794e931f39f6f0ab137717ab","unresolved":false,"context_lines":[{"line_number":301,"context_line":"            yield group_dict[\u0027id\u0027]"},{"line_number":302,"context_line":"        except exception.GroupNotFound:"},{"line_number":303,"context_line":"            pass"},{"line_number":304,"context_line":"            #raise exception.MappedGroupNotFound("},{"line_number":305,"context_line":"            #    group_id\u003dgroup[\u0027name\u0027], mapping_id\u003dmapping_id)"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_9ed6ad4d","line":304,"in_reply_to":"9a80dd14_bf3450fc","updated":"2015-03-10 01:45:10.000000000","message":"Done","commit_id":"200167b174d07e1688b0c348c2085b1cb74f4e3a"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"b835c92d5a32425458cd6951333749c7ebc53d6f","unresolved":false,"context_lines":[{"line_number":302,"context_line":"            yield group_dict[\u0027id\u0027]"},{"line_number":303,"context_line":"        except exception.GroupNotFound:"},{"line_number":304,"context_line":"            pass"},{"line_number":305,"context_line":"            # Skipping the group as it has no entry in the backend"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"def get_assertion_params_from_env(context):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_4f927cf7","line":305,"updated":"2015-03-11 09:09:14.000000000","message":"Wondering if this should be logged.","commit_id":"cdeafee67665cb0c47f8a7ca98d37d71d8c8cfbe"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"93fc8dcfd4ef4d5be3efc4287838c25b0923e280","unresolved":false,"context_lines":[{"line_number":302,"context_line":"            yield group_dict[\u0027id\u0027]"},{"line_number":303,"context_line":"        except exception.GroupNotFound:"},{"line_number":304,"context_line":"            pass"},{"line_number":305,"context_line":"            # Skipping the group as it has no entry in the backend"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"def get_assertion_params_from_env(context):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_dd47de75","line":305,"in_reply_to":"9a80dd14_21570f04","updated":"2015-03-11 21:37:50.000000000","message":"++ to log it","commit_id":"cdeafee67665cb0c47f8a7ca98d37d71d8c8cfbe"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"f7dc32325403da7bb111d68438c1b840356c9980","unresolved":false,"context_lines":[{"line_number":302,"context_line":"            yield group_dict[\u0027id\u0027]"},{"line_number":303,"context_line":"        except exception.GroupNotFound:"},{"line_number":304,"context_line":"            pass"},{"line_number":305,"context_line":"            # Skipping the group as it has no entry in the backend"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"def get_assertion_params_from_env(context):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_21570f04","line":305,"in_reply_to":"9a80dd14_4f927cf7","updated":"2015-03-11 14:15:03.000000000","message":"At least as debug, it should.","commit_id":"cdeafee67665cb0c47f8a7ca98d37d71d8c8cfbe"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c300d5c06739c23c30ccc1997758f4ac350af14e","unresolved":false,"context_lines":[{"line_number":327,"context_line":"                group[\u0027name\u0027], resolve_domain(group[\u0027domain\u0027]))"},{"line_number":328,"context_line":"            yield group_dict[\u0027id\u0027]"},{"line_number":329,"context_line":"        except exception.GroupNotFound:"},{"line_number":330,"context_line":"            raise exception.MappedGroupNotFound("},{"line_number":331,"context_line":"                group_id\u003dgroup[\u0027name\u0027], mapping_id\u003dmapping_id)"},{"line_number":332,"context_line":""},{"line_number":333,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_3c532018","side":"PARENT","line":330,"updated":"2015-03-14 06:34:00.000000000","message":"out of scope: might want to delete this exception from keystone.exceptions if it\u0027s not being used any longer (maybe a follow on patch)","commit_id":"55d940c70be405e6dcf48eaa4aed0c2d766aadeb"}],"keystone/tests/unit/test_v3_federation.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c300d5c06739c23c30ccc1997758f4ac350af14e","unresolved":false,"context_lines":[{"line_number":2250,"context_line":"        self.v3_authenticate_token(scoped_token, expected_status\u003d500)"},{"line_number":2251,"context_line":""},{"line_number":2252,"context_line":"    def test_lists_with_missing_group_in_backend(self):"},{"line_number":2253,"context_line":"        \"\"\"Test a mapping that points to agroup that does not exist"},{"line_number":2254,"context_line":""},{"line_number":2255,"context_line":"        For explicit mappings, we expect the group to exist in the backend,"},{"line_number":2256,"context_line":"        but for lists, specifically blacklists, a missing group is expected"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_3c05e010","line":2253,"updated":"2015-03-14 06:34:00.000000000","message":"nit: a* group*","commit_id":"7f1a9265e2d8f75bb5589eb5108920e271bc3dbe"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"7eec30dae98835d3da4bf257ee2d950eed9edd12","unresolved":false,"context_lines":[{"line_number":2250,"context_line":"        self.v3_authenticate_token(scoped_token, expected_status\u003d500)"},{"line_number":2251,"context_line":""},{"line_number":2252,"context_line":"    def test_lists_with_missing_group_in_backend(self):"},{"line_number":2253,"context_line":"        \"\"\"Test a mapping that points to agroup that does not exist"},{"line_number":2254,"context_line":""},{"line_number":2255,"context_line":"        For explicit mappings, we expect the group to exist in the backend,"},{"line_number":2256,"context_line":"        but for lists, specifically blacklists, a missing group is expected"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_10e7ea47","line":2253,"in_reply_to":"9a80dd14_3c05e010","updated":"2015-03-16 17:49:50.000000000","message":"Done","commit_id":"7f1a9265e2d8f75bb5589eb5108920e271bc3dbe"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c300d5c06739c23c30ccc1997758f4ac350af14e","unresolved":false,"context_lines":[{"line_number":2282,"context_line":"                    ],"},{"line_number":2283,"context_line":"                    \"remote\": ["},{"line_number":2284,"context_line":"                        {"},{"line_number":2285,"context_line":"                            \"type\": \"REMOTE_USER\""},{"line_number":2286,"context_line":"                        }"},{"line_number":2287,"context_line":"                    ]"},{"line_number":2288,"context_line":"                },"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_dc3204f1","line":2285,"updated":"2015-03-14 06:34:00.000000000","message":"nit, but nice to have: as a sanity check, you might want to verify the user too,","commit_id":"7f1a9265e2d8f75bb5589eb5108920e271bc3dbe"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"7eec30dae98835d3da4bf257ee2d950eed9edd12","unresolved":false,"context_lines":[{"line_number":2282,"context_line":"                    ],"},{"line_number":2283,"context_line":"                    \"remote\": ["},{"line_number":2284,"context_line":"                        {"},{"line_number":2285,"context_line":"                            \"type\": \"REMOTE_USER\""},{"line_number":2286,"context_line":"                        }"},{"line_number":2287,"context_line":"                    ]"},{"line_number":2288,"context_line":"                },"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_30d30e61","line":2285,"in_reply_to":"9a80dd14_dc3204f1","updated":"2015-03-16 17:49:50.000000000","message":"I don\u0027t think so. This is not what this test is designed to check. Putting unnecessary checks in means that if the assumptions behind those checks change, we have to update unrelated tests.","commit_id":"7f1a9265e2d8f75bb5589eb5108920e271bc3dbe"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c300d5c06739c23c30ccc1997758f4ac350af14e","unresolved":false,"context_lines":[{"line_number":2303,"context_line":"            ]"},{"line_number":2304,"context_line":"        }"},{"line_number":2305,"context_line":"        self.federation_api.delete_mapping(self.mapping[\u0027id\u0027])"},{"line_number":2306,"context_line":"        self.federation_api.create_mapping(self.mapping[\u0027id\u0027], rules)"},{"line_number":2307,"context_line":""},{"line_number":2308,"context_line":"        r \u003d self._issue_unscoped_token(assertion\u003d\u0027UNMATCHED_GROUP_ASSERTION\u0027)"},{"line_number":2309,"context_line":"        assigned_group_ids \u003d r.json[\u0027token\u0027][\u0027user\u0027][\u0027OS-FEDERATION\u0027][\u0027groups\u0027]"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_dc1be470","line":2306,"updated":"2015-03-14 06:34:00.000000000","message":"nit, but nice to have: could call update_mapping instead of create/delete","commit_id":"7f1a9265e2d8f75bb5589eb5108920e271bc3dbe"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"7eec30dae98835d3da4bf257ee2d950eed9edd12","unresolved":false,"context_lines":[{"line_number":2303,"context_line":"            ]"},{"line_number":2304,"context_line":"        }"},{"line_number":2305,"context_line":"        self.federation_api.delete_mapping(self.mapping[\u0027id\u0027])"},{"line_number":2306,"context_line":"        self.federation_api.create_mapping(self.mapping[\u0027id\u0027], rules)"},{"line_number":2307,"context_line":""},{"line_number":2308,"context_line":"        r \u003d self._issue_unscoped_token(assertion\u003d\u0027UNMATCHED_GROUP_ASSERTION\u0027)"},{"line_number":2309,"context_line":"        assigned_group_ids \u003d r.json[\u0027token\u0027][\u0027user\u0027][\u0027OS-FEDERATION\u0027][\u0027groups\u0027]"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_503fa287","line":2306,"in_reply_to":"9a80dd14_dc1be470","updated":"2015-03-16 17:49:50.000000000","message":"I did delete/create to make sure I wasn\u0027t fooling myself.  Will retry this way.","commit_id":"7f1a9265e2d8f75bb5589eb5108920e271bc3dbe"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c300d5c06739c23c30ccc1997758f4ac350af14e","unresolved":false,"context_lines":[{"line_number":2307,"context_line":""},{"line_number":2308,"context_line":"        r \u003d self._issue_unscoped_token(assertion\u003d\u0027UNMATCHED_GROUP_ASSERTION\u0027)"},{"line_number":2309,"context_line":"        assigned_group_ids \u003d r.json[\u0027token\u0027][\u0027user\u0027][\u0027OS-FEDERATION\u0027][\u0027groups\u0027]"},{"line_number":2310,"context_line":"        self.assertEqual(len(assigned_group_ids), 1)"},{"line_number":2311,"context_line":"        self.assertEqual(assigned_group_ids[0][\u0027id\u0027], group[\u0027id\u0027])"},{"line_number":2312,"context_line":""},{"line_number":2313,"context_line":"    def test_assertion_prefix_parameter(self):"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_1c29fc89","line":2310,"updated":"2015-03-14 06:34:00.000000000","message":"should fix: swap these, should be:\n\n  self.assertEqual(expected, observed)","commit_id":"7f1a9265e2d8f75bb5589eb5108920e271bc3dbe"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"7eec30dae98835d3da4bf257ee2d950eed9edd12","unresolved":false,"context_lines":[{"line_number":2307,"context_line":""},{"line_number":2308,"context_line":"        r \u003d self._issue_unscoped_token(assertion\u003d\u0027UNMATCHED_GROUP_ASSERTION\u0027)"},{"line_number":2309,"context_line":"        assigned_group_ids \u003d r.json[\u0027token\u0027][\u0027user\u0027][\u0027OS-FEDERATION\u0027][\u0027groups\u0027]"},{"line_number":2310,"context_line":"        self.assertEqual(len(assigned_group_ids), 1)"},{"line_number":2311,"context_line":"        self.assertEqual(assigned_group_ids[0][\u0027id\u0027], group[\u0027id\u0027])"},{"line_number":2312,"context_line":""},{"line_number":2313,"context_line":"    def test_assertion_prefix_parameter(self):"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_90483a30","line":2310,"in_reply_to":"9a80dd14_1c29fc89","updated":"2015-03-16 17:49:50.000000000","message":"Done","commit_id":"7f1a9265e2d8f75bb5589eb5108920e271bc3dbe"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c300d5c06739c23c30ccc1997758f4ac350af14e","unresolved":false,"context_lines":[{"line_number":2308,"context_line":"        r \u003d self._issue_unscoped_token(assertion\u003d\u0027UNMATCHED_GROUP_ASSERTION\u0027)"},{"line_number":2309,"context_line":"        assigned_group_ids \u003d r.json[\u0027token\u0027][\u0027user\u0027][\u0027OS-FEDERATION\u0027][\u0027groups\u0027]"},{"line_number":2310,"context_line":"        self.assertEqual(len(assigned_group_ids), 1)"},{"line_number":2311,"context_line":"        self.assertEqual(assigned_group_ids[0][\u0027id\u0027], group[\u0027id\u0027])"},{"line_number":2312,"context_line":""},{"line_number":2313,"context_line":"    def test_assertion_prefix_parameter(self):"},{"line_number":2314,"context_line":"        \"\"\"Test parameters filtering based on the prefix."}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_3c2c0099","line":2311,"updated":"2015-03-14 06:34:00.000000000","message":"should fix: swap these, should be:\n\n  self.assertEqual(expected, observed)","commit_id":"7f1a9265e2d8f75bb5589eb5108920e271bc3dbe"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"7eec30dae98835d3da4bf257ee2d950eed9edd12","unresolved":false,"context_lines":[{"line_number":2308,"context_line":"        r \u003d self._issue_unscoped_token(assertion\u003d\u0027UNMATCHED_GROUP_ASSERTION\u0027)"},{"line_number":2309,"context_line":"        assigned_group_ids \u003d r.json[\u0027token\u0027][\u0027user\u0027][\u0027OS-FEDERATION\u0027][\u0027groups\u0027]"},{"line_number":2310,"context_line":"        self.assertEqual(len(assigned_group_ids), 1)"},{"line_number":2311,"context_line":"        self.assertEqual(assigned_group_ids[0][\u0027id\u0027], group[\u0027id\u0027])"},{"line_number":2312,"context_line":""},{"line_number":2313,"context_line":"    def test_assertion_prefix_parameter(self):"},{"line_number":2314,"context_line":"        \"\"\"Test parameters filtering based on the prefix."}],"source_content_type":"text/x-python","patch_set":7,"id":"9a80dd14_b0453e17","line":2311,"in_reply_to":"9a80dd14_3c2c0099","updated":"2015-03-16 17:49:50.000000000","message":"Done","commit_id":"7f1a9265e2d8f75bb5589eb5108920e271bc3dbe"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"38325dadb5f2be4450aa4cad987baa0bf43b9185","unresolved":false,"context_lines":[{"line_number":2250,"context_line":"        self.v3_authenticate_token(scoped_token, expected_status\u003d500)"},{"line_number":2251,"context_line":""},{"line_number":2252,"context_line":"    def test_lists_with_missing_group_in_backend(self):"},{"line_number":2253,"context_line":"        \"\"\"Test a mapping that points to a group that does not exist"},{"line_number":2254,"context_line":""},{"line_number":2255,"context_line":"        For explicit mappings, we expect the group to exist in the backend,"},{"line_number":2256,"context_line":"        but for lists, specifically blacklists, a missing group is expected"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a80dd14_1b02ab72","line":2253,"updated":"2015-03-16 18:38:50.000000000","message":"nit: missing dot","commit_id":"f4708ec55b7ffe252a21414346c1930da19af8b5"}]}
