)]}'
{"keystone/server/flask/common.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"9b2c17b6df04d7d07390eac5e78dd974af43547e","unresolved":false,"context_lines":[{"line_number":937,"context_line":"    def _normalize_domain_id(cls, ref):"},{"line_number":938,"context_line":"        \"\"\"Fill in domain_id if not specified in a v3 call.\"\"\""},{"line_number":939,"context_line":"        if not ref.get(\u0027domain_id\u0027):"},{"line_number":940,"context_line":"            ref[\u0027domain_id\u0027] \u003d cls._get_domain_id_from_token()"},{"line_number":941,"context_line":"        return ref"},{"line_number":942,"context_line":""},{"line_number":943,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_a250be0b","side":"PARENT","line":940,"range":{"start_line":940,"start_character":35,"end_line":940,"end_character":60},"updated":"2018-09-18 11:44:32.000000000","message":"This must have been duplicated somehow? The implementation of this method in keystone/common/controller.py requires a request object.","commit_id":"4532b97b0329a59fe5d51eb7cb09c66b2700191a"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"839acebabc11ff4351e0b421456c86dcc6dd603e","unresolved":false,"context_lines":[{"line_number":939,"context_line":"    def _normalize_domain_id(cls, ref):"},{"line_number":940,"context_line":"        \"\"\"Fill in domain_id if not specified in a v3 call.\"\"\""},{"line_number":941,"context_line":"        if not ref.get(\u0027domain_id\u0027):"},{"line_number":942,"context_line":"            oslo_ctx \u003d flask.request.environ.get("},{"line_number":943,"context_line":"                context.REQUEST_CONTEXT_ENV, None)"},{"line_number":944,"context_line":"            if oslo_ctx and oslo_ctx.domain_id:"},{"line_number":945,"context_line":"                # Domain Scoped Token Scenario."}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_40c69118","line":942,"updated":"2018-09-17 22:13:04.000000000","message":"NOTE to reviewers: this is an @classmethod and therefore cannot lean on self.oslo_context (@property), slight duplication of code here for that reason.","commit_id":"c96c7fd03b7afab033bcb31465390f46e56089c5"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"315a76c2fb808ea9b4fba77d10cc57cd93902426","unresolved":false,"context_lines":[{"line_number":939,"context_line":"    def _normalize_domain_id(cls, ref):"},{"line_number":940,"context_line":"        \"\"\"Fill in domain_id if not specified in a v3 call.\"\"\""},{"line_number":941,"context_line":"        if not ref.get(\u0027domain_id\u0027):"},{"line_number":942,"context_line":"            oslo_ctx \u003d flask.request.environ.get("},{"line_number":943,"context_line":"                context.REQUEST_CONTEXT_ENV, None)"},{"line_number":944,"context_line":"            if oslo_ctx and oslo_ctx.domain_id:"},{"line_number":945,"context_line":"                # Domain Scoped Token Scenario."}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_c825e3c0","line":942,"in_reply_to":"3f79a3b5_40c69118","updated":"2018-09-18 07:48:14.000000000","message":"Seems like we could have reduced the duplication by just passing a request object to cls._get_domain_id_from_token()? Not entirely sure how the method call worked without doing so before.","commit_id":"c96c7fd03b7afab033bcb31465390f46e56089c5"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"e654994d02b966d8ded55106dfc525fd05c86c7b","unresolved":false,"context_lines":[{"line_number":939,"context_line":"    def _normalize_domain_id(cls, ref):"},{"line_number":940,"context_line":"        \"\"\"Fill in domain_id if not specified in a v3 call.\"\"\""},{"line_number":941,"context_line":"        if not ref.get(\u0027domain_id\u0027):"},{"line_number":942,"context_line":"            oslo_ctx \u003d flask.request.environ.get("},{"line_number":943,"context_line":"                context.REQUEST_CONTEXT_ENV, None)"},{"line_number":944,"context_line":"            if oslo_ctx and oslo_ctx.domain_id:"},{"line_number":945,"context_line":"                # Domain Scoped Token Scenario."}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_72f35174","line":942,"in_reply_to":"3f79a3b5_c825e3c0","updated":"2018-09-18 14:23:40.000000000","message":"It didn\u0027t, the failure was a 500 error. We didn\u0027t test the case of inferred domain membership on creation. Shade/sdk did and found this (tempest didn\u0027t either)","commit_id":"c96c7fd03b7afab033bcb31465390f46e56089c5"}],"keystone/tests/unit/server/test_keystone_flask.py":[{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"c88d02beb9ec3414bb4e1648a3ce8d6c2c78898f","unresolved":false,"context_lines":[{"line_number":557,"context_line":"        headers \u003d {\u0027X-Auth-Token\u0027: self._get_token()}"},{"line_number":558,"context_line":"        ref_with_domain_id \u003d {\u0027domain_id\u0027: uuid.uuid4().hex}"},{"line_number":559,"context_line":"        ref_without_domain_id \u003d {}"},{"line_number":560,"context_line":"        with self.test_client() as c:"},{"line_number":561,"context_line":"            # Make a dummy request.. ANY request is fine to push the whole"},{"line_number":562,"context_line":"            # context stack."},{"line_number":563,"context_line":"            c.get(\u0027%s/%s\u0027 % (url, uuid.uuid4().hex), headers\u003dheaders,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_eca556b5","line":560,"updated":"2018-09-18 03:01:14.000000000","message":"For clarity, I\u0027d prefer this written as 3 tests, each which check one thing.  It is OK as as, and can go forward, but if you find yourself touching this code in the future, please split it.","commit_id":"c96c7fd03b7afab033bcb31465390f46e56089c5"}]}
