)]}'
{"glance/api/authorization.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"60fb815f711b4b019358503b56d8b180b152624f","unresolved":false,"context_lines":[{"line_number":333,"context_line":"        raise exception.Forbidden(message)"},{"line_number":334,"context_line":""},{"line_number":335,"context_line":"    def reactivate(self, *args, **kwargs):"},{"line_number":336,"context_line":"        message \u003d _(\"You are not permitted to activate this image.\")"},{"line_number":337,"context_line":"        raise exception.Forbidden(message)"},{"line_number":338,"context_line":""},{"line_number":339,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da85f559_dba176f9","line":336,"updated":"2015-11-12 01:53:08.000000000","message":"It\u0027s probably worth changing the message to say \u0027reactivate\u0027 as well.","commit_id":"ee401c8d18d73ae93b29481b98136c534849960f"},{"author":{"_account_id":14676,"name":"Kairat Kushaev","email":"kkushaev@mirantis.com","username":"kairat_kushaev"},"change_message_id":"79d852a874544a50e9a5de68c0d93bac8faf8bd1","unresolved":false,"context_lines":[{"line_number":333,"context_line":"        raise exception.Forbidden(message)"},{"line_number":334,"context_line":""},{"line_number":335,"context_line":"    def reactivate(self, *args, **kwargs):"},{"line_number":336,"context_line":"        message \u003d _(\"You are not permitted to activate this image.\")"},{"line_number":337,"context_line":"        raise exception.Forbidden(message)"},{"line_number":338,"context_line":""},{"line_number":339,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da85f559_46811dfa","line":336,"in_reply_to":"da85f559_dba176f9","updated":"2015-11-12 09:27:07.000000000","message":"+1","commit_id":"ee401c8d18d73ae93b29481b98136c534849960f"}],"glance/tests/unit/test_auth.py":[{"author":{"_account_id":14676,"name":"Kairat Kushaev","email":"kkushaev@mirantis.com","username":"kairat_kushaev"},"change_message_id":"d01f19d6478832484e107a27258238f91bf3e42b","unresolved":false,"context_lines":[{"line_number":772,"context_line":"        self.assertRaises(exception.Forbidden, self.image.deactivate)"},{"line_number":773,"context_line":""},{"line_number":774,"context_line":"    def test_reactivate_image(self):"},{"line_number":775,"context_line":"        self.assertRaises(exception.Forbidden, self.image.reactivate)"},{"line_number":776,"context_line":""},{"line_number":777,"context_line":"    def test_get_data(self):"},{"line_number":778,"context_line":"        class FakeImage(object):"}],"source_content_type":"text/x-python","patch_set":1,"id":"da85f559_26af392b","line":775,"updated":"2015-11-12 09:32:27.000000000","message":"It would be nice to have a functional test on this like re-activate admin image because as you saw previously these tests are not enough to catch the error (they passed but they were incorrect).","commit_id":"ee401c8d18d73ae93b29481b98136c534849960f"},{"author":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"change_message_id":"e6b5ddf98c5438321c4a5aba7dee8e2afacc66a2","unresolved":false,"context_lines":[{"line_number":772,"context_line":"        self.assertRaises(exception.Forbidden, self.image.deactivate)"},{"line_number":773,"context_line":""},{"line_number":774,"context_line":"    def test_reactivate_image(self):"},{"line_number":775,"context_line":"        self.assertRaises(exception.Forbidden, self.image.reactivate)"},{"line_number":776,"context_line":""},{"line_number":777,"context_line":"    def test_get_data(self):"},{"line_number":778,"context_line":"        class FakeImage(object):"}],"source_content_type":"text/x-python","patch_set":1,"id":"da85f559_7e05c111","line":775,"in_reply_to":"da85f559_26af392b","updated":"2015-11-12 12:11:54.000000000","message":"I do agree that functional test would be in place here as clearly unit tests did not catch the faulty behavior as Kairat well brought out.","commit_id":"ee401c8d18d73ae93b29481b98136c534849960f"}]}
