)]}'
{"ceilometer/energy/kwapi.py":[{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"79bb3847966f5d6ba01fe00960e44e27c3fa55e8","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        return KwapiClient(endpoint, ksclient.auth_token)"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"    @staticmethod"},{"line_number":65,"context_line":"    def is_enabled():"},{"line_number":66,"context_line":"        ksclient \u003d ks_client.Client("},{"line_number":67,"context_line":"            username\u003dcfg.CONF.os_username,"},{"line_number":68,"context_line":"            password\u003dcfg.CONF.os_password,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F9EQ%3D","line":65,"updated":"2013-03-05 13:11:47.000000000","message":"is_enabled is called at ceilometer start time only, so this will disallow the endpoint to come up later in Keystone and be enabled dynamically later.\n\nSo I thin the idea\u0027s good but should be checked every get_counters called. Which doesn\u0027t have a big cost since we get passed the keystoneclient.","commit_id":"99738aaa851dfba720a4f957ab9470984bdb0612"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"a066a631b25f119e2d9f52f8830097f07dd3088e","unresolved":false,"context_lines":[{"line_number":66,"context_line":"        try:"},{"line_number":67,"context_line":"            client \u003d self.get_kwapi_client(ksclient)"},{"line_number":68,"context_line":"        except EndpointNotFound:"},{"line_number":69,"context_line":"            LOG.info(_(\"Kwapi endpoint not found\"))"},{"line_number":70,"context_line":"            return []"},{"line_number":71,"context_line":"        return client.iter_probes()"},{"line_number":72,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F89c%3D","line":69,"updated":"2013-03-05 14:07:19.000000000","message":"Please change this to LOG.debug().","commit_id":"79c65e0f01709e92a8b85d02754d54209fe137fa"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"6c206001c44b2354810f620babdeeb7bf4312111","unresolved":false,"context_lines":[{"line_number":22,"context_line":"from ceilometer.central import plugin"},{"line_number":23,"context_line":"from ceilometer.openstack.common import log"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"from keystoneclient.exceptions import EndpointNotFound"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAN3%2F%2F85A%3D","line":25,"updated":"2013-03-05 14:34:19.000000000","message":"Does this breaking the HACKING style rule:\n\n  \"Do not import objects, only modules\"","commit_id":"8e3e86257ae7f387cb4f7b2c4a5646de4b2ffec0"}],"tests/energy/test_kwapi.py":[{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"dd23b743a739858799022d7a62bd1a3a4dda25bd","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                       self.fake_kwapi_get_kwapi_client)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        counters \u003d list(kwapi.KwapiPollster().get_counters(self.manager))"},{"line_number":80,"context_line":"        self.assertEqual(len(counters), 0)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    def test_kwapi_counter(self):"},{"line_number":83,"context_line":"        self.stubs.Set(kwapi._Base, \u0027iter_probes\u0027, self.fake_kwapi_iter_probes)"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAN3%2F%2F8yk%3D","line":80,"updated":"2013-03-05 15:18:09.000000000","message":"Is there a way to assert that kwapi._Base.iter_probes is never called?","commit_id":"fba1ae00c324d9ad9ec0e6700ed317832e9e58e0"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"01547bcc0b4aebb31590cd5bf925db1b07ae3d50","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                       self.fake_kwapi_get_kwapi_client)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        counters \u003d list(kwapi.KwapiPollster().get_counters(self.manager))"},{"line_number":80,"context_line":"        self.assertEqual(len(counters), 0)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    def test_kwapi_counter(self):"},{"line_number":83,"context_line":"        self.stubs.Set(kwapi._Base, \u0027iter_probes\u0027, self.fake_kwapi_iter_probes)"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAN3%2F%2F8xQ%3D","line":80,"in_reply_to":"AAAAN3%2F%2F8yI%3D","updated":"2013-03-05 15:32:05.000000000","message":"Without verifying that iter_probes is not called we are not testing the full expected behavior of having that exception (that we never even try to get a list from the server). I guess that\u0027s excessively pedantic, though.","commit_id":"fba1ae00c324d9ad9ec0e6700ed317832e9e58e0"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"79bfca6192da9d0dc1f51a20b03fa8e195fc4166","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                       self.fake_kwapi_get_kwapi_client)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        counters \u003d list(kwapi.KwapiPollster().get_counters(self.manager))"},{"line_number":80,"context_line":"        self.assertEqual(len(counters), 0)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    def test_kwapi_counter(self):"},{"line_number":83,"context_line":"        self.stubs.Set(kwapi._Base, \u0027iter_probes\u0027, self.fake_kwapi_iter_probes)"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAN3%2F%2F8yI%3D","line":80,"in_reply_to":"AAAAN3%2F%2F8yk%3D","updated":"2013-03-05 15:24:20.000000000","message":"You may be able to do that with some mockup yes. Not sure it\u0027s really needed since anyway the method is faked.","commit_id":"fba1ae00c324d9ad9ec0e6700ed317832e9e58e0"}]}
