)]}'
{"vitrage/tests/mocks/mock_transformer.py":[{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":150,"context_line":""},{"line_number":151,"context_line":"    test_entity_spec_list \u003d ["},{"line_number":152,"context_line":"        {tg.DYNAMIC_INFO_FKEY: tg.TRANS_AODH_SNAPSHOT_D,"},{"line_number":153,"context_line":"         tg.DYNAMIC_INFO_FPATH: tg.MOCK_TRANSFORMER_PATH,"},{"line_number":154,"context_line":"         tg.STATIC_INFO_FKEY: None,"},{"line_number":155,"context_line":"         tg.MAPPING_KEY: mapping,"},{"line_number":156,"context_line":"         tg.EXTERNAL_INFO_KEY: snap_vals,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_15423568","line":153,"range":{"start_line":153,"start_character":9,"end_line":153,"end_character":56},"updated":"2016-12-06 07:11:04.000000000","message":"Why did you give here the TRANS_AODH_SNAPSHOT_S value?","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"caa60daa06c0b6b2b29cfb08a04040923dd72aa6","unresolved":false,"context_lines":[{"line_number":150,"context_line":""},{"line_number":151,"context_line":"    test_entity_spec_list \u003d ["},{"line_number":152,"context_line":"        {tg.DYNAMIC_INFO_FKEY: tg.TRANS_AODH_SNAPSHOT_D,"},{"line_number":153,"context_line":"         tg.DYNAMIC_INFO_FPATH: tg.MOCK_TRANSFORMER_PATH,"},{"line_number":154,"context_line":"         tg.STATIC_INFO_FKEY: None,"},{"line_number":155,"context_line":"         tg.MAPPING_KEY: mapping,"},{"line_number":156,"context_line":"         tg.EXTERNAL_INFO_KEY: snap_vals,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_ebd95c58","line":153,"range":{"start_line":153,"start_character":9,"end_line":153,"end_character":56},"in_reply_to":"3a71b18c_15423568","updated":"2016-12-06 08:04:24.000000000","message":"Give the filepath. If we don\u0027t give the filepath,it default to \u0027mock_configurations/driver\u0027.\nSee https://github.com/openstack/vitrage/blob/master/vitrage/tests/mocks/utils.py#L59","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":21414,"name":"Yujun Zhang","email":"zhang.yujunz@zte.com.cn","username":"yujunz"},"change_message_id":"072ccee743ab51bbb8983fb520ae437a8ad23534","unresolved":false,"context_lines":[{"line_number":139,"context_line":""},{"line_number":140,"context_line":"    :param alarm_num: number of alarms"},{"line_number":141,"context_line":"    :param snapshot_events: number of snapshot events"},{"line_number":142,"context_line":"    :param snap_vals: number of update events"},{"line_number":143,"context_line":"    :return: generators for alarm_num alarms as specified"},{"line_number":144,"context_line":"    \"\"\""},{"line_number":145,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_326740b8","line":142,"range":{"start_line":142,"start_character":22,"end_line":142,"end_character":45},"updated":"2016-12-06 09:07:34.000000000","message":"Unable to understand `snap_vals` with this description. I thought it is short for \"snapshot values\".","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"604c72e133cc9bd6b11898f0b701202f34950a47","unresolved":false,"context_lines":[{"line_number":139,"context_line":""},{"line_number":140,"context_line":"    :param alarm_num: number of alarms"},{"line_number":141,"context_line":"    :param snapshot_events: number of snapshot events"},{"line_number":142,"context_line":"    :param snap_vals: number of update events"},{"line_number":143,"context_line":"    :return: generators for alarm_num alarms as specified"},{"line_number":144,"context_line":"    \"\"\""},{"line_number":145,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_328e60d0","line":142,"range":{"start_line":142,"start_character":22,"end_line":142,"end_character":45},"in_reply_to":"3a71b18c_326740b8","updated":"2016-12-06 09:30:10.000000000","message":"Done","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"}],"vitrage/tests/mocks/trace_generator.py":[{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"# specification files for input types"},{"line_number":44,"context_line":"# Mock driver specs"},{"line_number":45,"context_line":"MOCK_DRIVER_PATH \u003d \u0027%s/mock_configurations/driver\u0027 % \\"},{"line_number":46,"context_line":"    utils.get_resources_dir()"},{"line_number":47,"context_line":"DRIVER_HOST_SNAPSHOT_D \u003d \u0027driver_host_snapshot_dynamic.json\u0027"},{"line_number":48,"context_line":"DRIVER_INST_SNAPSHOT_D \u003d \u0027driver_inst_snapshot_dynamic.json\u0027"},{"line_number":49,"context_line":"DRIVER_INST_SNAPSHOT_S \u003d \u0027driver_inst_snapshot_static.json\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_55790dc7","line":46,"range":{"start_line":45,"start_character":0,"end_line":46,"end_character":29},"updated":"2016-12-06 07:11:04.000000000","message":"What is this for?","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"caa60daa06c0b6b2b29cfb08a04040923dd72aa6","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"# specification files for input types"},{"line_number":44,"context_line":"# Mock driver specs"},{"line_number":45,"context_line":"MOCK_DRIVER_PATH \u003d \u0027%s/mock_configurations/driver\u0027 % \\"},{"line_number":46,"context_line":"    utils.get_resources_dir()"},{"line_number":47,"context_line":"DRIVER_HOST_SNAPSHOT_D \u003d \u0027driver_host_snapshot_dynamic.json\u0027"},{"line_number":48,"context_line":"DRIVER_INST_SNAPSHOT_D \u003d \u0027driver_inst_snapshot_dynamic.json\u0027"},{"line_number":49,"context_line":"DRIVER_INST_SNAPSHOT_S \u003d \u0027driver_inst_snapshot_static.json\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_2b9c345c","line":46,"range":{"start_line":45,"start_character":0,"end_line":46,"end_character":29},"in_reply_to":"3a71b18c_55790dc7","updated":"2016-12-06 08:04:24.000000000","message":"For giving the filepath in the spec","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":61,"context_line":""},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"# Mock transformer Specs (i.e., what the transformer outputs)"},{"line_number":64,"context_line":"MOCK_TRANSFORMER_PATH \u003d \u0027%s/mock_configurations/transformer\u0027 % \\"},{"line_number":65,"context_line":"    utils.get_resources_dir()"},{"line_number":66,"context_line":"TRANS_AODH_SNAPSHOT_D \u003d \u0027transformer_aodh_snapshot_dynamic.json\u0027"},{"line_number":67,"context_line":"TRANS_INST_SNAPSHOT_D \u003d \u0027transformer_inst_snapshot_dynamic.json\u0027"},{"line_number":68,"context_line":"TRANS_INST_SNAPSHOT_S \u003d \u0027transformer_inst_snapshot_static.json\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_757609d8","line":65,"range":{"start_line":64,"start_character":0,"end_line":65,"end_character":29},"updated":"2016-12-06 07:11:04.000000000","message":"What is this for?","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"caa60daa06c0b6b2b29cfb08a04040923dd72aa6","unresolved":false,"context_lines":[{"line_number":61,"context_line":""},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"# Mock transformer Specs (i.e., what the transformer outputs)"},{"line_number":64,"context_line":"MOCK_TRANSFORMER_PATH \u003d \u0027%s/mock_configurations/transformer\u0027 % \\"},{"line_number":65,"context_line":"    utils.get_resources_dir()"},{"line_number":66,"context_line":"TRANS_AODH_SNAPSHOT_D \u003d \u0027transformer_aodh_snapshot_dynamic.json\u0027"},{"line_number":67,"context_line":"TRANS_INST_SNAPSHOT_D \u003d \u0027transformer_inst_snapshot_dynamic.json\u0027"},{"line_number":68,"context_line":"TRANS_INST_SNAPSHOT_S \u003d \u0027transformer_inst_snapshot_static.json\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_cbb740d6","line":65,"range":{"start_line":64,"start_character":0,"end_line":65,"end_character":29},"in_reply_to":"3a71b18c_757609d8","updated":"2016-12-06 08:04:24.000000000","message":"the same as above","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":598,"context_line":"        mapping \u003d {\u0027alarm_id\u0027: alarm_id,"},{"line_number":599,"context_line":"                   \u0027resource_id\u0027: resource_id,"},{"line_number":600,"context_line":"                   \u0027graph_query_result\u0027: [{\u0027id\u0027: resource_id,"},{"line_number":601,"context_line":"                                          \u0027vertex_id\u0027: resource_vertex_id}]}"},{"line_number":602,"context_line":"        static_values.append(combine_data("},{"line_number":603,"context_line":"            static_info_re, mapping, spec.get(EXTERNAL_INFO_KEY, None)"},{"line_number":604,"context_line":"        ))"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_15107558","line":601,"range":{"start_line":601,"start_character":42,"end_line":601,"end_character":73},"updated":"2016-12-06 07:11:04.000000000","message":"The vertex_id is not part of the properties of the vertex, it is another variable along side the properties of the vertex.\nFor example, when you have a vertex \"ver\", then you can refer to the vertex_id by ver.vertex_id and to each one of the properties by ver[\"property\"].\nI think the current mock mechanism doesn\u0027t support that, but I will check it.","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"caa60daa06c0b6b2b29cfb08a04040923dd72aa6","unresolved":false,"context_lines":[{"line_number":598,"context_line":"        mapping \u003d {\u0027alarm_id\u0027: alarm_id,"},{"line_number":599,"context_line":"                   \u0027resource_id\u0027: resource_id,"},{"line_number":600,"context_line":"                   \u0027graph_query_result\u0027: [{\u0027id\u0027: resource_id,"},{"line_number":601,"context_line":"                                          \u0027vertex_id\u0027: resource_vertex_id}]}"},{"line_number":602,"context_line":"        static_values.append(combine_data("},{"line_number":603,"context_line":"            static_info_re, mapping, spec.get(EXTERNAL_INFO_KEY, None)"},{"line_number":604,"context_line":"        ))"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_869d3d68","line":601,"range":{"start_line":601,"start_character":42,"end_line":601,"end_character":73},"in_reply_to":"3a71b18c_15107558","updated":"2016-12-06 08:04:24.000000000","message":"I\u0027ll delete it.","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":21414,"name":"Yujun Zhang","email":"zhang.yujunz@zte.com.cn","username":"yujunz"},"change_message_id":"072ccee743ab51bbb8983fb520ae437a8ad23534","unresolved":false,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":"        target_folder \u003d spec[DYNAMIC_INFO_FPATH] \\"},{"line_number":128,"context_line":"            if spec.get(DYNAMIC_INFO_FPATH) else None"},{"line_number":129,"context_line":"        dynam_specs \u003d utils.load_specs(spec[DYNAMIC_INFO_FKEY],"},{"line_number":130,"context_line":"                                       target_folder\u003dtarget_folder)"},{"line_number":131,"context_line":"        dynamic_spec_filename \u003d spec[DYNAMIC_INFO_FKEY].split(\u0027/\u0027)[-1]"},{"line_number":132,"context_line":"        static_specs \u003d static_info_parsers[dynamic_spec_filename](spec)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_522e7cfb","line":129,"range":{"start_line":129,"start_character":8,"end_line":129,"end_character":19},"updated":"2016-12-06 09:07:34.000000000","message":"`dynam` is not a common abbreviation. It could be `dyn` or use full spelling since this name is shorter than `dynamic_spec_filename` in L131","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"},{"author":{"_account_id":21414,"name":"Yujun Zhang","email":"zhang.yujunz@zte.com.cn","username":"yujunz"},"change_message_id":"072ccee743ab51bbb8983fb520ae437a8ad23534","unresolved":false,"context_lines":[{"line_number":589,"context_line":"    \"\"\""},{"line_number":590,"context_line":""},{"line_number":591,"context_line":"    alarm_resources_mapping \u003d spec[MAPPING_KEY]"},{"line_number":592,"context_line":"    static_info_re \u003d None"},{"line_number":593,"context_line":"    if spec[STATIC_INFO_FKEY] is not None:"},{"line_number":594,"context_line":"        static_info_re \u003d utils.load_specs(spec[STATIC_INFO_FKEY])"},{"line_number":595,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_f23dc82b","line":592,"range":{"start_line":592,"start_character":4,"end_line":592,"end_character":18},"updated":"2016-12-06 09:07:34.000000000","message":"What is `re` short for? It seems not a regular expression here.","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"95ee4c6711a65aa1e4116785c0c8eb8bc214f7eb","unresolved":false,"context_lines":[{"line_number":589,"context_line":"    \"\"\""},{"line_number":590,"context_line":""},{"line_number":591,"context_line":"    alarm_resources_mapping \u003d spec[MAPPING_KEY]"},{"line_number":592,"context_line":"    static_info_re \u003d None"},{"line_number":593,"context_line":"    if spec[STATIC_INFO_FKEY] is not None:"},{"line_number":594,"context_line":"        static_info_re \u003d utils.load_specs(spec[STATIC_INFO_FKEY])"},{"line_number":595,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_95f2be04","line":592,"range":{"start_line":592,"start_character":4,"end_line":592,"end_character":18},"in_reply_to":"3a71b18c_f23dc82b","updated":"2016-12-06 09:18:18.000000000","message":"This is the standart that the other mocks were written, because in the yaml file you can define regular expressions for the different values","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"}],"vitrage/tests/resources/mock_configurations/transformer/transformer_aodh_snapshot_dynamic.json":[{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":28,"context_line":"      \"aggregated_state\": \"ACTIVE\",\r"},{"line_number":29,"context_line":"      \"state\": \"ACTIVE\",\r"},{"line_number":30,"context_line":"      \"graph_index\": 3,\r"},{"line_number":31,"context_line":"      \"vitrage_id\": \"RESOURCE:nova.instance:3dcee183-ca42-4ccb-84af-9f0196b2e160\",\r"},{"line_number":32,"context_line":"      \"project_id\": \"f0895991f44044ccba8e62b201b70360\",\r"},{"line_number":33,"context_line":"      \"type\": \"nova.instance\",\r"},{"line_number":34,"context_line":"      \"id\": \"3dcee183-ca42-4ccb-84af-9f0196b2e160\"\r"}],"source_content_type":"application/json","patch_set":2,"id":"3a71b18c_750b692a","line":31,"range":{"start_line":31,"start_character":6,"end_line":31,"end_character":82},"updated":"2016-12-06 07:11:04.000000000","message":"remove this field from here, because there is no need of it here","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"caa60daa06c0b6b2b29cfb08a04040923dd72aa6","unresolved":false,"context_lines":[{"line_number":28,"context_line":"      \"aggregated_state\": \"ACTIVE\",\r"},{"line_number":29,"context_line":"      \"state\": \"ACTIVE\",\r"},{"line_number":30,"context_line":"      \"graph_index\": 3,\r"},{"line_number":31,"context_line":"      \"vitrage_id\": \"RESOURCE:nova.instance:3dcee183-ca42-4ccb-84af-9f0196b2e160\",\r"},{"line_number":32,"context_line":"      \"project_id\": \"f0895991f44044ccba8e62b201b70360\",\r"},{"line_number":33,"context_line":"      \"type\": \"nova.instance\",\r"},{"line_number":34,"context_line":"      \"id\": \"3dcee183-ca42-4ccb-84af-9f0196b2e160\"\r"}],"source_content_type":"application/json","patch_set":2,"id":"3a71b18c_26b709f6","line":31,"range":{"start_line":31,"start_character":6,"end_line":31,"end_character":82},"in_reply_to":"3a71b18c_750b692a","updated":"2016-12-06 08:04:24.000000000","message":"Done","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"}],"vitrage/tests/unit/datasources/aodh/test_aodh_transformer.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"028c88c343dc62123bb36e0933f558b899c0f2d7","unresolved":false,"context_lines":[{"line_number":40,"context_line":"\r"},{"line_number":41,"context_line":"    OPTS \u003d [\r"},{"line_number":42,"context_line":"        cfg.StrOpt(\u0027update_method\u0027,\r"},{"line_number":43,"context_line":"                   default\u003dUpdateMethod.PUSH),\r"},{"line_number":44,"context_line":"    ]\r"},{"line_number":45,"context_line":"\r"},{"line_number":46,"context_line":"    @classmethod\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_a16dbccd","line":43,"range":{"start_line":43,"start_character":19,"end_line":43,"end_character":44},"updated":"2016-12-06 10:39:16.000000000","message":"Why is this the update method? it should be pull, right?","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"155a15feb7cfa5e89a57948348aea26e12aef623","unresolved":false,"context_lines":[{"line_number":40,"context_line":"\r"},{"line_number":41,"context_line":"    OPTS \u003d [\r"},{"line_number":42,"context_line":"        cfg.StrOpt(\u0027update_method\u0027,\r"},{"line_number":43,"context_line":"                   default\u003dUpdateMethod.PUSH),\r"},{"line_number":44,"context_line":"    ]\r"},{"line_number":45,"context_line":"\r"},{"line_number":46,"context_line":"    @classmethod\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_ccf58ced","line":43,"range":{"start_line":43,"start_character":19,"end_line":43,"end_character":44},"in_reply_to":"3a71b18c_a16dbccd","updated":"2016-12-06 12:08:50.000000000","message":"its ok ifat, this is how it is done in the other tests as well","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2c855d9a17cc6b1c5991ca35854501ec045c8ecd","unresolved":false,"context_lines":[{"line_number":40,"context_line":"\r"},{"line_number":41,"context_line":"    OPTS \u003d [\r"},{"line_number":42,"context_line":"        cfg.StrOpt(\u0027update_method\u0027,\r"},{"line_number":43,"context_line":"                   default\u003dUpdateMethod.PUSH),\r"},{"line_number":44,"context_line":"    ]\r"},{"line_number":45,"context_line":"\r"},{"line_number":46,"context_line":"    @classmethod\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_e246cf79","line":43,"range":{"start_line":43,"start_character":19,"end_line":43,"end_character":44},"in_reply_to":"3a71b18c_ccf58ced","updated":"2016-12-06 13:15:26.000000000","message":"So maybe there is a mistake in the other tests as well ;-) because as far as I understand, the tests don\u0027t work with push. Maybe this parameter is not needed at all?\nAnyway, I see that this change is already merged, so no need to fix it now. Maybe next time...","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        LOG.debug(\u0027Aodh transformer test: get key values(vitrage_alarm)\u0027)\r"},{"line_number":56,"context_line":"\r"},{"line_number":57,"context_line":"        # Test setup\r"},{"line_number":58,"context_line":"        entity \u003d {}\r"},{"line_number":59,"context_line":"        entity[AodhProps.VITRAGE_ID] \u003d \u0027test\u0027\r"},{"line_number":60,"context_line":"        entity[DSProps.ENTITY_TYPE] \u003d AODH_DATASOURCE\r"},{"line_number":61,"context_line":"        entity[AodhProps.ALARM_ID] \u003d \u002712345\u0027\r"},{"line_number":62,"context_line":"        transformer \u003d self.transformers[AODH_DATASOURCE]\r"},{"line_number":63,"context_line":"\r"},{"line_number":64,"context_line":"        # Test action\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_b067cfb5","line":61,"range":{"start_line":58,"start_character":8,"end_line":61,"end_character":44},"updated":"2016-12-06 07:11:04.000000000","message":"please write it in the following way:\nentity \u003d {AodhProps.VITRAGE_ID: \u0027test\u0027,\n          DSProps.ENTITY_TYPE: AODH_DATASOURCE,\n          AodhProps.ALARM_ID: \u002712345\u0027}","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        cls.transformers[AODH_DATASOURCE] \u003d \\\r"},{"line_number":52,"context_line":"            AodhTransformer(cls.transformers, cls.conf)\r"},{"line_number":53,"context_line":"\r"},{"line_number":54,"context_line":"    def test_key_values_with_vitrage_alarm(self):\r"},{"line_number":55,"context_line":"        LOG.debug(\u0027Aodh transformer test: get key values(vitrage_alarm)\u0027)\r"},{"line_number":56,"context_line":"\r"},{"line_number":57,"context_line":"        # Test setup\r"},{"line_number":58,"context_line":"        entity \u003d {}\r"},{"line_number":59,"context_line":"        entity[AodhProps.VITRAGE_ID] \u003d \u0027test\u0027\r"},{"line_number":60,"context_line":"        entity[DSProps.ENTITY_TYPE] \u003d AODH_DATASOURCE\r"},{"line_number":61,"context_line":"        entity[AodhProps.ALARM_ID] \u003d \u002712345\u0027\r"},{"line_number":62,"context_line":"        transformer \u003d self.transformers[AODH_DATASOURCE]\r"},{"line_number":63,"context_line":"\r"},{"line_number":64,"context_line":"        # Test action\r"},{"line_number":65,"context_line":"        observed_key_fields \u003d transformer._create_entity_key(entity)\r"},{"line_number":66,"context_line":"\r"},{"line_number":67,"context_line":"        # Test assertions\r"},{"line_number":68,"context_line":"        self.assertEqual(\u0027test\u0027, observed_key_fields)\r"},{"line_number":69,"context_line":"\r"},{"line_number":70,"context_line":"    def test_key_values(self):\r"},{"line_number":71,"context_line":"        LOG.debug(\u0027Aodh transformer test: get key values(aodh alarm)\u0027)\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_10a96390","line":68,"range":{"start_line":54,"start_character":4,"end_line":68,"end_character":53},"updated":"2016-12-06 07:11:04.000000000","message":"I don\u0027t quite see a reason for this test when you have the test below \"test_key_values\"","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        LOG.debug(\u0027Aodh transformer test: get key values(aodh alarm)\u0027)\r"},{"line_number":72,"context_line":"\r"},{"line_number":73,"context_line":"        # Test setup\r"},{"line_number":74,"context_line":"        entity \u003d {}\r"},{"line_number":75,"context_line":"        entity[DSProps.ENTITY_TYPE] \u003d AODH_DATASOURCE\r"},{"line_number":76,"context_line":"        entity[AodhProps.ALARM_ID] \u003d \u002712345\u0027\r"},{"line_number":77,"context_line":"        transformer \u003d self.transformers[AODH_DATASOURCE]\r"},{"line_number":78,"context_line":"\r"},{"line_number":79,"context_line":"        # Test action\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_30449f19","line":76,"range":{"start_line":74,"start_character":8,"end_line":76,"end_character":44},"updated":"2016-12-06 07:11:04.000000000","message":"please write it in the following way:\nentity \u003d {DSProps.ENTITY_TYPE: AODH_DATASOURCE,\n          AodhProps.ALARM_ID: \u002712345\u0027}","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"caa60daa06c0b6b2b29cfb08a04040923dd72aa6","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        LOG.debug(\u0027Aodh transformer test: get key values(aodh alarm)\u0027)\r"},{"line_number":72,"context_line":"\r"},{"line_number":73,"context_line":"        # Test setup\r"},{"line_number":74,"context_line":"        entity \u003d {}\r"},{"line_number":75,"context_line":"        entity[DSProps.ENTITY_TYPE] \u003d AODH_DATASOURCE\r"},{"line_number":76,"context_line":"        entity[AodhProps.ALARM_ID] \u003d \u002712345\u0027\r"},{"line_number":77,"context_line":"        transformer \u003d self.transformers[AODH_DATASOURCE]\r"},{"line_number":78,"context_line":"\r"},{"line_number":79,"context_line":"        # Test action\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_06f12d01","line":76,"range":{"start_line":74,"start_character":8,"end_line":76,"end_character":44},"in_reply_to":"3a71b18c_30449f19","updated":"2016-12-06 08:04:24.000000000","message":"Done","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":96,"context_line":"        for event in static_events:\r"},{"line_number":97,"context_line":"            # convert neighbor from dict to vertex object\r"},{"line_number":98,"context_line":"            neighbors \u003d event[TransformerBase.QUERY_RESULT]\r"},{"line_number":99,"context_line":"            vertexes \u003d []\r"},{"line_number":100,"context_line":"            for neighbor in neighbors:\r"},{"line_number":101,"context_line":"                vertexes.append(self._convert_dist_to_vertex(neighbor))\r"},{"line_number":102,"context_line":"            event[TransformerBase.QUERY_RESULT] \u003d vertexes\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_10332363","line":99,"range":{"start_line":99,"start_character":12,"end_line":99,"end_character":20},"updated":"2016-12-06 07:11:04.000000000","message":"vertices","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"caa60daa06c0b6b2b29cfb08a04040923dd72aa6","unresolved":false,"context_lines":[{"line_number":96,"context_line":"        for event in static_events:\r"},{"line_number":97,"context_line":"            # convert neighbor from dict to vertex object\r"},{"line_number":98,"context_line":"            neighbors \u003d event[TransformerBase.QUERY_RESULT]\r"},{"line_number":99,"context_line":"            vertexes \u003d []\r"},{"line_number":100,"context_line":"            for neighbor in neighbors:\r"},{"line_number":101,"context_line":"                vertexes.append(self._convert_dist_to_vertex(neighbor))\r"},{"line_number":102,"context_line":"            event[TransformerBase.QUERY_RESULT] \u003d vertexes\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_8b4c68c9","line":99,"range":{"start_line":99,"start_character":12,"end_line":99,"end_character":20},"in_reply_to":"3a71b18c_10332363","updated":"2016-12-06 08:04:24.000000000","message":"Done","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":113,"context_line":"            self._validate_neighbors(neighbors, vertex.vertex_id, event)\r"},{"line_number":114,"context_line":"\r"},{"line_number":115,"context_line":"            self._validate_action(event, wrapper)\r"},{"line_number":116,"context_line":"\r"},{"line_number":117,"context_line":"    def _validate_aodh_vertex_props(self, vertex, event):\r"},{"line_number":118,"context_line":"\r"},{"line_number":119,"context_line":"        self.assertEqual(EntityCategory.ALARM, vertex[VProps.CATEGORY])\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_f0d6a74d","line":116,"updated":"2016-12-06 07:11:04.000000000","message":"I know you are working with the AODH project to enable the alarm notification via the bus. Does the Aodh already support that?\nIf it does, then please add also a test_update_transform","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"155a15feb7cfa5e89a57948348aea26e12aef623","unresolved":false,"context_lines":[{"line_number":113,"context_line":"            self._validate_neighbors(neighbors, vertex.vertex_id, event)\r"},{"line_number":114,"context_line":"\r"},{"line_number":115,"context_line":"            self._validate_action(event, wrapper)\r"},{"line_number":116,"context_line":"\r"},{"line_number":117,"context_line":"    def _validate_aodh_vertex_props(self, vertex, event):\r"},{"line_number":118,"context_line":"\r"},{"line_number":119,"context_line":"        self.assertEqual(EntityCategory.ALARM, vertex[VProps.CATEGORY])\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_2f1b5dcb","line":116,"in_reply_to":"3a71b18c_6bdaace9","updated":"2016-12-06 12:08:50.000000000","message":"OK","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"caa60daa06c0b6b2b29cfb08a04040923dd72aa6","unresolved":false,"context_lines":[{"line_number":113,"context_line":"            self._validate_neighbors(neighbors, vertex.vertex_id, event)\r"},{"line_number":114,"context_line":"\r"},{"line_number":115,"context_line":"            self._validate_action(event, wrapper)\r"},{"line_number":116,"context_line":"\r"},{"line_number":117,"context_line":"    def _validate_aodh_vertex_props(self, vertex, event):\r"},{"line_number":118,"context_line":"\r"},{"line_number":119,"context_line":"        self.assertEqual(EntityCategory.ALARM, vertex[VProps.CATEGORY])\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_6bdaace9","line":116,"in_reply_to":"3a71b18c_f0d6a74d","updated":"2016-12-06 08:04:24.000000000","message":"When i propose the aodh  alarm notification i\u0027ll add that.","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"41d2c3c046636e258bf21cc9737619975d728098","unresolved":false,"context_lines":[{"line_number":193,"context_line":"        self.assertEqual(edge.label, EdgeLabel.ON)\r"},{"line_number":194,"context_line":"\r"},{"line_number":195,"context_line":"    def _convert_dist_to_vertex(self, neighbor):\r"},{"line_number":196,"context_line":"        properties \u003d {\r"},{"line_number":197,"context_line":"            VProps.ID: neighbor[VProps.ID],\r"},{"line_number":198,"context_line":"            VProps.STATE: neighbor[VProps.STATE],\r"},{"line_number":199,"context_line":"            VProps.TYPE: neighbor[VProps.TYPE],\r"},{"line_number":200,"context_line":"            VProps.CATEGORY: neighbor[VProps.CATEGORY],\r"},{"line_number":201,"context_line":"            VProps.IS_DELETED: neighbor[VProps.IS_DELETED],\r"},{"line_number":202,"context_line":"            VProps.UPDATE_TIMESTAMP: neighbor[VProps.UPDATE_TIMESTAMP],\r"},{"line_number":203,"context_line":"            VProps.SAMPLE_TIMESTAMP: neighbor[VProps.SAMPLE_TIMESTAMP],\r"},{"line_number":204,"context_line":"            VProps.IS_PLACEHOLDER: neighbor[VProps.IS_PLACEHOLDER],\r"},{"line_number":205,"context_line":"            VProps.VITRAGE_ID: neighbor[VProps.VITRAGE_ID],\r"},{"line_number":206,"context_line":"            VProps.PROJECT_ID: neighbor[VProps.PROJECT_ID]\r"},{"line_number":207,"context_line":"        }\r"},{"line_number":208,"context_line":"        return Vertex(vertex_id\u003dneighbor[VProps.VITRAGE_ID],\r"},{"line_number":209,"context_line":"                      properties\u003dproperties)\r"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_707617d8","line":209,"range":{"start_line":196,"start_character":8,"end_line":209,"end_character":44},"updated":"2016-12-06 07:11:04.000000000","message":"just write this:\nreturn Vertex(vertex_id\u003dneighbor[VProps.CATEGORY]+TransformerBase.KEY_SEPARATOR+neighbor[VProps.TYPE]+TransformerBase.KEY_SEPARATOR+neighbor[VProps.ID]), properties\u003dneighbor)","commit_id":"38221759d6376a3b69352aa52bc84b18edf61f4f"},{"author":{"_account_id":21414,"name":"Yujun Zhang","email":"zhang.yujunz@zte.com.cn","username":"yujunz"},"change_message_id":"072ccee743ab51bbb8983fb520ae437a8ad23534","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2016 - ZTE Nokia\r"},{"line_number":2,"context_line":"#\r"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may\r"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain\r"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_122084f6","line":1,"range":{"start_line":1,"start_character":22,"end_line":1,"end_character":23},"updated":"2016-12-06 09:07:34.000000000","message":"Put a \u0027,\u0027 or \u0027\u0026\u0027 between the two parties?","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"95ee4c6711a65aa1e4116785c0c8eb8bc214f7eb","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2016 - ZTE Nokia\r"},{"line_number":2,"context_line":"#\r"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may\r"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain\r"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_15e78e40","line":1,"range":{"start_line":1,"start_character":22,"end_line":1,"end_character":23},"in_reply_to":"3a71b18c_122084f6","updated":"2016-12-06 09:18:18.000000000","message":"agree","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"604c72e133cc9bd6b11898f0b701202f34950a47","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2016 - ZTE Nokia\r"},{"line_number":2,"context_line":"#\r"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may\r"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain\r"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_b5009a67","line":1,"range":{"start_line":1,"start_character":22,"end_line":1,"end_character":23},"in_reply_to":"3a71b18c_15e78e40","updated":"2016-12-06 09:30:10.000000000","message":"Done","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"ca5810586f83d131a69b5ca769102b411c1d3693","unresolved":false,"context_lines":[{"line_number":87,"context_line":"                  \u0027snapshot\u0027)\r"},{"line_number":88,"context_line":"\r"},{"line_number":89,"context_line":"        # Test setup\r"},{"line_number":90,"context_line":"        spec_list \u003d mock_sync.simple_aodh_alarm_generators(alarm_num\u003d1,\r"},{"line_number":91,"context_line":"                                                           snapshot_events\u003d1)\r"},{"line_number":92,"context_line":"        static_events \u003d mock_sync.generate_random_events_list(spec_list)\r"},{"line_number":93,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_72537817","line":90,"updated":"2016-12-06 08:55:57.000000000","message":"try to write here alarm_num\u003d3, snapshot_events\u003d3 and just to check that it works. it is supposed to work as well.","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"604c72e133cc9bd6b11898f0b701202f34950a47","unresolved":false,"context_lines":[{"line_number":87,"context_line":"                  \u0027snapshot\u0027)\r"},{"line_number":88,"context_line":"\r"},{"line_number":89,"context_line":"        # Test setup\r"},{"line_number":90,"context_line":"        spec_list \u003d mock_sync.simple_aodh_alarm_generators(alarm_num\u003d1,\r"},{"line_number":91,"context_line":"                                                           snapshot_events\u003d1)\r"},{"line_number":92,"context_line":"        static_events \u003d mock_sync.generate_random_events_list(spec_list)\r"},{"line_number":93,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_b537ba4b","line":90,"in_reply_to":"3a71b18c_72537817","updated":"2016-12-06 09:30:10.000000000","message":"Done","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"ca5810586f83d131a69b5ca769102b411c1d3693","unresolved":false,"context_lines":[{"line_number":191,"context_line":"        self.assertEqual(edge.label, EdgeLabel.ON)\r"},{"line_number":192,"context_line":"\r"},{"line_number":193,"context_line":"    def _convert_dist_to_vertex(self, neighbor):\r"},{"line_number":194,"context_line":"        return Vertex(vertex_id\u003dneighbor[VProps.CATEGORY] +\r"},{"line_number":195,"context_line":"                      TransformerBase.KEY_SEPARATOR + neighbor[VProps.TYPE] +\r"},{"line_number":196,"context_line":"                      TransformerBase.KEY_SEPARATOR + neighbor[VProps.ID],\r"},{"line_number":197,"context_line":"                      properties\u003dneighbor)\r"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_9208142a","line":197,"range":{"start_line":194,"start_character":8,"end_line":197,"end_character":42},"updated":"2016-12-06 08:55:57.000000000","message":"sorry for nagging you about this, please write it like this:\nver_id \u003d neighbor[VProps.CATEGORY] + TransformerBase.KEY_SEPARATOR + neighbor[VProps.TYPE] + TransformerBase.KEY_SEPARATOR + neighbor[VProps.ID]\nreturn Vertex(vertex_id\u003dver_id,\n              properties\u003dneighbor)","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"},{"author":{"_account_id":18783,"name":"dongwenjuan","email":"dong.wenjuan@zte.com.cn","username":"dongwenjuan"},"change_message_id":"604c72e133cc9bd6b11898f0b701202f34950a47","unresolved":false,"context_lines":[{"line_number":191,"context_line":"        self.assertEqual(edge.label, EdgeLabel.ON)\r"},{"line_number":192,"context_line":"\r"},{"line_number":193,"context_line":"    def _convert_dist_to_vertex(self, neighbor):\r"},{"line_number":194,"context_line":"        return Vertex(vertex_id\u003dneighbor[VProps.CATEGORY] +\r"},{"line_number":195,"context_line":"                      TransformerBase.KEY_SEPARATOR + neighbor[VProps.TYPE] +\r"},{"line_number":196,"context_line":"                      TransformerBase.KEY_SEPARATOR + neighbor[VProps.ID],\r"},{"line_number":197,"context_line":"                      properties\u003dneighbor)\r"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_15494ed0","line":197,"range":{"start_line":194,"start_character":8,"end_line":197,"end_character":42},"in_reply_to":"3a71b18c_9208142a","updated":"2016-12-06 09:30:10.000000000","message":"Done","commit_id":"d30632705b51486622df80c5e116875ab94f8ef5"}]}
