)]}'
{"tempest/api/telemetry/base.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"16fd6023a8f01a19a42262ec155710abdc7a7f33","unresolved":false,"context_lines":[{"line_number":32,"context_line":"        cls.alarm_id \u003d None"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    @classmethod"},{"line_number":35,"context_line":"    def tearDownClass(cls):"},{"line_number":36,"context_line":"        super(BaseTelemetryTest, cls).tearDownClass()"},{"line_number":37,"context_line":"        if cls.alarm_id:"},{"line_number":38,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUX%2F%2F6FE%3D","line":35,"updated":"2014-02-10 02:27:32.000000000","message":"I think this method don\u0027t work correctly. The cls.alarm_id is not set in nowhere.\ntest_telemetry_alarming_api.py:line37 self.alarm_id \u003d body[\u0027alarm_id\u0027] is just setting it to the instance variable not class variable.\n\nAnd I\u0027ve checked tempest.log, I can\u0027t find the log of this code execution.\nhttp://logs.openstack.org/56/70956/1/check/check-tempest-dsvm-full/2ec9756/logs/tempest.txt.gz","commit_id":"05dde9c8d9f39017bb1806f0439e866024be77af"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"52a571334b861d68b24e7b10716d345b90c36e67","unresolved":false,"context_lines":[{"line_number":32,"context_line":"        cls.alarm_id \u003d None"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    @classmethod"},{"line_number":35,"context_line":"    def tearDownClass(cls):"},{"line_number":36,"context_line":"        super(BaseTelemetryTest, cls).tearDownClass()"},{"line_number":37,"context_line":"        if cls.alarm_id:"},{"line_number":38,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUX%2F%2F2cY%3D","line":35,"in_reply_to":"AAAAUX%2F%2F6FE%3D","updated":"2014-02-10 12:27:29.000000000","message":"Done.\nReally, this method don\u0027t work correctly.\nI implemented a new solution here.","commit_id":"05dde9c8d9f39017bb1806f0439e866024be77af"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"7d25c85656be81e20391b33c7c4a97aa72980bf5","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    @classmethod"},{"line_number":45,"context_line":"    def tearDownClass(cls):"},{"line_number":46,"context_line":"        super(BaseTelemetryTest, cls).tearDownClass()"},{"line_number":47,"context_line":"        cls.clear_isolated_creds()"},{"line_number":48,"context_line":"        for alarm_id in cls.alarm_ids:"},{"line_number":49,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUX%2F%2Fh9A%3D","line":46,"updated":"2014-02-12 15:20:14.000000000","message":"In tearDownClasses the super should be the last call.","commit_id":"313b877ea8a71269c96a5b47eb9323bcb6cdfa36"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"d7d1a0badeb95c52f964e684c553e24e51b87bd7","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    @classmethod"},{"line_number":45,"context_line":"    def tearDownClass(cls):"},{"line_number":46,"context_line":"        super(BaseTelemetryTest, cls).tearDownClass()"},{"line_number":47,"context_line":"        cls.clear_isolated_creds()"},{"line_number":48,"context_line":"        for alarm_id in cls.alarm_ids:"},{"line_number":49,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUX%2F%2Fhgw%3D","line":46,"in_reply_to":"AAAAUX%2F%2Fh9A%3D","updated":"2014-02-12 16:02:05.000000000","message":"Done","commit_id":"313b877ea8a71269c96a5b47eb9323bcb6cdfa36"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"7d25c85656be81e20391b33c7c4a97aa72980bf5","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        cls.clear_isolated_creds()"},{"line_number":48,"context_line":"        for alarm_id in cls.alarm_ids:"},{"line_number":49,"context_line":"            try:"},{"line_number":50,"context_line":"                cls.telemetry_client.delete_alarm(alarm_id)"},{"line_number":51,"context_line":"            except exceptions.NotFound:"},{"line_number":52,"context_line":"                pass"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUX%2F%2Fh9Q%3D","line":50,"updated":"2014-02-12 15:20:14.000000000","message":"It deletes the stuff after the credentials are invalidated, it may succeed in short period of time depending on the kesytone token type and settings.","commit_id":"313b877ea8a71269c96a5b47eb9323bcb6cdfa36"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"d7d1a0badeb95c52f964e684c553e24e51b87bd7","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        cls.clear_isolated_creds()"},{"line_number":48,"context_line":"        for alarm_id in cls.alarm_ids:"},{"line_number":49,"context_line":"            try:"},{"line_number":50,"context_line":"                cls.telemetry_client.delete_alarm(alarm_id)"},{"line_number":51,"context_line":"            except exceptions.NotFound:"},{"line_number":52,"context_line":"                pass"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUX%2F%2Fhgs%3D","line":50,"in_reply_to":"AAAAUX%2F%2Fh9Q%3D","updated":"2014-02-12 16:02:05.000000000","message":"Done","commit_id":"313b877ea8a71269c96a5b47eb9323bcb6cdfa36"}],"tempest/api/telemetry/test_telemetry_alarming_api.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"16fd6023a8f01a19a42262ec155710abdc7a7f33","unresolved":false,"context_lines":[{"line_number":20,"context_line":"    _interface \u003d \u0027json\u0027"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    @attr(type\u003d\"gate\")"},{"line_number":23,"context_line":"    def test_check_alarm_list(self):"},{"line_number":24,"context_line":"        resp, _ \u003d self.telemetry_client.list_alarms()"},{"line_number":25,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":26,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUX%2F%2F6M4%3D","line":23,"updated":"2014-02-10 02:27:32.000000000","message":"The method name of \u0027test_check\u0027 is a little odd name to me because this test case just test about list_alarms(). Could you rename this to just \u0027test_alarm_list\u0027?","commit_id":"05dde9c8d9f39017bb1806f0439e866024be77af"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"52a571334b861d68b24e7b10716d345b90c36e67","unresolved":false,"context_lines":[{"line_number":20,"context_line":"    _interface \u003d \u0027json\u0027"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    @attr(type\u003d\"gate\")"},{"line_number":23,"context_line":"    def test_check_alarm_list(self):"},{"line_number":24,"context_line":"        resp, _ \u003d self.telemetry_client.list_alarms()"},{"line_number":25,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":26,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUX%2F%2F2cM%3D","line":23,"in_reply_to":"AAAAUX%2F%2F6M4%3D","updated":"2014-02-10 12:27:29.000000000","message":"Done","commit_id":"05dde9c8d9f39017bb1806f0439e866024be77af"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"16fd6023a8f01a19a42262ec155710abdc7a7f33","unresolved":false,"context_lines":[{"line_number":25,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    @attr(type\u003d\"gate\")"},{"line_number":28,"context_line":"    def test_check_create_alarm(self):"},{"line_number":29,"context_line":"        resp, body \u003d self.telemetry_client.create_alarm("},{"line_number":30,"context_line":"            name\u003ddata_utils.rand_name(\u0027telemetry_alarm\u0027),"},{"line_number":31,"context_line":"            type\u003d\u0027threshold\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUX%2F%2F6Mw%3D","line":28,"updated":"2014-02-10 02:27:32.000000000","message":"ditto Line.23","commit_id":"05dde9c8d9f39017bb1806f0439e866024be77af"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"52a571334b861d68b24e7b10716d345b90c36e67","unresolved":false,"context_lines":[{"line_number":25,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    @attr(type\u003d\"gate\")"},{"line_number":28,"context_line":"    def test_check_create_alarm(self):"},{"line_number":29,"context_line":"        resp, body \u003d self.telemetry_client.create_alarm("},{"line_number":30,"context_line":"            name\u003ddata_utils.rand_name(\u0027telemetry_alarm\u0027),"},{"line_number":31,"context_line":"            type\u003d\u0027threshold\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUX%2F%2F2cI%3D","line":28,"in_reply_to":"AAAAUX%2F%2F6Mw%3D","updated":"2014-02-10 12:27:29.000000000","message":"Done","commit_id":"05dde9c8d9f39017bb1806f0439e866024be77af"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"16fd6023a8f01a19a42262ec155710abdc7a7f33","unresolved":false,"context_lines":[{"line_number":35,"context_line":"                            \u0027period\u0027: \u002770\u0027}"},{"line_number":36,"context_line":"        )"},{"line_number":37,"context_line":"        self.alarm_id \u003d body[\u0027alarm_id\u0027]"},{"line_number":38,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 201)"},{"line_number":39,"context_line":"        resp, _ \u003d self.telemetry_client.get_alarm(self.alarm_id)"},{"line_number":40,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":41,"context_line":"        resp, _ \u003d self.telemetry_client.delete_alarm(self.alarm_id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUX%2F%2F6K4%3D","line":38,"updated":"2014-02-10 02:27:32.000000000","message":"Could you check not only a response status but also response body values such as meter_name, comparison_operator, threshold and period at least?","commit_id":"05dde9c8d9f39017bb1806f0439e866024be77af"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"52a571334b861d68b24e7b10716d345b90c36e67","unresolved":false,"context_lines":[{"line_number":35,"context_line":"                            \u0027period\u0027: \u002770\u0027}"},{"line_number":36,"context_line":"        )"},{"line_number":37,"context_line":"        self.alarm_id \u003d body[\u0027alarm_id\u0027]"},{"line_number":38,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 201)"},{"line_number":39,"context_line":"        resp, _ \u003d self.telemetry_client.get_alarm(self.alarm_id)"},{"line_number":40,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":41,"context_line":"        resp, _ \u003d self.telemetry_client.delete_alarm(self.alarm_id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUX%2F%2F2cE%3D","line":38,"in_reply_to":"AAAAUX%2F%2F6K4%3D","updated":"2014-02-10 12:27:29.000000000","message":"Done","commit_id":"05dde9c8d9f39017bb1806f0439e866024be77af"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"16fd6023a8f01a19a42262ec155710abdc7a7f33","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        self.alarm_id \u003d body[\u0027alarm_id\u0027]"},{"line_number":38,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 201)"},{"line_number":39,"context_line":"        resp, _ \u003d self.telemetry_client.get_alarm(self.alarm_id)"},{"line_number":40,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":41,"context_line":"        resp, _ \u003d self.telemetry_client.delete_alarm(self.alarm_id)"},{"line_number":42,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 204)"},{"line_number":43,"context_line":"        self.assertRaises(exceptions.NotFound,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUX%2F%2F6Kc%3D","line":40,"updated":"2014-02-10 02:27:32.000000000","message":"ditto L.38\u0027s comment","commit_id":"05dde9c8d9f39017bb1806f0439e866024be77af"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"52a571334b861d68b24e7b10716d345b90c36e67","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        self.alarm_id \u003d body[\u0027alarm_id\u0027]"},{"line_number":38,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 201)"},{"line_number":39,"context_line":"        resp, _ \u003d self.telemetry_client.get_alarm(self.alarm_id)"},{"line_number":40,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":41,"context_line":"        resp, _ \u003d self.telemetry_client.delete_alarm(self.alarm_id)"},{"line_number":42,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 204)"},{"line_number":43,"context_line":"        self.assertRaises(exceptions.NotFound,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUX%2F%2F2cA%3D","line":40,"in_reply_to":"AAAAUX%2F%2F6Kc%3D","updated":"2014-02-10 12:27:29.000000000","message":"Done","commit_id":"05dde9c8d9f39017bb1806f0439e866024be77af"}]}
