)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"3ac9ddba513e17fa93359aadef1ba7a337854f3c","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Refactor: Don\u0027t hard code the error code"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch replace the hard coded HTTP error code (200~226)"},{"line_number":10,"context_line":"with the constants."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I184adc72772a030b3a316b1e3f9676d0efc807b5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba15a1d1_c87bedbc","line":10,"updated":"2015-09-17 19:20:54.000000000","message":"Are you just replacing them in the test files?","commit_id":"e0988ec74160becabbd040ae95479d3c62f4ccfd"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"1bfca23e1fe68c5892d18a481877f5d791a8e05d","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Refactor: Don\u0027t hard code the error code"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch replace the hard coded HTTP error code (200~226)"},{"line_number":10,"context_line":"with the constants."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I184adc72772a030b3a316b1e3f9676d0efc807b5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba15a1d1_d6d4eaec","line":10,"in_reply_to":"ba15a1d1_c87bedbc","updated":"2015-09-17 20:51:18.000000000","message":"yes, this is a continuation of a previous patch set","commit_id":"e0988ec74160becabbd040ae95479d3c62f4ccfd"}],"keystone/tests/unit/test_v3_assignment.py":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"1dd9b64cd7a41207535949b763180cc826e4ac3a","unresolved":false,"context_lines":[{"line_number":369,"context_line":"        self.domain[\u0027enabled\u0027] \u003d False"},{"line_number":370,"context_line":"        url \u003d \"/domains/%(domain_id)s\" % {\u0027domain_id\u0027: self.domain[\u0027id\u0027]}"},{"line_number":371,"context_line":"        self.patch(url,"},{"line_number":372,"context_line":"                   body\u003d{\u0027domain\u0027: {\u0027enabled\u0027: False}})"},{"line_number":373,"context_line":""},{"line_number":374,"context_line":"        # validates the same token again and it should be \u0027not found\u0027"},{"line_number":375,"context_line":"        # as the domain has already been disabled."}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_cb7915fe","line":372,"updated":"2015-09-22 14:32:31.000000000","message":"I\u0027d rather see this stay explicit.","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"1dd9b64cd7a41207535949b763180cc826e4ac3a","unresolved":false,"context_lines":[{"line_number":1289,"context_line":"        member_url \u003d (\u0027%(collection_url)s/%(role_id)s\u0027 % {"},{"line_number":1290,"context_line":"            \u0027collection_url\u0027: collection_url,"},{"line_number":1291,"context_line":"            \u0027role_id\u0027: self.role_id})"},{"line_number":1292,"context_line":"        self.put(member_url)"},{"line_number":1293,"context_line":"        # Check the user has the role assigned"},{"line_number":1294,"context_line":"        self.head(member_url)"},{"line_number":1295,"context_line":"        return member_url, user_ref"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_8b0c7d95","line":1292,"updated":"2015-09-22 14:32:31.000000000","message":"I\u0027d rather see this stay explicit.","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"1dd9b64cd7a41207535949b763180cc826e4ac3a","unresolved":false,"context_lines":[{"line_number":1291,"context_line":"            \u0027role_id\u0027: self.role_id})"},{"line_number":1292,"context_line":"        self.put(member_url)"},{"line_number":1293,"context_line":"        # Check the user has the role assigned"},{"line_number":1294,"context_line":"        self.head(member_url)"},{"line_number":1295,"context_line":"        return member_url, user_ref"},{"line_number":1296,"context_line":""},{"line_number":1297,"context_line":"    def test_delete_user_before_removing_role_assignment_succeeds(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_ab0f0187","line":1294,"updated":"2015-09-22 14:32:31.000000000","message":"I\u0027d rather see this stay explicit.","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"1dd9b64cd7a41207535949b763180cc826e4ac3a","unresolved":false,"context_lines":[{"line_number":1300,"context_line":"        # Delete the user from identity backend"},{"line_number":1301,"context_line":"        self.identity_api.driver.delete_user(user[\u0027id\u0027])"},{"line_number":1302,"context_line":"        # Clean up the role assignment"},{"line_number":1303,"context_line":"        self.delete(member_url)"},{"line_number":1304,"context_line":"        # Make sure the role is gone"},{"line_number":1305,"context_line":"        self.head(member_url, expected_status\u003dhttp_client.NOT_FOUND)"},{"line_number":1306,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_4b274512","line":1303,"updated":"2015-09-22 14:32:31.000000000","message":"I\u0027d rather see this stay explicit.","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"}],"keystone/tests/unit/test_v3_auth.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b7e7f543fc43c703341b48aa5eea7fdf93c54df8","unresolved":false,"context_lines":[{"line_number":386,"context_line":"        # Delete the v2 token using v3."},{"line_number":387,"context_line":"        resp \u003d self.delete("},{"line_number":388,"context_line":"            \u0027/auth/tokens\u0027, headers\u003d{\u0027X-Subject-Token\u0027: v2_token})"},{"line_number":389,"context_line":"        self.assertEqual(resp.status_code, http_client.NO_CONTENT)"},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"        # Attempting to use the deleted token on v2 should fail."},{"line_number":392,"context_line":"        self.admin_request("}],"source_content_type":"text/x-python","patch_set":3,"id":"ba15a1d1_ac29dfe7","line":389,"updated":"2015-09-18 05:24:55.000000000","message":"nit, this line is pointless since the assert is done in the delete call","commit_id":"7ae3e9516bd802ca150a200617cb0f4643e0e7d4"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"3e2adcad9afe381b9b7bf1dbb5d6fb2f355c3ab7","unresolved":false,"context_lines":[{"line_number":386,"context_line":"        # Delete the v2 token using v3."},{"line_number":387,"context_line":"        resp \u003d self.delete("},{"line_number":388,"context_line":"            \u0027/auth/tokens\u0027, headers\u003d{\u0027X-Subject-Token\u0027: v2_token})"},{"line_number":389,"context_line":"        self.assertEqual(resp.status_code, http_client.NO_CONTENT)"},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"        # Attempting to use the deleted token on v2 should fail."},{"line_number":392,"context_line":"        self.admin_request("}],"source_content_type":"text/x-python","patch_set":3,"id":"ba15a1d1_6c80a78b","line":389,"in_reply_to":"ba15a1d1_ac29dfe7","updated":"2015-09-18 05:32:27.000000000","message":"Done","commit_id":"7ae3e9516bd802ca150a200617cb0f4643e0e7d4"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"1dd9b64cd7a41207535949b763180cc826e4ac3a","unresolved":false,"context_lines":[{"line_number":385,"context_line":""},{"line_number":386,"context_line":"        # Delete the v2 token using v3."},{"line_number":387,"context_line":"        self.delete("},{"line_number":388,"context_line":"            \u0027/auth/tokens\u0027, headers\u003d{\u0027X-Subject-Token\u0027: v2_token})"},{"line_number":389,"context_line":""},{"line_number":390,"context_line":"        # Attempting to use the deleted token on v2 should fail."},{"line_number":391,"context_line":"        self.admin_request("}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_cb603538","line":388,"updated":"2015-09-22 14:32:31.000000000","message":"I\u0027d rather see this stay explicit.","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"1dd9b64cd7a41207535949b763180cc826e4ac3a","unresolved":false,"context_lines":[{"line_number":1370,"context_line":"        token \u003d self.get_v2_token()"},{"line_number":1371,"context_line":""},{"line_number":1372,"context_line":"        self.delete(\u0027/auth/tokens\u0027,"},{"line_number":1373,"context_line":"                    headers\u003d{\u0027X-Subject-Token\u0027: token})"},{"line_number":1374,"context_line":""},{"line_number":1375,"context_line":"        self.head(\u0027/auth/tokens\u0027,"},{"line_number":1376,"context_line":"                  headers\u003d{\u0027X-Subject-Token\u0027: token},"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_4b55054e","line":1373,"updated":"2015-09-22 14:32:31.000000000","message":"I\u0027d rather see this stay explicit.","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"1dd9b64cd7a41207535949b763180cc826e4ac3a","unresolved":false,"context_lines":[{"line_number":1400,"context_line":""},{"line_number":1401,"context_line":"        # revoke the project-scoped token."},{"line_number":1402,"context_line":"        self.delete(\u0027/auth/tokens\u0027,"},{"line_number":1403,"context_line":"                    headers\u003d{\u0027X-Subject-Token\u0027: project_scoped_token})"},{"line_number":1404,"context_line":""},{"line_number":1405,"context_line":"        # The project-scoped token is invalidated."},{"line_number":1406,"context_line":"        self.head(\u0027/auth/tokens\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_cbc7d510","line":1403,"updated":"2015-09-22 14:32:31.000000000","message":"I\u0027d rather see this stay explicit.","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"1dd9b64cd7a41207535949b763180cc826e4ac3a","unresolved":false,"context_lines":[{"line_number":1447,"context_line":""},{"line_number":1448,"context_line":"        # revoke the project-scoped token."},{"line_number":1449,"context_line":"        self.delete(\u0027/auth/tokens\u0027,"},{"line_number":1450,"context_line":"                    headers\u003d{\u0027X-Subject-Token\u0027: project_scoped_token})"},{"line_number":1451,"context_line":""},{"line_number":1452,"context_line":"        # The project-scoped token is invalidated."},{"line_number":1453,"context_line":"        self.head(\u0027/auth/tokens\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_8bd1ddcf","line":1450,"updated":"2015-09-22 14:32:31.000000000","message":"I\u0027d rather see this stay explicit.","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"}],"keystone/tests/unit/test_v3_federation.py":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"0a12158676469b91c450cff892a6340fa3ba86d0","unresolved":false,"context_lines":[{"line_number":2405,"context_line":""},{"line_number":2406,"context_line":"    def test_federated_unscoped_token(self):"},{"line_number":2407,"context_line":"        resp \u003d self._issue_unscoped_token()"},{"line_number":2408,"context_line":"        self.assertEqual(http_client.NO_CONTENT,"},{"line_number":2409,"context_line":"                         len(resp.headers[\u0027X-Subject-Token\u0027]))"},{"line_number":2410,"context_line":"        self.assertValidMappedUser(resp.json_body[\u0027token\u0027])"},{"line_number":2411,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_c03d4490","line":2408,"updated":"2015-09-23 12:30:58.000000000","message":"Are we sure about this one?","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"1b7a1544173497fdab9925ef7653d41906fcaf1f","unresolved":false,"context_lines":[{"line_number":2405,"context_line":""},{"line_number":2406,"context_line":"    def test_federated_unscoped_token(self):"},{"line_number":2407,"context_line":"        resp \u003d self._issue_unscoped_token()"},{"line_number":2408,"context_line":"        self.assertEqual(http_client.NO_CONTENT,"},{"line_number":2409,"context_line":"                         len(resp.headers[\u0027X-Subject-Token\u0027]))"},{"line_number":2410,"context_line":"        self.assertValidMappedUser(resp.json_body[\u0027token\u0027])"},{"line_number":2411,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_25de6e11","line":2408,"in_reply_to":"ba15a1d1_35b23595","updated":"2015-09-24 02:22:13.000000000","message":"Done","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"1b7a1544173497fdab9925ef7653d41906fcaf1f","unresolved":false,"context_lines":[{"line_number":2405,"context_line":""},{"line_number":2406,"context_line":"    def test_federated_unscoped_token(self):"},{"line_number":2407,"context_line":"        resp \u003d self._issue_unscoped_token()"},{"line_number":2408,"context_line":"        self.assertEqual(http_client.NO_CONTENT,"},{"line_number":2409,"context_line":"                         len(resp.headers[\u0027X-Subject-Token\u0027]))"},{"line_number":2410,"context_line":"        self.assertValidMappedUser(resp.json_body[\u0027token\u0027])"},{"line_number":2411,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_65c1c62e","line":2408,"in_reply_to":"ba15a1d1_c03d4490","updated":"2015-09-24 02:22:13.000000000","message":"Done","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"a21f02db694745a973c89f4ce23c50dc4e3e0223","unresolved":false,"context_lines":[{"line_number":2405,"context_line":""},{"line_number":2406,"context_line":"    def test_federated_unscoped_token(self):"},{"line_number":2407,"context_line":"        resp \u003d self._issue_unscoped_token()"},{"line_number":2408,"context_line":"        self.assertEqual(http_client.NO_CONTENT,"},{"line_number":2409,"context_line":"                         len(resp.headers[\u0027X-Subject-Token\u0027]))"},{"line_number":2410,"context_line":"        self.assertValidMappedUser(resp.json_body[\u0027token\u0027])"},{"line_number":2411,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_35b23595","line":2408,"in_reply_to":"ba15a1d1_c03d4490","updated":"2015-09-23 14:51:42.000000000","message":"oh good catch.... this looks like it was checking token size","commit_id":"0d534b3cdb50cfb2405956251b86863b6ab21042"}]}
