)]}'
{"vitrage_tempest_tests/tests/api/base.py":[{"author":{"_account_id":19184,"name":"Idan Hefetz","email":"idan.hefetz@nokia.com","username":"idan-hefetz"},"change_message_id":"9ad32632afd49a6e6290b66c1236260ea1e4404e","unresolved":false,"context_lines":[{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        return volume"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"    def _get_host(self):"},{"line_number":78,"context_line":"        topology \u003d self.vitrage_client.topology.get()"},{"line_number":79,"context_line":"        for item in topology[\u0027nodes\u0027]:"},{"line_number":80,"context_line":"            if item[VProps.TYPE] \u003d\u003d NOVA_HOST_DATASOURCE:"},{"line_number":81,"context_line":"                return item"},{"line_number":82,"context_line":"        return None"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    def _create_instances(self, num_instances):"},{"line_number":85,"context_line":"        flavors_list \u003d self.nova_client.flavors.list()"}],"source_content_type":"text/x-python","patch_set":2,"id":"bab6814e_ea842fb2","line":82,"range":{"start_line":77,"start_character":0,"end_line":82,"end_character":19},"updated":"2016-05-25 11:48:39.000000000","message":"can use the filter from alarms base here instead","commit_id":"61172111ed5509cb10073371768ad0803e9f9104"}],"vitrage_tempest_tests/tests/api/rca/test_rca.py":[{"author":{"_account_id":19184,"name":"Idan Hefetz","email":"idan.hefetz@nokia.com","username":"idan-hefetz"},"change_message_id":"9ad32632afd49a6e6290b66c1236260ea1e4404e","unresolved":false,"context_lines":[{"line_number":51,"context_line":"            self._delete_ceilometer_alarms()"},{"line_number":52,"context_line":"            self._delete_instances()"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def test_validate_rca(self):"},{"line_number":55,"context_line":"        try:"},{"line_number":56,"context_line":"            vitrage_id \u003d self._get_alarm_id(resource_type\u003dNOVA_HOST_DATASOURCE,"},{"line_number":57,"context_line":"                                            alarm_name\u003dRCA_ALARM_NAME,"}],"source_content_type":"text/x-python","patch_set":2,"id":"bab6814e_adb7e1f3","line":54,"updated":"2016-05-25 11:48:39.000000000","message":"Add a test description","commit_id":"61172111ed5509cb10073371768ad0803e9f9104"},{"author":{"_account_id":19184,"name":"Idan Hefetz","email":"idan.hefetz@nokia.com","username":"idan-hefetz"},"change_message_id":"9ad32632afd49a6e6290b66c1236260ea1e4404e","unresolved":false,"context_lines":[{"line_number":56,"context_line":"            vitrage_id \u003d self._get_alarm_id(resource_type\u003dNOVA_HOST_DATASOURCE,"},{"line_number":57,"context_line":"                                            alarm_name\u003dRCA_ALARM_NAME,"},{"line_number":58,"context_line":"                                            unic\u003dFalse)"},{"line_number":59,"context_line":"            resources \u003d self._create_instances(2)"},{"line_number":60,"context_line":"            api_rca \u003d self.vitrage_client.rca.get(alarm_id\u003dvitrage_id)"},{"line_number":61,"context_line":"            api_alarms \u003d self.vitrage_client.alarms.list(vitrage_id\u003dNone)"},{"line_number":62,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"bab6814e_6dd33960","line":59,"updated":"2016-05-25 11:48:39.000000000","message":"in the future we may want to run this on more then one host","commit_id":"61172111ed5509cb10073371768ad0803e9f9104"},{"author":{"_account_id":19184,"name":"Idan Hefetz","email":"idan.hefetz@nokia.com","username":"idan-hefetz"},"change_message_id":"9ad32632afd49a6e6290b66c1236260ea1e4404e","unresolved":false,"context_lines":[{"line_number":51,"context_line":"            self._delete_ceilometer_alarms()"},{"line_number":52,"context_line":"            self._delete_instances()"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def test_validate_rca(self):"},{"line_number":55,"context_line":"        try:"},{"line_number":56,"context_line":"            vitrage_id \u003d self._get_alarm_id(resource_type\u003dNOVA_HOST_DATASOURCE,"},{"line_number":57,"context_line":"                                            alarm_name\u003dRCA_ALARM_NAME,"},{"line_number":58,"context_line":"                                            unic\u003dFalse)"},{"line_number":59,"context_line":"            resources \u003d self._create_instances(2)"},{"line_number":60,"context_line":"            api_rca \u003d self.vitrage_client.rca.get(alarm_id\u003dvitrage_id)"},{"line_number":61,"context_line":"            api_alarms \u003d self.vitrage_client.alarms.list(vitrage_id\u003dNone)"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"            self.assertTrue(self._validate_rca(rca\u003dapi_rca[\u0027nodes\u0027]))"},{"line_number":64,"context_line":"            self.assertTrue(self._validate_deduce_alarms(alarms\u003dapi_alarms,"},{"line_number":65,"context_line":"                                                         resources\u003dresources))"},{"line_number":66,"context_line":"        finally:"},{"line_number":67,"context_line":"            self._delete_ceilometer_alarms()"},{"line_number":68,"context_line":"            self._delete_instances()"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def _get_alarm_id(self, resource_type, alarm_name, unic):"},{"line_number":71,"context_line":"        if resource_type is NOVA_INSTANCE_DATASOURCE:"},{"line_number":72,"context_line":"            resource \u003d self._create_instances(num_instances\u003d1)"},{"line_number":73,"context_line":"            resource_id \u003d utils.uni2str(resource[0].id)"},{"line_number":74,"context_line":"        else:"},{"line_number":75,"context_line":"            resource \u003d self._get_host()"},{"line_number":76,"context_line":"            resource_id \u003d utils.uni2str(resource[VertexProperties.ID])"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        self._create_ceilometer_alarm(resource_id\u003dresource_id,"},{"line_number":79,"context_line":"                                      name\u003dalarm_name, unic\u003dunic)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        list_alarms \u003d self.vitrage_client.alarms.list(vitrage_id\u003dNone)"},{"line_number":82,"context_line":"        expected_alarm \u003d self._filter_alarms_by_parameter("},{"line_number":83,"context_line":"            list_alarms, [\u0027resource_id\u0027, \u0027type\u0027],"},{"line_number":84,"context_line":"            [resource_id, AODH_DATASOURCE])"},{"line_number":85,"context_line":"        return utils.uni2str("},{"line_number":86,"context_line":"            expected_alarm[0][VertexProperties.VITRAGE_ID])"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    def _compare_rca(self, api_rca, cli_rca):"},{"line_number":89,"context_line":"        \"\"\"Validate alarm existence \"\"\""}],"source_content_type":"text/x-python","patch_set":2,"id":"bab6814e_6d9e99b9","line":86,"range":{"start_line":54,"start_character":1,"end_line":86,"end_character":59},"updated":"2016-05-25 11:48:39.000000000","message":"This test should be split into two different ones, so it is more clear","commit_id":"61172111ed5509cb10073371768ad0803e9f9104"},{"author":{"_account_id":19184,"name":"Idan Hefetz","email":"idan.hefetz@nokia.com","username":"idan-hefetz"},"change_message_id":"9ad32632afd49a6e6290b66c1236260ea1e4404e","unresolved":false,"context_lines":[{"line_number":121,"context_line":"            [VITRAGE_DATASOURCE, VITRAGE_ALARM_NAME])"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"        return (len(resource_alarm) \u003d\u003d 1 and"},{"line_number":124,"context_line":"                len(deduce_alarms) \u003d\u003d 2)"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"    def _validate_deduce_alarms(self, alarms, resources):"},{"line_number":127,"context_line":"        \"\"\"Validate alarm existence \"\"\""}],"source_content_type":"text/x-python","patch_set":2,"id":"bab6814e_ed6d699a","line":124,"updated":"2016-05-25 11:48:39.000000000","message":"Also need to verify that there is a \u0027causes\u0027 relationship between the two alarms.","commit_id":"61172111ed5509cb10073371768ad0803e9f9104"},{"author":{"_account_id":19184,"name":"Idan Hefetz","email":"idan.hefetz@nokia.com","username":"idan-hefetz"},"change_message_id":"9ad32632afd49a6e6290b66c1236260ea1e4404e","unresolved":false,"context_lines":[{"line_number":148,"context_line":""},{"line_number":149,"context_line":"        return (len(deduce_alarms_1) \u003d\u003d 1 and"},{"line_number":150,"context_line":"                len(deduce_alarms_2) \u003d\u003d 1)"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"    @staticmethod"},{"line_number":153,"context_line":"    def _clean_timestamps(alist):"},{"line_number":154,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"bab6814e_cde7c5e2","line":151,"updated":"2016-05-25 11:48:39.000000000","message":"Please add a test for set_state, validate_set_state","commit_id":"61172111ed5509cb10073371768ad0803e9f9104"}]}
