)]}'
{"keystoneclient/session.py":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":149,"context_line":"                                     endpoint to use for this request. If not"},{"line_number":150,"context_line":"                                     provided then URL is expected to be a"},{"line_number":151,"context_line":"                                     fully qualified URL. (optional)"},{"line_number":152,"context_line":"        :param object auth: The auth plugin to use when authenticating this"},{"line_number":153,"context_line":"                            request. This will override the plugin that is"},{"line_number":154,"context_line":"                            attached to the session (if any). (optional)"},{"line_number":155,"context_line":"        :param object requests_auth: A requests library auth plugin that cannot"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qL0%3D","line":152,"updated":"2014-04-03 01:39:49.000000000","message":"it would be nice if we could document the type that the argument has to be. (as in :class:`...`)","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":149,"context_line":"                                     endpoint to use for this request. If not"},{"line_number":150,"context_line":"                                     provided then URL is expected to be a"},{"line_number":151,"context_line":"                                     fully qualified URL. (optional)"},{"line_number":152,"context_line":"        :param object auth: The auth plugin to use when authenticating this"},{"line_number":153,"context_line":"                            request. This will override the plugin that is"},{"line_number":154,"context_line":"                            attached to the session (if any). (optional)"},{"line_number":155,"context_line":"        :param object requests_auth: A requests library auth plugin that cannot"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p7E%3D","line":152,"in_reply_to":"AAAAWH%2F9qL0%3D","updated":"2014-04-03 02:38:10.000000000","message":"Done","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":152,"context_line":"        :param object auth: The auth plugin to use when authenticating this"},{"line_number":153,"context_line":"                            request. This will override the plugin that is"},{"line_number":154,"context_line":"                            attached to the session (if any). (optional)"},{"line_number":155,"context_line":"        :param object requests_auth: A requests library auth plugin that cannot"},{"line_number":156,"context_line":"                                     be passed via kwarg because the auth kwarg"},{"line_number":157,"context_line":"                                     collides with our own auth plugins."},{"line_number":158,"context_line":"        :param kwargs: any other parameter that can be passed to"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qLo%3D","line":155,"updated":"2014-04-03 01:39:49.000000000","message":"it would be nice if we could document the type that the argument has to be.","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":152,"context_line":"        :param object auth: The auth plugin to use when authenticating this"},{"line_number":153,"context_line":"                            request. This will override the plugin that is"},{"line_number":154,"context_line":"                            attached to the session (if any). (optional)"},{"line_number":155,"context_line":"        :param object requests_auth: A requests library auth plugin that cannot"},{"line_number":156,"context_line":"                                     be passed via kwarg because the auth kwarg"},{"line_number":157,"context_line":"                                     collides with our own auth plugins."},{"line_number":158,"context_line":"        :param kwargs: any other parameter that can be passed to"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p7A%3D","line":155,"in_reply_to":"AAAAWH%2F9qLo%3D","updated":"2014-04-03 02:38:10.000000000","message":"Done","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":153,"context_line":"                            request. This will override the plugin that is"},{"line_number":154,"context_line":"                            attached to the session (if any). (optional)"},{"line_number":155,"context_line":"        :param object requests_auth: A requests library auth plugin that cannot"},{"line_number":156,"context_line":"                                     be passed via kwarg because the auth kwarg"},{"line_number":157,"context_line":"                                     collides with our own auth plugins."},{"line_number":158,"context_line":"        :param kwargs: any other parameter that can be passed to"},{"line_number":159,"context_line":"                       requests.Session.request (such as `headers`). Except:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qKs%3D","line":156,"updated":"2014-04-03 01:39:49.000000000","message":"suggest put auth in `` for rst","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":153,"context_line":"                            request. This will override the plugin that is"},{"line_number":154,"context_line":"                            attached to the session (if any). (optional)"},{"line_number":155,"context_line":"        :param object requests_auth: A requests library auth plugin that cannot"},{"line_number":156,"context_line":"                                     be passed via kwarg because the auth kwarg"},{"line_number":157,"context_line":"                                     collides with our own auth plugins."},{"line_number":158,"context_line":"        :param kwargs: any other parameter that can be passed to"},{"line_number":159,"context_line":"                       requests.Session.request (such as `headers`). Except:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p6s%3D","line":156,"in_reply_to":"AAAAWH%2F9qKs%3D","updated":"2014-04-03 02:38:10.000000000","message":"Done","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":368,"context_line":"        \"\"\"Return a token as provided by the auth plugin."},{"line_number":369,"context_line":""},{"line_number":370,"context_line":"        :param object auth: The auth plugin to use for token. Overrides the"},{"line_number":371,"context_line":"                            plugin on the session."},{"line_number":372,"context_line":""},{"line_number":373,"context_line":"        :raises AuthorizationFailure: if a new token fetch fails."},{"line_number":374,"context_line":"        :raises MissingAuthPlugin: if a plugin is not available."}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qKA%3D","line":371,"updated":"2014-04-03 01:39:49.000000000","message":"to be consistent, should put \"(optional)\"","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":368,"context_line":"        \"\"\"Return a token as provided by the auth plugin."},{"line_number":369,"context_line":""},{"line_number":370,"context_line":"        :param object auth: The auth plugin to use for token. Overrides the"},{"line_number":371,"context_line":"                            plugin on the session."},{"line_number":372,"context_line":""},{"line_number":373,"context_line":"        :raises AuthorizationFailure: if a new token fetch fails."},{"line_number":374,"context_line":"        :raises MissingAuthPlugin: if a plugin is not available."}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p6A%3D","line":371,"in_reply_to":"AAAAWH%2F9qKA%3D","updated":"2014-04-03 02:38:10.000000000","message":"Done","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":371,"context_line":"                            plugin on the session."},{"line_number":372,"context_line":""},{"line_number":373,"context_line":"        :raises AuthorizationFailure: if a new token fetch fails."},{"line_number":374,"context_line":"        :raises MissingAuthPlugin: if a plugin is not available."},{"line_number":375,"context_line":""},{"line_number":376,"context_line":"        :returns string: A valid token."},{"line_number":377,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qKM%3D","line":374,"updated":"2014-04-03 01:39:49.000000000","message":"this is fixing a different bug.","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":371,"context_line":"                            plugin on the session."},{"line_number":372,"context_line":""},{"line_number":373,"context_line":"        :raises AuthorizationFailure: if a new token fetch fails."},{"line_number":374,"context_line":"        :raises MissingAuthPlugin: if a plugin is not available."},{"line_number":375,"context_line":""},{"line_number":376,"context_line":"        :returns string: A valid token."},{"line_number":377,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p54%3D","line":374,"in_reply_to":"AAAAWH%2F9qKM%3D","updated":"2014-04-03 02:38:10.000000000","message":"Done","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":391,"context_line":"        \"\"\"Get an endpoint as provided by the auth plugin."},{"line_number":392,"context_line":""},{"line_number":393,"context_line":"        :param object auth: The auth plugin to use for token. Overrides the"},{"line_number":394,"context_line":"                            plugin on the session."},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"        :raises MissingAuthPlugin: if a plugin is not available."},{"line_number":397,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qJ4%3D","line":394,"updated":"2014-04-03 01:39:49.000000000","message":"to be consistent, should put \"(optional)\"","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":391,"context_line":"        \"\"\"Get an endpoint as provided by the auth plugin."},{"line_number":392,"context_line":""},{"line_number":393,"context_line":"        :param object auth: The auth plugin to use for token. Overrides the"},{"line_number":394,"context_line":"                            plugin on the session."},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"        :raises MissingAuthPlugin: if a plugin is not available."},{"line_number":397,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p50%3D","line":394,"in_reply_to":"AAAAWH%2F9qJ4%3D","updated":"2014-04-03 02:38:10.000000000","message":"Done","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"change_message_id":"68c9d36a164548de3fcb9042edf0b5ade3d9ca08","unresolved":false,"context_lines":[{"line_number":171,"context_line":""},{"line_number":172,"context_line":"        headers \u003d kwargs.setdefault(\u0027headers\u0027, dict())"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"        if authenticated is None:"},{"line_number":175,"context_line":"            authenticated \u003d bool(auth or self.auth)"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"        if authenticated:"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAWn%2F%2F9nw%3D","line":174,"updated":"2014-04-08 08:19:24.000000000","message":"You could also write:\n\nif not authenticated:\n\nwhich would work the same way and look better :)","commit_id":"71e6486a3ecfd7ba757af447e7b805f267ee802f"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"aa03f517a95f6e34b988436b3dc6d610c85454cb","unresolved":false,"context_lines":[{"line_number":171,"context_line":""},{"line_number":172,"context_line":"        headers \u003d kwargs.setdefault(\u0027headers\u0027, dict())"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"        if authenticated is None:"},{"line_number":175,"context_line":"            authenticated \u003d bool(auth or self.auth)"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"        if authenticated:"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAWn%2F%2F5BY%3D","line":174,"in_reply_to":"AAAAWn%2F%2F9nw%3D","updated":"2014-04-08 20:27:45.000000000","message":"that\u0027s not quite the same -- for UX purposes, if I pass in something falsey, i don\u0027t want it to be accidentally recognized as the default value, None... i want it to raise an exception immediately","commit_id":"71e6486a3ecfd7ba757af447e7b805f267ee802f"}],"keystoneclient/tests/test_session.py":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":304,"context_line":"            return None"},{"line_number":305,"context_line":""},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"class CalledAuthPlugin(base.BaseAuthPlugin):"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    ENDPOINT \u003d \u0027http://fakeendpoint/\u0027"},{"line_number":310,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qJk%3D","line":307,"updated":"2014-04-03 01:39:49.000000000","message":"This looks like a mock, could use mock.Mock instead.","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":304,"context_line":"            return None"},{"line_number":305,"context_line":""},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"class CalledAuthPlugin(base.BaseAuthPlugin):"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    ENDPOINT \u003d \u0027http://fakeendpoint/\u0027"},{"line_number":310,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p4Q%3D","line":307,"in_reply_to":"AAAAWH%2F9qJk%3D","updated":"2014-04-03 02:38:10.000000000","message":"It could but then you would still need to create a new auth plugin with the sole purpose of being able to mock with it. I think it\u0027s just as easy to create the object.","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":407,"context_line":"        self.assertRaises(exceptions.MissingAuthPlugin, sess.get, \u0027path\u0027,"},{"line_number":408,"context_line":"                          authenticated\u003dTrue, endpoint_filter\u003dendpoint_filter)"},{"line_number":409,"context_line":""},{"line_number":410,"context_line":"        # no plugin with an endpoint filter won\u0027t work"},{"line_number":411,"context_line":"        self.assertRaises(exceptions.MissingAuthPlugin, sess.get, \u0027path\u0027,"},{"line_number":412,"context_line":"                          authenticated\u003dFalse, endpoint_filter\u003dendpoint_filter)"},{"line_number":413,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qJg%3D","line":410,"updated":"2014-04-03 01:39:49.000000000","message":"the previous check at line 408 also passes an endpoint filter, so this has already been tested.","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":407,"context_line":"        self.assertRaises(exceptions.MissingAuthPlugin, sess.get, \u0027path\u0027,"},{"line_number":408,"context_line":"                          authenticated\u003dTrue, endpoint_filter\u003dendpoint_filter)"},{"line_number":409,"context_line":""},{"line_number":410,"context_line":"        # no plugin with an endpoint filter won\u0027t work"},{"line_number":411,"context_line":"        self.assertRaises(exceptions.MissingAuthPlugin, sess.get, \u0027path\u0027,"},{"line_number":412,"context_line":"                          authenticated\u003dFalse, endpoint_filter\u003dendpoint_filter)"},{"line_number":413,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p3s%3D","line":410,"in_reply_to":"AAAAWH%2F9qJg%3D","updated":"2014-04-03 02:38:10.000000000","message":"Done","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":414,"context_line":"        resp \u003d sess.get(\u0027path\u0027, auth\u003dpassed, endpoint_filter\u003dendpoint_filter)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"        self.assertEqual(200, resp.status_code)"},{"line_number":417,"context_line":"        self.assertIs(True, passed.get_endpoint_called)"},{"line_number":418,"context_line":"        self.assertIs(True, passed.get_token_called)"},{"line_number":419,"context_line":""},{"line_number":420,"context_line":"    @httpretty.activate"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qJc%3D","line":417,"updated":"2014-04-03 01:39:49.000000000","message":"Suggest use assertTrue since it\u0027s going to be a boolean.\n\nAlso, the calls to sess.get at 407 \u0026 412 could have caused passed.get_endpoint_called to be set to True. passed should be reset before line 414.","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":414,"context_line":"        resp \u003d sess.get(\u0027path\u0027, auth\u003dpassed, endpoint_filter\u003dendpoint_filter)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"        self.assertEqual(200, resp.status_code)"},{"line_number":417,"context_line":"        self.assertIs(True, passed.get_endpoint_called)"},{"line_number":418,"context_line":"        self.assertIs(True, passed.get_token_called)"},{"line_number":419,"context_line":""},{"line_number":420,"context_line":"    @httpretty.activate"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p24%3D","line":417,"in_reply_to":"AAAAWH%2F9qJc%3D","updated":"2014-04-03 02:38:10.000000000","message":"the \u0027passed\u0027 plugin is not passed to the functions at line 407 and 412 - this is what makes them fail which is what we are testing.","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":432,"context_line":"                        endpoint_filter\u003d{\u0027service_type\u0027: \u0027identity\u0027})"},{"line_number":433,"context_line":""},{"line_number":434,"context_line":"        self.assertEqual(200, resp.status_code)"},{"line_number":435,"context_line":"        self.assertIs(True, passed.get_endpoint_called)"},{"line_number":436,"context_line":"        self.assertIs(True, passed.get_token_called)"},{"line_number":437,"context_line":"        self.assertIs(False, fixed.get_endpoint_called)"},{"line_number":438,"context_line":"        self.assertIs(False, fixed.get_token_called)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qI0%3D","line":435,"updated":"2014-04-03 01:39:49.000000000","message":"assertTrue and assertFalse for these.","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":432,"context_line":"                        endpoint_filter\u003d{\u0027service_type\u0027: \u0027identity\u0027})"},{"line_number":433,"context_line":""},{"line_number":434,"context_line":"        self.assertEqual(200, resp.status_code)"},{"line_number":435,"context_line":"        self.assertIs(True, passed.get_endpoint_called)"},{"line_number":436,"context_line":"        self.assertIs(True, passed.get_token_called)"},{"line_number":437,"context_line":"        self.assertIs(False, fixed.get_endpoint_called)"},{"line_number":438,"context_line":"        self.assertIs(False, fixed.get_token_called)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p2o%3D","line":435,"in_reply_to":"AAAAWH%2F9qI0%3D","updated":"2014-04-03 02:38:10.000000000","message":"Done","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"fafea930f339851d8349ced31b7dc221796a339a","unresolved":false,"context_lines":[{"line_number":450,"context_line":""},{"line_number":451,"context_line":"            self.assertEqual(1, mocked.call_count)"},{"line_number":452,"context_line":"            args, kwargs \u003d mocked.call_args"},{"line_number":453,"context_line":"            self.assertIs(requests_auth, kwargs[\u0027auth\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9qHw%3D","line":453,"updated":"2014-04-03 01:39:49.000000000","message":"should be able to do\n\n mocked.assert_called_once_with(requests_auth, ) -- use mock.ANY if you don\u0027t know the arg.","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"e09fffebf69a2b2ffddfe4eb39bf6810b30881b2","unresolved":false,"context_lines":[{"line_number":450,"context_line":""},{"line_number":451,"context_line":"            self.assertEqual(1, mocked.call_count)"},{"line_number":452,"context_line":"            args, kwargs \u003d mocked.call_args"},{"line_number":453,"context_line":"            self.assertIs(requests_auth, kwargs[\u0027auth\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9p1Q%3D","line":453,"in_reply_to":"AAAAWH%2F9qHw%3D","updated":"2014-04-03 02:38:10.000000000","message":"yea - it would be nice if mock would lets us ignore all but the provided arguments, when i do a with() i need to know things like whether allow_redirects is set. Yes i can use ANY but i still have to care whether or not the variables was passed which has nothing to do with this test.","commit_id":"ba923fcdcf4f6d755a6bf2ade906012890e030c9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"7a337ba625e7b2ecf1f54b81805d7b7bd90db31c","unresolved":false,"context_lines":[{"line_number":304,"context_line":"            return None"},{"line_number":305,"context_line":""},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"class CalledAuthPlugin(base.BaseAuthPlugin):"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    ENDPOINT \u003d \u0027http://fakeendpoint/\u0027"},{"line_number":310,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F9g%2Fo%3D","line":307,"updated":"2014-04-04 00:27:17.000000000","message":"No need to create a new auth plugin, just use mock.Mock().","commit_id":"4dc607b1deb6b56e06760fa0a6af30ff3454ef52"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"7a337ba625e7b2ecf1f54b81805d7b7bd90db31c","unresolved":false,"context_lines":[{"line_number":411,"context_line":"        self.assertRaises(exceptions.MissingAuthPlugin, sess.get, \u0027path\u0027,"},{"line_number":412,"context_line":"                          authenticated\u003dFalse, endpoint_filter\u003dendpoint_filter)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"        resp \u003d sess.get(\u0027path\u0027, auth\u003dpassed, endpoint_filter\u003dendpoint_filter)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"        self.assertEqual(200, resp.status_code)"},{"line_number":417,"context_line":"        self.assertTrue(passed.get_endpoint_called)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F9g%2Fg%3D","line":414,"updated":"2014-04-04 00:27:17.000000000","message":"create \u0027passed\u0027 at line 413 rather than up at 398 since it\u0027s not used until this line. It would be less confusing.","commit_id":"4dc607b1deb6b56e06760fa0a6af30ff3454ef52"}]}
