)]}'
{"keystone/tests/test_v3_federation.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b5ff4d745ead4b479dce01e0b98bf17a6d543770","unresolved":false,"context_lines":[{"line_number":1775,"context_line":"        def mocked_subprocess_check_output(*popenargs, **kwargs):"},{"line_number":1776,"context_line":"            # the last option is the assertion file to be signed"},{"line_number":1777,"context_line":"            filename \u003d popenargs[0][-1]"},{"line_number":1778,"context_line":"            f \u003d open(filename, \u0027r\u0027)"},{"line_number":1779,"context_line":"            assertion_content \u003d f.read()"},{"line_number":1780,"context_line":"            f.close()"},{"line_number":1781,"context_line":"            # since we are not testing the signature itself, we can return"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_6a831003","line":1778,"updated":"2015-01-07 21:53:05.000000000","message":"might want to use the \u0027with\u0027 keyword instead, as i think it\u0027s safer:\n\n  with open(filename, \u0027r\u0027) as f:\n    assertion_content \u003d f.read()\n\nyou can remove the close() this way, too.\n\nhttps://docs.python.org/2/tutorial/inputoutput.html#methods-of-file-objects","commit_id":"da1ee6e861f2faf3ca2c41dc513d37bc996fc03b"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"bb867380bf5f05831671d9de6eed1c92cb4221c5","unresolved":false,"context_lines":[{"line_number":1775,"context_line":"        def mocked_subprocess_check_output(*popenargs, **kwargs):"},{"line_number":1776,"context_line":"            # the last option is the assertion file to be signed"},{"line_number":1777,"context_line":"            filename \u003d popenargs[0][-1]"},{"line_number":1778,"context_line":"            f \u003d open(filename, \u0027r\u0027)"},{"line_number":1779,"context_line":"            assertion_content \u003d f.read()"},{"line_number":1780,"context_line":"            f.close()"},{"line_number":1781,"context_line":"            # since we are not testing the signature itself, we can return"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_264ce041","line":1778,"in_reply_to":"3a961159_6a831003","updated":"2015-01-07 23:01:26.000000000","message":"good suggestion!","commit_id":"da1ee6e861f2faf3ca2c41dc513d37bc996fc03b"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b5ff4d745ead4b479dce01e0b98bf17a6d543770","unresolved":false,"context_lines":[{"line_number":1791,"context_line":"            assertion_xml \u003d response.assertion.to_string()"},{"line_number":1792,"context_line":"            # make sure we have the proper tag and prefix for the assertion"},{"line_number":1793,"context_line":"            # namespace"},{"line_number":1794,"context_line":"            self.assertIn(\u0027\u003csaml:Assertion\u0027, assertion_xml)"},{"line_number":1795,"context_line":"            self.assertIn(\u0027xmlns:saml\u003d\"urn:oasis:names:tc:SAML:2.0:assertion\"\u0027,"},{"line_number":1796,"context_line":"                          assertion_xml)"},{"line_number":1797,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_6510a100","line":1794,"updated":"2015-01-07 21:53:05.000000000","message":"this doesn\u0027t actually verify much","commit_id":"da1ee6e861f2faf3ca2c41dc513d37bc996fc03b"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"bb867380bf5f05831671d9de6eed1c92cb4221c5","unresolved":false,"context_lines":[{"line_number":1791,"context_line":"            assertion_xml \u003d response.assertion.to_string()"},{"line_number":1792,"context_line":"            # make sure we have the proper tag and prefix for the assertion"},{"line_number":1793,"context_line":"            # namespace"},{"line_number":1794,"context_line":"            self.assertIn(\u0027\u003csaml:Assertion\u0027, assertion_xml)"},{"line_number":1795,"context_line":"            self.assertIn(\u0027xmlns:saml\u003d\"urn:oasis:names:tc:SAML:2.0:assertion\"\u0027,"},{"line_number":1796,"context_line":"                          assertion_xml)"},{"line_number":1797,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_864d943d","line":1794,"in_reply_to":"3a961159_6510a100","updated":"2015-01-07 23:01:26.000000000","message":"this will verify that the correct prefix is used","commit_id":"da1ee6e861f2faf3ca2c41dc513d37bc996fc03b"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b5ff4d745ead4b479dce01e0b98bf17a6d543770","unresolved":false,"context_lines":[{"line_number":1792,"context_line":"            # make sure we have the proper tag and prefix for the assertion"},{"line_number":1793,"context_line":"            # namespace"},{"line_number":1794,"context_line":"            self.assertIn(\u0027\u003csaml:Assertion\u0027, assertion_xml)"},{"line_number":1795,"context_line":"            self.assertIn(\u0027xmlns:saml\u003d\"urn:oasis:names:tc:SAML:2.0:assertion\"\u0027,"},{"line_number":1796,"context_line":"                          assertion_xml)"},{"line_number":1797,"context_line":""},{"line_number":1798,"context_line":"    def test_saml_signing(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_e5fbb1bb","line":1795,"updated":"2015-01-07 21:53:05.000000000","message":"good, but how about we verify the values we used from the library.\n\n  (Pdb) p saml2.NAMESPACE\n  \u0027urn:oasis:names:tc:SAML:2.0:assertion\u0027\n\n  (Pdb) p xmldsig.NAMESPACE\n  \u0027http://www.w3.org/2000/09/xmldsig#\u0027\n\n  (Pdb) p \u0027xmlns:xmldsig\u003d\"\u0027+xmldsig.NAMESPACE+\u0027\"\u0027 in assertion_xml\n  True\n\n  (Pdb) p \u0027xmlns:saml\u003d\"\u0027+saml2.NAMESPACE+\u0027\"\u0027 in assertion_xml\n  True","commit_id":"da1ee6e861f2faf3ca2c41dc513d37bc996fc03b"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"bb867380bf5f05831671d9de6eed1c92cb4221c5","unresolved":false,"context_lines":[{"line_number":1792,"context_line":"            # make sure we have the proper tag and prefix for the assertion"},{"line_number":1793,"context_line":"            # namespace"},{"line_number":1794,"context_line":"            self.assertIn(\u0027\u003csaml:Assertion\u0027, assertion_xml)"},{"line_number":1795,"context_line":"            self.assertIn(\u0027xmlns:saml\u003d\"urn:oasis:names:tc:SAML:2.0:assertion\"\u0027,"},{"line_number":1796,"context_line":"                          assertion_xml)"},{"line_number":1797,"context_line":""},{"line_number":1798,"context_line":"    def test_saml_signing(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_c6623cac","line":1795,"in_reply_to":"3a961159_e5fbb1bb","updated":"2015-01-07 23:01:26.000000000","message":"good suggestion!","commit_id":"da1ee6e861f2faf3ca2c41dc513d37bc996fc03b"}]}
