)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6983,"name":"YangLei","email":"iamhappg@aliyun.com","username":"YangLei"},"change_message_id":"d2e8b001d127b359da7f77b8a961060c09b262bc","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add basic tests for the compute part."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"blueprint add-basic-ceilometer-tests"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I1df8498be5e4704e0f2c3c3a235877cbf12db54e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"AAAATn%2F%2BJBM%3D","line":11,"updated":"2013-12-02 03:09:18.000000000","message":"We had better add \"Partially implements\"\n\nThe same to Other code changes of this blueprint","commit_id":"28c2d58bdadb6b21f9b18a6adacd092702fb7329"}],"tempest/api/metering/compute/test_compute.py":[{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"e811cb0e2a466e3134fabc62d20930e796ab392c","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        resp, body \u003d self.metering_client.get_all_resources()"},{"line_number":56,"context_line":"        for resource in body:"},{"line_number":57,"context_line":"            if self.server[\"id\"] \u003d\u003d resource[\"resource_id\"]:"},{"line_number":58,"context_line":"                result \u003d True"},{"line_number":59,"context_line":"        self.assertTrue(result)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    @attr(type\u003d\u0027gate\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAASn%2F%2F42k%3D","line":58,"updated":"2013-08-28 11:49:44.000000000","message":"You should probably break here. Or replace the whole loop by a call to filter() :)","commit_id":"833650d3ff05aa27b2b33e62932c4b56c8230f08"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"73f0ded2e2bc178fd7bec55017e41a2700ff42c2","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        resp, body \u003d self.metering_client.get_all_resources()"},{"line_number":56,"context_line":"        for resource in body:"},{"line_number":57,"context_line":"            if self.server[\"id\"] \u003d\u003d resource[\"resource_id\"]:"},{"line_number":58,"context_line":"                result \u003d True"},{"line_number":59,"context_line":"        self.assertTrue(result)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    @attr(type\u003d\u0027gate\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAASn%2F%2F3sg%3D","line":58,"in_reply_to":"AAAASn%2F%2F42k%3D","updated":"2013-08-28 16:15:48.000000000","message":"Done","commit_id":"833650d3ff05aa27b2b33e62932c4b56c8230f08"},{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"08b6defbbd23b7d00845cafa0eabf858534efc8d","unresolved":false,"context_lines":[{"line_number":62,"context_line":"    def test_server_flavor(self):"},{"line_number":63,"context_line":"        \"\"\"Verify that the flavor has been registered.\"\"\""},{"line_number":64,"context_line":"        resp, body \u003d self.get_meters_by_resource_id(\"instance\","},{"line_number":65,"context_line":"                                                    self.server[\"id\"])"},{"line_number":66,"context_line":"        resource_metadata \u003d body[0][\"resource_metadata\"]"},{"line_number":67,"context_line":"        self.asserEquals(self.flavor_ref,"},{"line_number":68,"context_line":"                         resource_metadata[\"instance_type_id\"])"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAASn%2F%2F4wU%3D","line":65,"updated":"2013-08-28 12:11:06.000000000","message":"If you do not use \"resp\", you should probably write:\n\n_, body \u003d self.get_meters_by_resource_id(...)\n\ninstead.","commit_id":"833650d3ff05aa27b2b33e62932c4b56c8230f08"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"73f0ded2e2bc178fd7bec55017e41a2700ff42c2","unresolved":false,"context_lines":[{"line_number":62,"context_line":"    def test_server_flavor(self):"},{"line_number":63,"context_line":"        \"\"\"Verify that the flavor has been registered.\"\"\""},{"line_number":64,"context_line":"        resp, body \u003d self.get_meters_by_resource_id(\"instance\","},{"line_number":65,"context_line":"                                                    self.server[\"id\"])"},{"line_number":66,"context_line":"        resource_metadata \u003d body[0][\"resource_metadata\"]"},{"line_number":67,"context_line":"        self.asserEquals(self.flavor_ref,"},{"line_number":68,"context_line":"                         resource_metadata[\"instance_type_id\"])"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAASn%2F%2F3sc%3D","line":65,"in_reply_to":"AAAASn%2F%2F4wU%3D","updated":"2013-08-28 16:15:48.000000000","message":"Done","commit_id":"833650d3ff05aa27b2b33e62932c4b56c8230f08"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"208d175f67d81aee0b10e83a412e6751fcb8f832","unresolved":false,"context_lines":[{"line_number":36,"context_line":"            cls.image_ref,"},{"line_number":37,"context_line":"            cls.flavor_ref"},{"line_number":38,"context_line":"        )"},{"line_number":39,"context_line":"        cls.server_client.wait_for_server_status(body[\"id\"], \u0027ACTIVE\u0027)"},{"line_number":40,"context_line":"        cls.server \u003d body"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    @classmethod"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2Bdpc%3D","line":39,"updated":"2013-11-25 19:50:15.000000000","message":"For this test to be more general purpose, i.e. to assert the existence of specific meters that are driven by the compute agent polling as opposed to instance-lifecycle-related notifications, I think we\u0027ll need to also accelerate the cpu_pipeline interval in the /etc/ceilometer/pipeline.yaml.\n\n(i.e. simply waiting for the server status to turn ACTIVE wouldn\u0027t suffice for the polled meters)","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"208d175f67d81aee0b10e83a412e6751fcb8f832","unresolved":false,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":65,"context_line":"    def test_server_flavor(self):"},{"line_number":66,"context_line":"        \"\"\"Verify that the flavor has been registered.\"\"\""},{"line_number":67,"context_line":"        _, body \u003d self.metering_client.get_meters("},{"line_number":68,"context_line":"            \"instance\","},{"line_number":69,"context_line":"            [{\"field\": \"resource_id\", \"op\": \"eq\", \"value\": self.server[\"id\"]}]"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2BdpI%3D","line":66,"updated":"2013-11-25 19:50:15.000000000","message":"s/registered/recorded/","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"7ce16d37c83fc1d75102c79a42c646f6f1ef6588","unresolved":false,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":65,"context_line":"    def test_server_flavor(self):"},{"line_number":66,"context_line":"        \"\"\"Verify that the flavor has been registered.\"\"\""},{"line_number":67,"context_line":"        _, body \u003d self.metering_client.get_meters("},{"line_number":68,"context_line":"            \"instance\","},{"line_number":69,"context_line":"            [{\"field\": \"resource_id\", \"op\": \"eq\", \"value\": self.server[\"id\"]}]"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2BA94%3D","line":66,"in_reply_to":"AAAATn%2F%2BdpI%3D","updated":"2013-12-03 16:18:12.000000000","message":"Done","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":7930,"name":"jun xie","email":"easonxie160@163.com","username":"jeffreycoho"},"change_message_id":"e637abf49872abdfad7a8f10e9c6933c60af04ef","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        )"},{"line_number":71,"context_line":"        resource_metadata \u003d body[0][\"resource_metadata\"]"},{"line_number":72,"context_line":"        self.assertEquals(self.flavor_ref,"},{"line_number":73,"context_line":"                          resource_metadata[\"instance_type_id\"])"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":76,"context_line":"    def test_server_image(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2B61g%3D","line":73,"updated":"2013-11-18 15:45:27.000000000","message":"is instance_type_id always in resource_metadata? because through http://9.123.136.198:8777/v2/meters/instance?q.field\u003dresource_id\u0026q.op\u003deq\u0026q.value\u003debbcf50e-a708-48bc-9fbe-d45cb804a809,\n i also get the following version of resource_metadata from one meter which does\u0027t have instance_type_id: \n\"resource_metadata\": {\n            \"ramdisk_id\": \"None\",\n            \"flavor.vcpus\": \"1\",\n            \"flavor.ephemeral\": \"0\",\n            \"display_name\": \"instindh\",\n            \"flavor.ram\": \"1024\",\n            \"OS-EXT-AZ:availability_zone\": \"nova\",\n            \"ephemeral_gb\": \"0\",\n            \"flavor.name\": \"xflavor\",\n            \"disk_gb\": \"10\",\n            \"kernel_id\": \"None\",\n            \"image.id\": \"b27edd3a-354f-40c8-9177-1a266ef95611\",\n            \"flavor.id\": \"7\",\n            \"host\": \"1987558bb8a134e51a6422ab48dc2070639854d18fc538a65044b289\",\n            \"image.name\": \"hypervimage\",\n            \"image_ref_url\":\n\"http://9.123.136.198:8774/53XX/images/b27XX\",\n            \"flavor.disk\": \"10\",\n            \"root_gb\": \"10\",\n            \"name\": \"instance-00000002\",\n            \"memory_mb\": \"1024\",\n            \"instance_type\": \"7\",\n            \"vcpus\": \"1\",\n            \"image_ref\": \"b27edd3a-354f-40c8-9177-1a266ef95611\"\n        },","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":7930,"name":"jun xie","email":"easonxie160@163.com","username":"jeffreycoho"},"change_message_id":"6d9d22337d765d928c7d5ddb26ed9015ceba7636","unresolved":false,"context_lines":[{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":76,"context_line":"    def test_server_image(self):"},{"line_number":77,"context_line":"        \"\"\"Verify that the flavor has been registered.\"\"\""},{"line_number":78,"context_line":"        _, body \u003d self.metering_client.get_meters("},{"line_number":79,"context_line":"            \"instance\","},{"line_number":80,"context_line":"            [{\"field\": \"resource_id\", \"op\": \"eq\", \"value\": self.server[\"id\"]}]"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2B8%2Fw%3D","line":77,"updated":"2013-11-18 06:42:43.000000000","message":"image, not flavor","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"208d175f67d81aee0b10e83a412e6751fcb8f832","unresolved":false,"context_lines":[{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":76,"context_line":"    def test_server_image(self):"},{"line_number":77,"context_line":"        \"\"\"Verify that the flavor has been registered.\"\"\""},{"line_number":78,"context_line":"        _, body \u003d self.metering_client.get_meters("},{"line_number":79,"context_line":"            \"instance\","},{"line_number":80,"context_line":"            [{\"field\": \"resource_id\", \"op\": \"eq\", \"value\": self.server[\"id\"]}]"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2BdpU%3D","line":77,"updated":"2013-11-25 19:50:15.000000000","message":"s/registered/recorded/","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"7ce16d37c83fc1d75102c79a42c646f6f1ef6588","unresolved":false,"context_lines":[{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":76,"context_line":"    def test_server_image(self):"},{"line_number":77,"context_line":"        \"\"\"Verify that the flavor has been registered.\"\"\""},{"line_number":78,"context_line":"        _, body \u003d self.metering_client.get_meters("},{"line_number":79,"context_line":"            \"instance\","},{"line_number":80,"context_line":"            [{\"field\": \"resource_id\", \"op\": \"eq\", \"value\": self.server[\"id\"]}]"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2BA9c%3D","line":77,"in_reply_to":"AAAATn%2F%2BdpU%3D","updated":"2013-12-03 16:18:12.000000000","message":"Done","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":7930,"name":"jun xie","email":"easonxie160@163.com","username":"jeffreycoho"},"change_message_id":"e637abf49872abdfad7a8f10e9c6933c60af04ef","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        )"},{"line_number":82,"context_line":"        resource_metadata \u003d body[0][\"resource_metadata\"]"},{"line_number":83,"context_line":"        self.assertEquals(self.image_ref,"},{"line_number":84,"context_line":"                          resource_metadata[\"image_meta.base_image_ref\"])"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2B6yI%3D","line":84,"updated":"2013-11-18 15:45:27.000000000","message":"same as line 73, key image_meta.base_image_ref","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"24d37c48159a43073117d267165dbe2687f4915d","unresolved":false,"context_lines":[{"line_number":59,"context_line":"            if self.server[\"id\"] \u003d\u003d resource[\"resource_id\"]:"},{"line_number":60,"context_line":"                result \u003d True"},{"line_number":61,"context_line":"                break"},{"line_number":62,"context_line":"        self.assertTrue(result)"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":65,"context_line":"    def test_server_flavor(self):"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAATn%2F%2BJEU%3D","line":62,"updated":"2013-12-02 02:27:33.000000000","message":"Only asserTrue sometimes is difficult to debug. Pleas add a message for this function. “self.assertTrue(result? ‘your message\u0027)\"","commit_id":"28c2d58bdadb6b21f9b18a6adacd092702fb7329"}],"tempest/api/telemetry/base.py":[{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"c5b09dc9b878761500d907fbe945a24420b40ab8","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        if not os.config.service_available.ceilometer:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Ceilometer support is required\")"},{"line_number":36,"context_line":"        if not os.config.service_available.nova:"},{"line_number":37,"context_line":"            raise cls.skipException(\"Nova support is required\")"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"        cls.os \u003d os"},{"line_number":40,"context_line":"        cls.alarms_client \u003d os.alarms_client"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FNjQ%3D","line":37,"updated":"2014-01-16 10:38:22.000000000","message":"I propose to extend this \"if\" in test_compute.py SetUpClass","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        if not os.config.service_available.ceilometer:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Ceilometer support is required\")"},{"line_number":36,"context_line":"        if not os.config.service_available.nova:"},{"line_number":37,"context_line":"            raise cls.skipException(\"Nova support is required\")"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"        cls.os \u003d os"},{"line_number":40,"context_line":"        cls.alarms_client \u003d os.alarms_client"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F96Rw%3D","line":37,"in_reply_to":"AAAAUH%2F%2FNjQ%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"}],"tempest/api/telemetry/compute/test_compute.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"4b2bff7237a25eedd7753628cbf39164ae836a45","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BAmo%3D","line":1,"updated":"2014-01-31 00:56:27.000000000","message":"ditto as telemetry_client.py","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F96Ro%3D","line":1,"in_reply_to":"AAAAUH%2F%2BAmo%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"c6fadd889dbafc7b651d5a6c68ad47f1ae17405f","unresolved":false,"context_lines":[{"line_number":15,"context_line":"from tempest.openstack.common import log as logging"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from tempest.api.telemetry import base"},{"line_number":18,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":19,"context_line":"from tempest.test import attr"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F980U%3D","line":18,"updated":"2013-12-04 05:15:31.000000000","message":"Please import module\u0027s name: \nfrom tempest.common.utils import data_utils","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"e45b5565869960c8128b4bf4b8cb85658c07c89f","unresolved":false,"context_lines":[{"line_number":15,"context_line":"from tempest.openstack.common import log as logging"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from tempest.api.telemetry import base"},{"line_number":18,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":19,"context_line":"from tempest.test import attr"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FwhU%3D","line":18,"in_reply_to":"AAAATn%2F980U%3D","updated":"2014-01-16 09:37:21.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"c6fadd889dbafc7b651d5a6c68ad47f1ae17405f","unresolved":false,"context_lines":[{"line_number":22,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class ComputeTestJSON(base.BaseTelemetryTest):"},{"line_number":26,"context_line":"    _interface \u003d \u0027json\u0027"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    server \u003d None"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F98yw%3D","line":25,"updated":"2013-12-04 05:15:31.000000000","message":"It\u0027s better to give a name related with telemetry. e.g. \"MeterComputeTestJSON\"","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":22,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class ComputeTestJSON(base.BaseTelemetryTest):"},{"line_number":26,"context_line":"    _interface \u003d \u0027json\u0027"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    server \u003d None"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOoY%3D","line":25,"in_reply_to":"AAAATn%2F98yw%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"c6fadd889dbafc7b651d5a6c68ad47f1ae17405f","unresolved":false,"context_lines":[{"line_number":25,"context_line":"class ComputeTestJSON(base.BaseTelemetryTest):"},{"line_number":26,"context_line":"    _interface \u003d \u0027json\u0027"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    server \u003d None"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"    @classmethod"},{"line_number":31,"context_line":"    def setUpClass(cls):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F98yc%3D","line":28,"updated":"2013-12-04 05:15:31.000000000","message":"is this variable required?","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":25,"context_line":"class ComputeTestJSON(base.BaseTelemetryTest):"},{"line_number":26,"context_line":"    _interface \u003d \u0027json\u0027"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    server \u003d None"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"    @classmethod"},{"line_number":31,"context_line":"    def setUpClass(cls):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOoA%3D","line":28,"in_reply_to":"AAAATn%2F98yc%3D","updated":"2014-02-11 16:33:56.000000000","message":"I removed it, thanks!","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"c6fadd889dbafc7b651d5a6c68ad47f1ae17405f","unresolved":false,"context_lines":[{"line_number":30,"context_line":"    @classmethod"},{"line_number":31,"context_line":"    def setUpClass(cls):"},{"line_number":32,"context_line":"        super(ComputeTestJSON, cls).setUpClass()"},{"line_number":33,"context_line":"        server_name \u003d rand_name(\u0027server\u0027)"},{"line_number":34,"context_line":"        _, body \u003d cls.servers_client.create_server("},{"line_number":35,"context_line":"            server_name,"},{"line_number":36,"context_line":"            cls.image_ref,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F98zI%3D","line":33,"updated":"2013-12-04 05:15:31.000000000","message":"suggest giving a name related with telemetry test so as to help debug.","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":30,"context_line":"    @classmethod"},{"line_number":31,"context_line":"    def setUpClass(cls):"},{"line_number":32,"context_line":"        super(ComputeTestJSON, cls).setUpClass()"},{"line_number":33,"context_line":"        server_name \u003d rand_name(\u0027server\u0027)"},{"line_number":34,"context_line":"        _, body \u003d cls.servers_client.create_server("},{"line_number":35,"context_line":"            server_name,"},{"line_number":36,"context_line":"            cls.image_ref,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOn0%3D","line":33,"in_reply_to":"AAAATn%2F98zI%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"c6fadd889dbafc7b651d5a6c68ad47f1ae17405f","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    def setUpClass(cls):"},{"line_number":32,"context_line":"        super(ComputeTestJSON, cls).setUpClass()"},{"line_number":33,"context_line":"        server_name \u003d rand_name(\u0027server\u0027)"},{"line_number":34,"context_line":"        _, body \u003d cls.servers_client.create_server("},{"line_number":35,"context_line":"            server_name,"},{"line_number":36,"context_line":"            cls.image_ref,"},{"line_number":37,"context_line":"            cls.flavor_ref"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F98yg%3D","line":34,"updated":"2013-12-04 05:15:31.000000000","message":"could remove line 40:\n_, cls.server \u003d cls.servers_client.create_server(","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    def setUpClass(cls):"},{"line_number":32,"context_line":"        super(ComputeTestJSON, cls).setUpClass()"},{"line_number":33,"context_line":"        server_name \u003d rand_name(\u0027server\u0027)"},{"line_number":34,"context_line":"        _, body \u003d cls.servers_client.create_server("},{"line_number":35,"context_line":"            server_name,"},{"line_number":36,"context_line":"            cls.image_ref,"},{"line_number":37,"context_line":"            cls.flavor_ref"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOns%3D","line":34,"in_reply_to":"AAAATn%2F98yg%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"c5b09dc9b878761500d907fbe945a24420b40ab8","unresolved":false,"context_lines":[{"line_number":36,"context_line":"            cls.image_ref,"},{"line_number":37,"context_line":"            cls.flavor_ref"},{"line_number":38,"context_line":"        )"},{"line_number":39,"context_line":"        cls.servers_client.wait_for_server_status(body[\"id\"], \u0027ACTIVE\u0027)"},{"line_number":40,"context_line":"        cls.server \u003d body"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    @classmethod"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FNiU%3D","line":39,"updated":"2014-01-16 10:38:22.000000000","message":"Not necessarily wait until cluster status will be \"Active\". Notification of Rabbit come immediately after create cluster.","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":36,"context_line":"            cls.image_ref,"},{"line_number":37,"context_line":"            cls.flavor_ref"},{"line_number":38,"context_line":"        )"},{"line_number":39,"context_line":"        cls.servers_client.wait_for_server_status(body[\"id\"], \u0027ACTIVE\u0027)"},{"line_number":40,"context_line":"        cls.server \u003d body"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    @classmethod"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOl8%3D","line":39,"in_reply_to":"AAAAUH%2F%2FNiU%3D","updated":"2014-02-11 16:33:56.000000000","message":"I prefer to be sure that the server is active in order to avoid future issues.","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"c6fadd889dbafc7b651d5a6c68ad47f1ae17405f","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":48,"context_line":"    def test_resource_response(self):"},{"line_number":49,"context_line":"        \"\"\"Get details of the resource.\"\"\""},{"line_number":50,"context_line":"        resp, _ \u003d self.telemetry_client.get_resource_by_id(self.server[\"id\"])"},{"line_number":51,"context_line":"        self.assertEquals(200, resp.status)"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F98yQ%3D","line":49,"updated":"2013-12-04 05:15:31.000000000","message":"recommend to use \"#\" instead of \"\"\" for the comments in test function.","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":48,"context_line":"    def test_resource_response(self):"},{"line_number":49,"context_line":"        \"\"\"Get details of the resource.\"\"\""},{"line_number":50,"context_line":"        resp, _ \u003d self.telemetry_client.get_resource_by_id(self.server[\"id\"])"},{"line_number":51,"context_line":"        self.assertEquals(200, resp.status)"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOl0%3D","line":49,"in_reply_to":"AAAATn%2F98yQ%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"c5b09dc9b878761500d907fbe945a24420b40ab8","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    def test_resource_response(self):"},{"line_number":49,"context_line":"        \"\"\"Get details of the resource.\"\"\""},{"line_number":50,"context_line":"        resp, _ \u003d self.telemetry_client.get_resource_by_id(self.server[\"id\"])"},{"line_number":51,"context_line":"        self.assertEquals(200, resp.status)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":54,"context_line":"    def test_server_in_resource_list(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FNh0%3D","line":51,"updated":"2014-01-16 10:38:22.000000000","message":"Advisable to check that body is not empty.","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    def test_resource_response(self):"},{"line_number":49,"context_line":"        \"\"\"Get details of the resource.\"\"\""},{"line_number":50,"context_line":"        resp, _ \u003d self.telemetry_client.get_resource_by_id(self.server[\"id\"])"},{"line_number":51,"context_line":"        self.assertEquals(200, resp.status)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":54,"context_line":"    def test_server_in_resource_list(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOlw%3D","line":51,"in_reply_to":"AAAAUH%2F%2FNh0%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"c6fadd889dbafc7b651d5a6c68ad47f1ae17405f","unresolved":false,"context_lines":[{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":54,"context_line":"    def test_server_in_resource_list(self):"},{"line_number":55,"context_line":"        \"\"\"Verify that the server belongs to the resource list.\"\"\""},{"line_number":56,"context_line":"        _, body \u003d self.telemetry_client.get_all_resources()"},{"line_number":57,"context_line":"        all_resources \u003d [resource[\"resource_id\"] for resource in body]"},{"line_number":58,"context_line":"        self.assertTrue(self.server[\"id\"] in all_resources,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F98yM%3D","line":55,"updated":"2013-12-04 05:15:31.000000000","message":"ditto","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":54,"context_line":"    def test_server_in_resource_list(self):"},{"line_number":55,"context_line":"        \"\"\"Verify that the server belongs to the resource list.\"\"\""},{"line_number":56,"context_line":"        _, body \u003d self.telemetry_client.get_all_resources()"},{"line_number":57,"context_line":"        all_resources \u003d [resource[\"resource_id\"] for resource in body]"},{"line_number":58,"context_line":"        self.assertTrue(self.server[\"id\"] in all_resources,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOls%3D","line":55,"in_reply_to":"AAAATn%2F98yM%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"c6fadd889dbafc7b651d5a6c68ad47f1ae17405f","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":62,"context_line":"    def test_server_flavor(self):"},{"line_number":63,"context_line":"        \"\"\"Verify that the flavor has been recorded.\"\"\""},{"line_number":64,"context_line":"        _, body \u003d self.telemetry_client.get_samples("},{"line_number":65,"context_line":"            \"instance\","},{"line_number":66,"context_line":"            [{\"field\": \"resource_id\", \"op\": \"eq\", \"value\": self.server[\"id\"]}]"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F98yI%3D","line":63,"updated":"2013-12-04 05:15:31.000000000","message":"ditto","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":62,"context_line":"    def test_server_flavor(self):"},{"line_number":63,"context_line":"        \"\"\"Verify that the flavor has been recorded.\"\"\""},{"line_number":64,"context_line":"        _, body \u003d self.telemetry_client.get_samples("},{"line_number":65,"context_line":"            \"instance\","},{"line_number":66,"context_line":"            [{\"field\": \"resource_id\", \"op\": \"eq\", \"value\": self.server[\"id\"]}]"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOlk%3D","line":63,"in_reply_to":"AAAATn%2F98yI%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"c6fadd889dbafc7b651d5a6c68ad47f1ae17405f","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        )"},{"line_number":68,"context_line":"        resource_metadata \u003d body[0][\"resource_metadata\"]"},{"line_number":69,"context_line":"        self.assertEquals(self.flavor_ref,"},{"line_number":70,"context_line":"                          resource_metadata[\"instance_type_id\"])"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":73,"context_line":"    def test_server_image(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F98w0%3D","line":70,"updated":"2013-12-04 05:15:31.000000000","message":"here should be resource_metadata[\"instance_flavor_id\"], right?","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        )"},{"line_number":68,"context_line":"        resource_metadata \u003d body[0][\"resource_metadata\"]"},{"line_number":69,"context_line":"        self.assertEquals(self.flavor_ref,"},{"line_number":70,"context_line":"                          resource_metadata[\"instance_type_id\"])"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":73,"context_line":"    def test_server_image(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOlc%3D","line":70,"in_reply_to":"AAAATn%2F98w0%3D","updated":"2014-02-11 16:33:56.000000000","message":"Yes, thanks !","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"c6fadd889dbafc7b651d5a6c68ad47f1ae17405f","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":73,"context_line":"    def test_server_image(self):"},{"line_number":74,"context_line":"        \"\"\"Verify that the flavor has been recorded.\"\"\""},{"line_number":75,"context_line":"        _, body \u003d self.telemetry_client.get_samples("},{"line_number":76,"context_line":"            \"instance\","},{"line_number":77,"context_line":"            [{\"field\": \"resource_id\", \"op\": \"eq\", \"value\": self.server[\"id\"]}]"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F98yE%3D","line":74,"updated":"2013-12-04 05:15:31.000000000","message":"ditto","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":73,"context_line":"    def test_server_image(self):"},{"line_number":74,"context_line":"        \"\"\"Verify that the flavor has been recorded.\"\"\""},{"line_number":75,"context_line":"        _, body \u003d self.telemetry_client.get_samples("},{"line_number":76,"context_line":"            \"instance\","},{"line_number":77,"context_line":"            [{\"field\": \"resource_id\", \"op\": \"eq\", \"value\": self.server[\"id\"]}]"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BOlY%3D","line":74,"in_reply_to":"AAAATn%2F98yE%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"f372e144707691ec618d3caf8069672e323512eb","unresolved":false,"context_lines":[{"line_number":13,"context_line":"from tempest.api.telemetry import base"},{"line_number":14,"context_line":"from tempest.common.utils import data_utils"},{"line_number":15,"context_line":"from tempest.config import CONF"},{"line_number":16,"context_line":"from tempest.test import attr"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class MeterComputeTestJSON(base.BaseTelemetryTest):"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAUX%2F%2FF6E%3D","line":16,"updated":"2014-02-17 07:25:01.000000000","message":"it\u0027s better to import module\n\nfrom tempest.test import attr -\u003e \tfrom tempest import test","commit_id":"29f7a267f9e035ea3b21051f4cda00133c95162a"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"f372e144707691ec618d3caf8069672e323512eb","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":48,"context_line":"    def test_server_in_resource_list(self):"},{"line_number":49,"context_line":"        # Verify that the server belongs to the resource list"},{"line_number":50,"context_line":"        _, body \u003d self.telemetry_client.list_resources()"},{"line_number":51,"context_line":"        all_resources_ids \u003d [resource[\"resource_id\"] for resource in body]"},{"line_number":52,"context_line":"        self.assertTrue(self.server[\"id\"] in all_resources_ids,"},{"line_number":53,"context_line":"                        \"server %s is not in resources\" % self.server[\"id\"])"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAUX%2F%2FF6k%3D","line":50,"updated":"2014-02-17 07:25:01.000000000","message":"status code checking is required like other api tests.","commit_id":"29f7a267f9e035ea3b21051f4cda00133c95162a"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"f372e144707691ec618d3caf8069672e323512eb","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        _, instances \u003d self.telemetry_client.list_samples("},{"line_number":59,"context_line":"            \"instance\","},{"line_number":60,"context_line":"            (\"resource_id\", \"eq\", self.server[\"id\"])"},{"line_number":61,"context_line":"        )"},{"line_number":62,"context_line":"        instances_sorted \u003d sorted(instances, key\u003dlambda k: k[\u0027timestamp\u0027])"},{"line_number":63,"context_line":"        resource_metadata \u003d instances_sorted[-1][\"resource_metadata\"]"},{"line_number":64,"context_line":"        self.assertEqual(self.flavor_ref, resource_metadata[\"flavor.id\"])"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAUX%2F%2FF6c%3D","line":61,"updated":"2014-02-17 07:25:01.000000000","message":"ditto","commit_id":"29f7a267f9e035ea3b21051f4cda00133c95162a"}],"tempest/services/metering/json/metering_client.py":[{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"6aba7658fccf7d8f7e60002d6dba3f6cb35859e0","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        body \u003d jsonutils.loads(body)"},{"line_number":47,"context_line":"        return resp, body"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def get_meters_by_resource_id(self, meter_type, resource_id):"},{"line_number":50,"context_line":"        \"\"\"Returns the sample of a resource.\"\"\""},{"line_number":51,"context_line":"        url \u003d \u0027v2/meters/%s?q.field\u003dresource_id\u0026q.value\u003d%s\u0027 % (meter_type,"},{"line_number":52,"context_line":"                                                               resource_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAASn%2F%2F41o%3D","line":49,"updated":"2013-08-28 12:02:53.000000000","message":"There are quite a lot of filters available, and they can be combined. Maybe you could replace this function by :\n\ndef get_meters(self, meter, filters\u003d[]):\n    ...\n\nIt could loop over the \"filters\" variable and build the part of the string that comes after \u0027?\u0027.\n\nThe function could be called like this:\n\nfilters \u003d [ {\u0027field\u0027: \u0027foo\u0027, \u0027op\u0027: \u0027\u003d\u0027, \u0027value\u0027: 42}, ... ]\nget_meters(\"meter\", filters)\n\nWhat do you think ?","commit_id":"833650d3ff05aa27b2b33e62932c4b56c8230f08"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"73f0ded2e2bc178fd7bec55017e41a2700ff42c2","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        body \u003d jsonutils.loads(body)"},{"line_number":47,"context_line":"        return resp, body"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def get_meters_by_resource_id(self, meter_type, resource_id):"},{"line_number":50,"context_line":"        \"\"\"Returns the sample of a resource.\"\"\""},{"line_number":51,"context_line":"        url \u003d \u0027v2/meters/%s?q.field\u003dresource_id\u0026q.value\u003d%s\u0027 % (meter_type,"},{"line_number":52,"context_line":"                                                               resource_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAASn%2F%2F3sY%3D","line":49,"in_reply_to":"AAAASn%2F%2F41o%3D","updated":"2013-08-28 16:15:48.000000000","message":"Good idea.\nDone","commit_id":"833650d3ff05aa27b2b33e62932c4b56c8230f08"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"208d175f67d81aee0b10e83a412e6751fcb8f832","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2012 OpenStack, LLC"},{"line_number":4,"context_line":"# All Rights Reserved."},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2Bdrc%3D","line":3,"updated":"2013-11-25 19:50:15.000000000","message":"s/2012/2013/","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"7ce16d37c83fc1d75102c79a42c646f6f1ef6588","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2012 OpenStack, LLC"},{"line_number":4,"context_line":"# All Rights Reserved."},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2BABE%3D","line":3,"in_reply_to":"AAAATn%2F%2Bdrc%3D","updated":"2013-12-03 16:18:12.000000000","message":"Done","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"208d175f67d81aee0b10e83a412e6751fcb8f832","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        body \u003d jsonutils.loads(body)"},{"line_number":47,"context_line":"        return resp, body"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def get_meters(self, meter_type, filters\u003d[]):"},{"line_number":50,"context_line":"        \"\"\"Return sample of a metric."},{"line_number":51,"context_line":"        filters: list of filters, each filter belongs to a dictionary in the"},{"line_number":52,"context_line":"        form of {\u0027field\u0027:\u0027foo1\u0027, \u0027op\u0027:\u0027foo2\u0027, \u0027value\u0027:foo3}"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2BdrM%3D","line":49,"updated":"2013-11-25 19:50:15.000000000","message":"More logical naming as:\n\n  s/get_meters/get_samples/\n\nget_meters suggests: GET /v2/meters as opposed to GET /v2/meters/meter_name","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"7ce16d37c83fc1d75102c79a42c646f6f1ef6588","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        body \u003d jsonutils.loads(body)"},{"line_number":47,"context_line":"        return resp, body"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def get_meters(self, meter_type, filters\u003d[]):"},{"line_number":50,"context_line":"        \"\"\"Return sample of a metric."},{"line_number":51,"context_line":"        filters: list of filters, each filter belongs to a dictionary in the"},{"line_number":52,"context_line":"        form of {\u0027field\u0027:\u0027foo1\u0027, \u0027op\u0027:\u0027foo2\u0027, \u0027value\u0027:foo3}"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F%2BAA0%3D","line":49,"in_reply_to":"AAAATn%2F%2BdrM%3D","updated":"2013-12-03 16:18:12.000000000","message":"Done","commit_id":"5fe3a21c14a5c8abf06c8a1a7958c41b818df7ad"}],"tempest/services/telemetry/json/telemetry_client.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"4b2bff7237a25eedd7753628cbf39164ae836a45","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2013 OpenStack, LLC"},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2BAmw%3D","line":1,"updated":"2014-01-31 00:56:27.000000000","message":"Please remove this vim header.","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"},{"author":{"_account_id":7450,"name":"Yassine Lamgarchal","email":"yassine.lamgarchal@redhat.com","username":"yassine.lamgarchal"},"change_message_id":"1137873e6a9dc1aa6f34dfb376b74e04e8268055","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2013 OpenStack, LLC"},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F96Rs%3D","line":1,"in_reply_to":"AAAAUH%2F%2BAmw%3D","updated":"2014-02-11 16:33:56.000000000","message":"Done","commit_id":"01939d2a125646a9da13ed1dd9f82ff0f13bdb86"}]}
