)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"d51b50f154fa0d403f09dbd419eaa076cfe7094c","unresolved":true,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Implement: blueprint multi-tenant-policy"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Depends-On: https://review.opendev.org/c/openstack/tacker/+/831566"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Change-Id: I57d2ec780bd65423820c291bc67d1328bcf9f620"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":31,"id":"cd141b41_e363daa1","line":20,"range":{"start_line":20,"start_character":0,"end_line":20,"end_character":66},"updated":"2022-03-02 18:47:56.000000000","message":"this is not needed if you want to make dependency in same repo. If there is deps on different repo patch then this is needed.\n\nInstead you can make this rebase on https://review.opendev.org/c/openstack/tacker/+/831566","commit_id":"32a47adaa9ad9c6428c5cfa59cd37ab37d44a822"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"d8906fbdeaedfc52a51a3f188d1614570afdfad6","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Implement: blueprint multi-tenant-policy"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Depends-On: https://review.opendev.org/c/openstack/tacker/+/831566"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Change-Id: I57d2ec780bd65423820c291bc67d1328bcf9f620"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":31,"id":"acd17009_681eaffc","line":20,"range":{"start_line":20,"start_character":0,"end_line":20,"end_character":66},"in_reply_to":"cd141b41_e363daa1","updated":"2022-03-03 18:38:44.000000000","message":"Ack","commit_id":"32a47adaa9ad9c6428c5cfa59cd37ab37d44a822"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"d4f55b1a76618d6a8fc1f8bc2ff613e1c0364476","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"3048f40e_64d5afe7","updated":"2022-02-18 07:26:13.000000000","message":"Thanks for your patch!\nSorry for comments not directly related to content of this patch.\n\nIs this patch an FT patch for subscription/notification,\nand FT for LCM operations such as Instantiate/Terminate will be posted in a separate patch after this patch?\n\nIf you will post with another patch, could you let me know when you plan to post.\nI am thinking about posting a similar patch on CNF side and I would like to refer to it.\n\nThanks.","commit_id":"f177d5d38d34b8a7687cacd55f0b80f0f526d354"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"72de39b2efa5a45ca2d22a26ef7f1553af10a9ba","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"6c767786_098e4e11","in_reply_to":"3048f40e_64d5afe7","updated":"2022-02-18 14:20:06.000000000","message":"Hi Ueha san,\n\nI would be posting FT for LCM operations (Instantiate/Terminate) in this patch itself. Would be uploading the test cases today or latest by tomorrow.\n\nThanks!!","commit_id":"f177d5d38d34b8a7687cacd55f0b80f0f526d354"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"f8700951b1e02c8e4b8045965e12b39b943144ec","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"2d380ea4_8b3663ee","updated":"2022-02-20 14:43:24.000000000","message":"In Patchset #20, VNF stack creation is failing with an authorization error raised by the heat engine for cinder volume (\"resource_types:OS::Cinder::VolumeType\"). This error is observed for newly created member role users.\nError Message:\nERROR heat.engine.resource heat.common.exception.ResourceFailure: resources.5ggw2yspjxuf: You are not authorized to use resource_types:OS::Cinder::VolumeType.\n\nFor heat engine exception message details, refer to [1]\nPlease refer to [2] for VNF creation failure found in tacker-conductor.log.\n\nThe policy for resource types in heat is by default admin project, refer to [3] for details.\n\n[1] https://zuul.opendev.org/t/openstack/build/1c5552d6fc1746a590ef27ac2ddc6b25/log/controller/logs/screen-h-eng.txt#881\n[2] https://zuul.opendev.org/t/openstack/build/1c5552d6fc1746a590ef27ac2ddc6b25/log/controller-tacker/logs/screen-tacker-conductor.txt#990 \n[3] https://opendev.org/openstack/heat/src/branch/master/heat/policies/resource_types.py#L27","commit_id":"4f3c97da2b7a7775228bc68b000133a25131b79c"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"578c7e1b68ec67d6dbdee24a7af5e8f5bc82d9b3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"e7575120_790041bd","in_reply_to":"2d380ea4_8b3663ee","updated":"2022-02-21 00:59:18.000000000","message":"\u003e In Patchset #21, VNF stack creation is failing with an authorization error raised by the heat engine for cinder volume (\"resource_types:OS::Cinder::VolumeType\"). This error is observed for newly created member role users.\n\u003e Error Message:\n\u003e ERROR heat.engine.resource heat.common.exception.ResourceFailure: resources.5ggw2yspjxuf: You are not authorized to use resource_types:OS::Cinder::VolumeType.\n\u003e \n\u003e For heat engine exception message details, refer to [1]\n\u003e Please refer to [2] for VNF creation failure found in tacker-conductor.log.\n\u003e \n\u003e The policy for resource types in heat is by default admin project, refer to [3] for details.\n\u003e \n\u003e [1] https://zuul.opendev.org/t/openstack/build/1c5552d6fc1746a590ef27ac2ddc6b25/log/controller/logs/screen-h-eng.txt#881\n\u003e [2] https://zuul.opendev.org/t/openstack/build/1c5552d6fc1746a590ef27ac2ddc6b25/log/controller-tacker/logs/screen-tacker-conductor.txt#990 \n\u003e [3] https://opendev.org/openstack/heat/src/branch/master/heat/policies/resource_types.py#L27","commit_id":"4f3c97da2b7a7775228bc68b000133a25131b79c"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"184cb8a24d5672627716ddd3b84280466c9ed5bb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":24,"id":"4e0598f5_de3ffde8","updated":"2022-02-22 16:11:37.000000000","message":"recheck","commit_id":"8aa5dd130876d67ca570e0a61a618acbc31823c3"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":33,"id":"2fd64783_3b9400bb","updated":"2022-03-04 08:41:51.000000000","message":"Thanks for the great work! Please kindly find my comments.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"d8906fbdeaedfc52a51a3f188d1614570afdfad6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":33,"id":"f4fd213f_3b7d0843","updated":"2022-03-03 18:38:44.000000000","message":"Thanks!! As suggested rebase patch on https://review.opendev.org/c/openstack/tacker/+/831566","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"bcfae482a1c96fc11d6c0dba35d1c7872214649b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":33,"id":"427001a9_7a71bb42","updated":"2022-03-04 01:37:54.000000000","message":"lgtm, job is passing https://zuul.opendev.org/t/openstack/build/0f281cc0c92e4fe094bc983999793ac3","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"c689f329d509d6f22b08e75e3c78ed2dd1cc315f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":33,"id":"e94b1c52_3e746e77","updated":"2022-03-04 07:43:16.000000000","message":"ping","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"ac72fef0074864610ed21c336e26a34071f178ed","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":33,"id":"c164e38c_db1e46b7","updated":"2022-03-03 22:59:47.000000000","message":"recheck","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":34,"id":"47f13ff7_c768ffd7","updated":"2022-03-04 11:59:33.000000000","message":"Thank you Ueha san for your review comments. Incorporated comments in Patchset 34. ","commit_id":"19bd992f284069095449de66d4f33aacbc211f1e"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"1b400e035e4a5a1611bf8b40516198163b7fd2a7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":34,"id":"5a84145f_c3ee654c","in_reply_to":"47f13ff7_c768ffd7","updated":"2022-03-06 14:00:14.000000000","message":"Please check PatchSet 35.","commit_id":"19bd992f284069095449de66d4f33aacbc211f1e"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"1b400e035e4a5a1611bf8b40516198163b7fd2a7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":36,"id":"6b4d2d5f_0b86007a","updated":"2022-03-06 14:00:14.000000000","message":"recheck","commit_id":"0864a6d6ee0f47eb99b43e8bbbc1479033c08422"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"68587bab78a432d4e5de8bde28f0c6432abefcf8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":39,"id":"e330a00a_e695fcc5","updated":"2022-03-09 23:36:17.000000000","message":"I\u0027m really sorry, I failed with git operation and I rebase to the latest master by posting my patch..\nPlease kindly wait until it becomes Zuul+1 again.","commit_id":"6f4d3dfeeeb8291a4a7b56333845623b8a5b357e"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"fbdaa3b4eb6f00e29e25337eac0e08cc52e2d871","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":39,"id":"a8566e7b_874c9486","updated":"2022-03-10 03:00:48.000000000","message":"ping","commit_id":"6f4d3dfeeeb8291a4a7b56333845623b8a5b357e"}],"tacker/tests/etc/samples/etsi/nfv/mt_functional2/BaseHOT/simple/helloworld3.yaml":[{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":33,"id":"128a02af_5d565803","updated":"2022-03-04 08:41:51.000000000","message":"mt_functional1 and mt_functional2 look exactly the same file. Can you make it one?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":33,"id":"72ece95f_7c4b4ccb","in_reply_to":"128a02af_5d565803","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":33,"id":"f0c77565_d071421c","in_reply_to":"72ece95f_7c4b4ccb","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"}],"tacker/tests/functional/sol_multi_tenant/vnflcm/base.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"4e854becb5ccde24b993b2d7cffe1d9b29b9d599","unresolved":true,"context_lines":[{"line_number":50,"context_line":"            base.BaseTackerTest.tacker_http_client("},{"line_number":51,"context_line":"                \u0027local-tenant2-vim.yaml\u0027)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"        # Set up fake NFVO server for tenant1 and tenant2"},{"line_number":54,"context_line":"        cls._prepare_start_fake_server(FAKE_SERVER_MANAGER_T1,"},{"line_number":55,"context_line":"            FAKE_SERVER_PORT_T1)"},{"line_number":56,"context_line":"        cls._prepare_start_fake_server(FAKE_SERVER_MANAGER_T2,"},{"line_number":57,"context_line":"            FAKE_SERVER_PORT_T2)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    @classmethod"},{"line_number":60,"context_line":"    def tearDownClass(cls):"},{"line_number":61,"context_line":"        super(BaseVnfLcmMultiTenantTest, cls).tearDownClass()"},{"line_number":62,"context_line":"        FAKE_SERVER_MANAGER_T1.stop_server()"},{"line_number":63,"context_line":"        FAKE_SERVER_MANAGER_T2.stop_server()"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"    def setUp(self):"},{"line_number":66,"context_line":"        super(BaseVnfLcmMultiTenantTest, self).setUp()"}],"source_content_type":"text/x-python","patch_set":26,"id":"ffd86132_ac8bdb39","line":63,"range":{"start_line":53,"start_character":0,"end_line":63,"end_character":44},"updated":"2022-02-27 03:08:27.000000000","message":"Timeout is fixed with the fixes in https://review.opendev.org/c/openstack/tacker/+/831070/3\n\nPlease add those in your patch and I will abandon the 831070. Job is still failing for return code which needs to be investigated as next.","commit_id":"e5b9933433ef76d2db9c7e1698080f24e2600046"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"720feb99d0088389db6dbe7ed3b1d9b0a4747e60","unresolved":true,"context_lines":[{"line_number":56,"context_line":"        cls._prepare_start_fake_server(FAKE_SERVER_MANAGER_T2,"},{"line_number":57,"context_line":"            FAKE_SERVER_PORT_T2)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    @classmethod"},{"line_number":60,"context_line":"    def tearDownClass(cls):"},{"line_number":61,"context_line":"        super(BaseVnfLcmMultiTenantTest, cls).tearDownClass()"},{"line_number":62,"context_line":"        FAKE_SERVER_MANAGER_T1.stop_server()"},{"line_number":63,"context_line":"        FAKE_SERVER_MANAGER_T2.stop_server()"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"    def setUp(self):"},{"line_number":66,"context_line":"        super(BaseVnfLcmMultiTenantTest, self).setUp()"},{"line_number":67,"context_line":"        self.base_url \u003d \"/vnfpkgm/v1/vnf_packages\""}],"source_content_type":"text/x-python","patch_set":26,"id":"9bc53a0c_bc533139","line":64,"range":{"start_line":59,"start_character":0,"end_line":64,"end_character":0},"updated":"2022-02-26 01:36:32.000000000","message":"Failure of job timeout- I am suspecting these two http server start is happening serially. If we create them parallelly then it should decrease the time, tryig that in https://review.opendev.org/c/openstack/tacker/+/831070","commit_id":"e5b9933433ef76d2db9c7e1698080f24e2600046"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":45,"context_line":"        cls.h_client_tenant2 \u003d result.get(\u0027h_client\u0027)"},{"line_number":46,"context_line":"        cls.glance_client_tenant2 \u003d result.get(\u0027glance_client\u0027)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        cls.tacker_client_tenant1 \u003d \\"},{"line_number":49,"context_line":"            base.BaseTackerTest.tacker_http_client("},{"line_number":50,"context_line":"                \u0027local-tenant1-vim.yaml\u0027)"},{"line_number":51,"context_line":"        cls.tacker_client_tenant2 \u003d \\"}],"source_content_type":"text/x-python","patch_set":33,"id":"6cee3d31_42ad206d","line":48,"range":{"start_line":48,"start_character":36,"end_line":48,"end_character":37},"updated":"2022-03-04 08:41:51.000000000","message":"How about to refactor it so that it doesn\u0027t end with a backslash?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        cls.h_client_tenant2 \u003d result.get(\u0027h_client\u0027)"},{"line_number":46,"context_line":"        cls.glance_client_tenant2 \u003d result.get(\u0027glance_client\u0027)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        cls.tacker_client_tenant1 \u003d \\"},{"line_number":49,"context_line":"            base.BaseTackerTest.tacker_http_client("},{"line_number":50,"context_line":"                \u0027local-tenant1-vim.yaml\u0027)"},{"line_number":51,"context_line":"        cls.tacker_client_tenant2 \u003d \\"}],"source_content_type":"text/x-python","patch_set":33,"id":"bf789c67_c212a2c5","line":48,"range":{"start_line":48,"start_character":36,"end_line":48,"end_character":37},"in_reply_to":"614f5ed8_4a7bf78e","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        cls.h_client_tenant2 \u003d result.get(\u0027h_client\u0027)"},{"line_number":46,"context_line":"        cls.glance_client_tenant2 \u003d result.get(\u0027glance_client\u0027)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        cls.tacker_client_tenant1 \u003d \\"},{"line_number":49,"context_line":"            base.BaseTackerTest.tacker_http_client("},{"line_number":50,"context_line":"                \u0027local-tenant1-vim.yaml\u0027)"},{"line_number":51,"context_line":"        cls.tacker_client_tenant2 \u003d \\"}],"source_content_type":"text/x-python","patch_set":33,"id":"614f5ed8_4a7bf78e","line":48,"range":{"start_line":48,"start_character":36,"end_line":48,"end_character":37},"in_reply_to":"6cee3d31_42ad206d","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":48,"context_line":"        cls.tacker_client_tenant1 \u003d \\"},{"line_number":49,"context_line":"            base.BaseTackerTest.tacker_http_client("},{"line_number":50,"context_line":"                \u0027local-tenant1-vim.yaml\u0027)"},{"line_number":51,"context_line":"        cls.tacker_client_tenant2 \u003d \\"},{"line_number":52,"context_line":"            base.BaseTackerTest.tacker_http_client("},{"line_number":53,"context_line":"                \u0027local-tenant2-vim.yaml\u0027)"},{"line_number":54,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"e94efe54_e58b8e2b","line":51,"range":{"start_line":51,"start_character":36,"end_line":51,"end_character":37},"updated":"2022-03-04 08:41:51.000000000","message":"ditto.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        cls.tacker_client_tenant1 \u003d \\"},{"line_number":49,"context_line":"            base.BaseTackerTest.tacker_http_client("},{"line_number":50,"context_line":"                \u0027local-tenant1-vim.yaml\u0027)"},{"line_number":51,"context_line":"        cls.tacker_client_tenant2 \u003d \\"},{"line_number":52,"context_line":"            base.BaseTackerTest.tacker_http_client("},{"line_number":53,"context_line":"                \u0027local-tenant2-vim.yaml\u0027)"},{"line_number":54,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"7141a41c_486d3438","line":51,"range":{"start_line":51,"start_character":36,"end_line":51,"end_character":37},"in_reply_to":"89669b10_91c243b3","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        cls.tacker_client_tenant1 \u003d \\"},{"line_number":49,"context_line":"            base.BaseTackerTest.tacker_http_client("},{"line_number":50,"context_line":"                \u0027local-tenant1-vim.yaml\u0027)"},{"line_number":51,"context_line":"        cls.tacker_client_tenant2 \u003d \\"},{"line_number":52,"context_line":"            base.BaseTackerTest.tacker_http_client("},{"line_number":53,"context_line":"                \u0027local-tenant2-vim.yaml\u0027)"},{"line_number":54,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"89669b10_91c243b3","line":51,"range":{"start_line":51,"start_character":36,"end_line":51,"end_character":37},"in_reply_to":"e94efe54_e58b8e2b","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":63,"context_line":"    @classmethod"},{"line_number":64,"context_line":"    def tearDownClass(cls):"},{"line_number":65,"context_line":"        super(BaseVnfLcmMultiTenantTest, cls).tearDownClass()"},{"line_number":66,"context_line":"        for port, manager in cls.servers.items():"},{"line_number":67,"context_line":"            manager.stop_server()"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":33,"id":"ae690681_1ec762bc","line":66,"range":{"start_line":66,"start_character":12,"end_line":66,"end_character":16},"updated":"2022-03-04 08:41:51.000000000","message":"return value is not used.\nCould you change to `_` from `port` or use cls.servers.values().","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    @classmethod"},{"line_number":64,"context_line":"    def tearDownClass(cls):"},{"line_number":65,"context_line":"        super(BaseVnfLcmMultiTenantTest, cls).tearDownClass()"},{"line_number":66,"context_line":"        for port, manager in cls.servers.items():"},{"line_number":67,"context_line":"            manager.stop_server()"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":33,"id":"f15c1262_860b25f4","line":66,"range":{"start_line":66,"start_character":12,"end_line":66,"end_character":16},"in_reply_to":"ae690681_1ec762bc","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    @classmethod"},{"line_number":64,"context_line":"    def tearDownClass(cls):"},{"line_number":65,"context_line":"        super(BaseVnfLcmMultiTenantTest, cls).tearDownClass()"},{"line_number":66,"context_line":"        for port, manager in cls.servers.items():"},{"line_number":67,"context_line":"            manager.stop_server()"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":33,"id":"ff0e13d2_22ffd4a7","line":66,"range":{"start_line":66,"start_character":12,"end_line":66,"end_character":16},"in_reply_to":"f15c1262_860b25f4","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"}],"tacker/tests/functional/sol_multi_tenant/vnflcm/test_vnf_lcm_with_multi_tenant.py":[{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":54,"context_line":"            return is_setup_error"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        for image in images:"},{"line_number":57,"context_line":"            specific_image_name \u003d image.name + \u00272\u0027"},{"line_number":58,"context_line":"            image_data \u003d {"},{"line_number":59,"context_line":"                \"min_disk\": image.min_disk,"},{"line_number":60,"context_line":"                \"min_ram\": image.min_ram,"}],"source_content_type":"text/x-python","patch_set":33,"id":"104f7be2_d0ff9e98","line":57,"range":{"start_line":57,"start_character":34,"end_line":57,"end_character":50},"updated":"2022-03-04 08:41:51.000000000","message":"How about using f-strings to concatenate strings?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":54,"context_line":"            return is_setup_error"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        for image in images:"},{"line_number":57,"context_line":"            specific_image_name \u003d image.name + \u00272\u0027"},{"line_number":58,"context_line":"            image_data \u003d {"},{"line_number":59,"context_line":"                \"min_disk\": image.min_disk,"},{"line_number":60,"context_line":"                \"min_ram\": image.min_ram,"}],"source_content_type":"text/x-python","patch_set":33,"id":"ff15de18_bf25fead","line":57,"range":{"start_line":57,"start_character":34,"end_line":57,"end_character":50},"in_reply_to":"104f7be2_d0ff9e98","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":54,"context_line":"            return is_setup_error"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        for image in images:"},{"line_number":57,"context_line":"            specific_image_name \u003d image.name + \u00272\u0027"},{"line_number":58,"context_line":"            image_data \u003d {"},{"line_number":59,"context_line":"                \"min_disk\": image.min_disk,"},{"line_number":60,"context_line":"                \"min_ram\": image.min_ram,"}],"source_content_type":"text/x-python","patch_set":33,"id":"fab572eb_2e003087","line":57,"range":{"start_line":57,"start_character":34,"end_line":57,"end_character":50},"in_reply_to":"ff15de18_bf25fead","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":69,"context_line":"                    break"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"                _, body \u003d cls.glance_client.http_client.get("},{"line_number":72,"context_line":"                    cls.glance_client.http_client.get_endpoint() + image.file)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"                with tempfile.TemporaryFile(\u0027w+b\u0027) as f:"},{"line_number":75,"context_line":"                    for content in body:"}],"source_content_type":"text/x-python","patch_set":33,"id":"004a39f3_7023f020","line":72,"range":{"start_line":72,"start_character":20,"end_line":72,"end_character":77},"updated":"2022-03-04 08:41:51.000000000","message":"ditto.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":69,"context_line":"                    break"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"                _, body \u003d cls.glance_client.http_client.get("},{"line_number":72,"context_line":"                    cls.glance_client.http_client.get_endpoint() + image.file)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"                with tempfile.TemporaryFile(\u0027w+b\u0027) as f:"},{"line_number":75,"context_line":"                    for content in body:"}],"source_content_type":"text/x-python","patch_set":33,"id":"5085b75b_3eb30c71","line":72,"range":{"start_line":72,"start_character":20,"end_line":72,"end_character":77},"in_reply_to":"004a39f3_7023f020","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":69,"context_line":"                    break"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"                _, body \u003d cls.glance_client.http_client.get("},{"line_number":72,"context_line":"                    cls.glance_client.http_client.get_endpoint() + image.file)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"                with tempfile.TemporaryFile(\u0027w+b\u0027) as f:"},{"line_number":75,"context_line":"                    for content in body:"}],"source_content_type":"text/x-python","patch_set":33,"id":"c0367ae3_8c148077","line":72,"range":{"start_line":72,"start_character":20,"end_line":72,"end_character":77},"in_reply_to":"5085b75b_3eb30c71","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":83,"context_line":"            return is_setup_error"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    def _wait_show_subscription(self, subscription_id, tacker_client):"},{"line_number":86,"context_line":"        # wait for onboard"},{"line_number":87,"context_line":"        timeout \u003d vnflcm_base.VNF_SUBSCRIPTION_TIMEOUT"},{"line_number":88,"context_line":"        start_time \u003d int(time.time())"},{"line_number":89,"context_line":"        while True:"}],"source_content_type":"text/x-python","patch_set":33,"id":"7f4a17f0_9c3fb5a4","line":86,"range":{"start_line":86,"start_character":19,"end_line":86,"end_character":26},"updated":"2022-03-04 08:41:51.000000000","message":"subscription creation?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":83,"context_line":"            return is_setup_error"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    def _wait_show_subscription(self, subscription_id, tacker_client):"},{"line_number":86,"context_line":"        # wait for onboard"},{"line_number":87,"context_line":"        timeout \u003d vnflcm_base.VNF_SUBSCRIPTION_TIMEOUT"},{"line_number":88,"context_line":"        start_time \u003d int(time.time())"},{"line_number":89,"context_line":"        while True:"}],"source_content_type":"text/x-python","patch_set":33,"id":"798edd56_0ab89ee7","line":86,"range":{"start_line":86,"start_character":19,"end_line":86,"end_character":26},"in_reply_to":"334f4177_bcaa8134","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":83,"context_line":"            return is_setup_error"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    def _wait_show_subscription(self, subscription_id, tacker_client):"},{"line_number":86,"context_line":"        # wait for onboard"},{"line_number":87,"context_line":"        timeout \u003d vnflcm_base.VNF_SUBSCRIPTION_TIMEOUT"},{"line_number":88,"context_line":"        start_time \u003d int(time.time())"},{"line_number":89,"context_line":"        while True:"}],"source_content_type":"text/x-python","patch_set":33,"id":"334f4177_bcaa8134","line":86,"range":{"start_line":86,"start_character":19,"end_line":86,"end_character":26},"in_reply_to":"7f4a17f0_9c3fb5a4","updated":"2022-03-04 11:59:33.000000000","message":"Yes, it should be \"subscription creation\".","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":100,"context_line":"            time.sleep(1)"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _delete_vnf_package(self, package_uuid, http_client):"},{"line_number":103,"context_line":"        url \u003d self.base_url + \"/\" + package_uuid"},{"line_number":104,"context_line":"        resp, body \u003d http_client.do_request(url, \"DELETE\")"},{"line_number":105,"context_line":"        self.assertEqual(204, resp.status_code)"},{"line_number":106,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"76845f92_97811b0d","line":103,"range":{"start_line":103,"start_character":14,"end_line":103,"end_character":48},"updated":"2022-03-04 08:41:51.000000000","message":"How about using `os.path.join` or f-strings to concatenate strings?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":100,"context_line":"            time.sleep(1)"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _delete_vnf_package(self, package_uuid, http_client):"},{"line_number":103,"context_line":"        url \u003d self.base_url + \"/\" + package_uuid"},{"line_number":104,"context_line":"        resp, body \u003d http_client.do_request(url, \"DELETE\")"},{"line_number":105,"context_line":"        self.assertEqual(204, resp.status_code)"},{"line_number":106,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"935aa7fa_974deef4","line":103,"range":{"start_line":103,"start_character":14,"end_line":103,"end_character":48},"in_reply_to":"76845f92_97811b0d","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":100,"context_line":"            time.sleep(1)"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _delete_vnf_package(self, package_uuid, http_client):"},{"line_number":103,"context_line":"        url \u003d self.base_url + \"/\" + package_uuid"},{"line_number":104,"context_line":"        resp, body \u003d http_client.do_request(url, \"DELETE\")"},{"line_number":105,"context_line":"        self.assertEqual(204, resp.status_code)"},{"line_number":106,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"e196f615_d311bfe5","line":103,"range":{"start_line":103,"start_character":14,"end_line":103,"end_character":48},"in_reply_to":"935aa7fa_974deef4","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _delete_vnf_package(self, package_uuid, http_client):"},{"line_number":103,"context_line":"        url \u003d self.base_url + \"/\" + package_uuid"},{"line_number":104,"context_line":"        resp, body \u003d http_client.do_request(url, \"DELETE\")"},{"line_number":105,"context_line":"        self.assertEqual(204, resp.status_code)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def _wait_for_delete(self, package_uuid, http_client):"}],"source_content_type":"text/x-python","patch_set":33,"id":"4a57b23d_1c64a1e5","line":104,"range":{"start_line":104,"start_character":14,"end_line":104,"end_character":18},"updated":"2022-03-04 08:41:51.000000000","message":"return value is not used.\nCould you change to `_` from `body`.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _delete_vnf_package(self, package_uuid, http_client):"},{"line_number":103,"context_line":"        url \u003d self.base_url + \"/\" + package_uuid"},{"line_number":104,"context_line":"        resp, body \u003d http_client.do_request(url, \"DELETE\")"},{"line_number":105,"context_line":"        self.assertEqual(204, resp.status_code)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def _wait_for_delete(self, package_uuid, http_client):"}],"source_content_type":"text/x-python","patch_set":33,"id":"5b91b0f5_b72e3231","line":104,"range":{"start_line":104,"start_character":14,"end_line":104,"end_character":18},"in_reply_to":"4a57b23d_1c64a1e5","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _delete_vnf_package(self, package_uuid, http_client):"},{"line_number":103,"context_line":"        url \u003d self.base_url + \"/\" + package_uuid"},{"line_number":104,"context_line":"        resp, body \u003d http_client.do_request(url, \"DELETE\")"},{"line_number":105,"context_line":"        self.assertEqual(204, resp.status_code)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def _wait_for_delete(self, package_uuid, http_client):"}],"source_content_type":"text/x-python","patch_set":33,"id":"4dbc3abd_169ca908","line":104,"range":{"start_line":104,"start_character":14,"end_line":104,"end_character":18},"in_reply_to":"5b91b0f5_b72e3231","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":105,"context_line":"        self.assertEqual(204, resp.status_code)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def _wait_for_delete(self, package_uuid, http_client):"},{"line_number":108,"context_line":"        show_url \u003d self.base_url + \"/\" + package_uuid"},{"line_number":109,"context_line":"        timeout \u003d self.VNF_PACKAGE_DELETE_TIMEOUT"},{"line_number":110,"context_line":"        start_time \u003d int(time.time())"},{"line_number":111,"context_line":"        while True:"}],"source_content_type":"text/x-python","patch_set":33,"id":"1cc2ed19_7f4ee901","line":108,"range":{"start_line":108,"start_character":19,"end_line":108,"end_character":53},"updated":"2022-03-04 08:41:51.000000000","message":"How about using `os.path.join` or f-strings to concatenate strings?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":105,"context_line":"        self.assertEqual(204, resp.status_code)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def _wait_for_delete(self, package_uuid, http_client):"},{"line_number":108,"context_line":"        show_url \u003d self.base_url + \"/\" + package_uuid"},{"line_number":109,"context_line":"        timeout \u003d self.VNF_PACKAGE_DELETE_TIMEOUT"},{"line_number":110,"context_line":"        start_time \u003d int(time.time())"},{"line_number":111,"context_line":"        while True:"}],"source_content_type":"text/x-python","patch_set":33,"id":"d5816486_ac04cf48","line":108,"range":{"start_line":108,"start_character":19,"end_line":108,"end_character":53},"in_reply_to":"1cc2ed19_7f4ee901","updated":"2022-03-04 11:59:33.000000000","message":"Concatenate URL using `os.path.join`.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":105,"context_line":"        self.assertEqual(204, resp.status_code)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def _wait_for_delete(self, package_uuid, http_client):"},{"line_number":108,"context_line":"        show_url \u003d self.base_url + \"/\" + package_uuid"},{"line_number":109,"context_line":"        timeout \u003d self.VNF_PACKAGE_DELETE_TIMEOUT"},{"line_number":110,"context_line":"        start_time \u003d int(time.time())"},{"line_number":111,"context_line":"        while True:"}],"source_content_type":"text/x-python","patch_set":33,"id":"dbf68afb_b1b0a7be","line":108,"range":{"start_line":108,"start_character":19,"end_line":108,"end_character":53},"in_reply_to":"d5816486_ac04cf48","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":121,"context_line":"        update_req_body \u003d jsonutils.dumps({"},{"line_number":122,"context_line":"            \"operationalState\": \"DISABLED\"})"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"        resp, resp_body \u003d http_client.do_request("},{"line_number":125,"context_line":"            \u0027{base_path}/{id}\u0027.format(id\u003dpackage_uuid,"},{"line_number":126,"context_line":"                                      base_path\u003dself.base_url),"},{"line_number":127,"context_line":"            \"PATCH\", content_type\u003d\u0027application/json\u0027,"}],"source_content_type":"text/x-python","patch_set":33,"id":"9d5cb72b_d0476ba7","line":124,"range":{"start_line":124,"start_character":14,"end_line":124,"end_character":23},"updated":"2022-03-04 08:41:51.000000000","message":"return value is not used.\nCould you change to `_` from `resp_body`.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":true,"context_lines":[{"line_number":121,"context_line":"        update_req_body \u003d jsonutils.dumps({"},{"line_number":122,"context_line":"            \"operationalState\": \"DISABLED\"})"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"        resp, resp_body \u003d http_client.do_request("},{"line_number":125,"context_line":"            \u0027{base_path}/{id}\u0027.format(id\u003dpackage_uuid,"},{"line_number":126,"context_line":"                                      base_path\u003dself.base_url),"},{"line_number":127,"context_line":"            \"PATCH\", content_type\u003d\u0027application/json\u0027,"}],"source_content_type":"text/x-python","patch_set":33,"id":"1aa88072_2ac1e5c1","line":124,"range":{"start_line":124,"start_character":14,"end_line":124,"end_character":23},"in_reply_to":"97510297_a73501c3","updated":"2022-03-07 08:48:17.000000000","message":"You haven\u0027t corrected here.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        update_req_body \u003d jsonutils.dumps({"},{"line_number":122,"context_line":"            \"operationalState\": \"DISABLED\"})"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"        resp, resp_body \u003d http_client.do_request("},{"line_number":125,"context_line":"            \u0027{base_path}/{id}\u0027.format(id\u003dpackage_uuid,"},{"line_number":126,"context_line":"                                      base_path\u003dself.base_url),"},{"line_number":127,"context_line":"            \"PATCH\", content_type\u003d\u0027application/json\u0027,"}],"source_content_type":"text/x-python","patch_set":33,"id":"97510297_a73501c3","line":124,"range":{"start_line":124,"start_character":14,"end_line":124,"end_character":23},"in_reply_to":"9d5cb72b_d0476ba7","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":174,"context_line":"                Subscription A is output."},{"line_number":175,"context_line":"              - User B gets subscription list and confirms only"},{"line_number":176,"context_line":"                Subscription B is output."},{"line_number":177,"context_line":"            - Delete Subscription"},{"line_number":178,"context_line":"              - User A deletes Subscription A."},{"line_number":179,"context_line":"              - User B deletes Subscription B."},{"line_number":180,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":33,"id":"7e5bd178_bcc4dbe4","line":177,"updated":"2022-03-04 08:41:51.000000000","message":"Are the following tests written on Spec unnecessary with this patch? Will it be done with a different patch?\n```\nDelete Subscription\n* User A belongs to Project A deletes Subscription B, and should fail\n* User B belongs to Project B deletes Subscription A, and should fail\n```","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":174,"context_line":"                Subscription A is output."},{"line_number":175,"context_line":"              - User B gets subscription list and confirms only"},{"line_number":176,"context_line":"                Subscription B is output."},{"line_number":177,"context_line":"            - Delete Subscription"},{"line_number":178,"context_line":"              - User A deletes Subscription A."},{"line_number":179,"context_line":"              - User B deletes Subscription B."},{"line_number":180,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":33,"id":"e4ee926b_8c4169bf","line":177,"in_reply_to":"7e5bd178_bcc4dbe4","updated":"2022-03-04 11:59:33.000000000","message":"This patch only addresses positive test cases, negative test cases (for subscription, notification, and lcm operation) would be covered in the next/upcoming release.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":true,"context_lines":[{"line_number":174,"context_line":"                Subscription A is output."},{"line_number":175,"context_line":"              - User B gets subscription list and confirms only"},{"line_number":176,"context_line":"                Subscription B is output."},{"line_number":177,"context_line":"            - Delete Subscription"},{"line_number":178,"context_line":"              - User A deletes Subscription A."},{"line_number":179,"context_line":"              - User B deletes Subscription B."},{"line_number":180,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":33,"id":"64331ccc_8093db47","line":177,"in_reply_to":"e4ee926b_8c4169bf","updated":"2022-03-07 08:48:17.000000000","message":"Umm.. I think `negative test case` is more important in tests of this feature..\nIs it confirmed in the execution of the local environment?\n\nIf it is difficult to add, how about to add a TODO comment?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":198,"context_line":"        # User B registers Subscription B"},{"line_number":199,"context_line":"        callback_url \u003d os.path.join(vnflcm_base.MOCK_NOTIFY_CALLBACK_URL,"},{"line_number":200,"context_line":"            self._testMethodName)"},{"line_number":201,"context_line":"        req_body_t2 \u003d \\"},{"line_number":202,"context_line":"            fake_vnflcm.Subscription.make_create_request_body("},{"line_number":203,"context_line":"                \u0027http://localhost:{}{}\u0027.format("},{"line_number":204,"context_line":"                    base.FAKE_SERVER_MANAGER_T2.SERVER_PORT_T2,"}],"source_content_type":"text/x-python","patch_set":33,"id":"a4537ef1_02c454d1","line":201,"range":{"start_line":201,"start_character":22,"end_line":201,"end_character":23},"updated":"2022-03-04 08:41:51.000000000","message":"How about to refactor it so that it doesn\u0027t end with a backslash?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":198,"context_line":"        # User B registers Subscription B"},{"line_number":199,"context_line":"        callback_url \u003d os.path.join(vnflcm_base.MOCK_NOTIFY_CALLBACK_URL,"},{"line_number":200,"context_line":"            self._testMethodName)"},{"line_number":201,"context_line":"        req_body_t2 \u003d \\"},{"line_number":202,"context_line":"            fake_vnflcm.Subscription.make_create_request_body("},{"line_number":203,"context_line":"                \u0027http://localhost:{}{}\u0027.format("},{"line_number":204,"context_line":"                    base.FAKE_SERVER_MANAGER_T2.SERVER_PORT_T2,"}],"source_content_type":"text/x-python","patch_set":33,"id":"c536accc_5aaccef6","line":201,"range":{"start_line":201,"start_character":22,"end_line":201,"end_character":23},"in_reply_to":"711d909c_96dac496","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":198,"context_line":"        # User B registers Subscription B"},{"line_number":199,"context_line":"        callback_url \u003d os.path.join(vnflcm_base.MOCK_NOTIFY_CALLBACK_URL,"},{"line_number":200,"context_line":"            self._testMethodName)"},{"line_number":201,"context_line":"        req_body_t2 \u003d \\"},{"line_number":202,"context_line":"            fake_vnflcm.Subscription.make_create_request_body("},{"line_number":203,"context_line":"                \u0027http://localhost:{}{}\u0027.format("},{"line_number":204,"context_line":"                    base.FAKE_SERVER_MANAGER_T2.SERVER_PORT_T2,"}],"source_content_type":"text/x-python","patch_set":33,"id":"711d909c_96dac496","line":201,"range":{"start_line":201,"start_character":22,"end_line":201,"end_character":23},"in_reply_to":"a4537ef1_02c454d1","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":263,"context_line":"            subscription_id_t2, self.tacker_client_tenant2)"},{"line_number":264,"context_line":""},{"line_number":265,"context_line":"    def test_vnf_package_functionality(self):"},{"line_number":266,"context_line":"        \"\"\"Test vnf package operations with member role users."},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"        In this test case, we do following steps."},{"line_number":269,"context_line":"        Note: User A belongs to Tenant 1."}],"source_content_type":"text/x-python","patch_set":33,"id":"d5262433_2cd451b5","line":266,"range":{"start_line":266,"start_character":16,"end_line":266,"end_character":21},"updated":"2022-03-04 08:41:51.000000000","message":"nit: How about capitalizing it to match with others?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":263,"context_line":"            subscription_id_t2, self.tacker_client_tenant2)"},{"line_number":264,"context_line":""},{"line_number":265,"context_line":"    def test_vnf_package_functionality(self):"},{"line_number":266,"context_line":"        \"\"\"Test vnf package operations with member role users."},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"        In this test case, we do following steps."},{"line_number":269,"context_line":"        Note: User A belongs to Tenant 1."}],"source_content_type":"text/x-python","patch_set":33,"id":"5c81131f_4cbaa4f2","line":266,"range":{"start_line":266,"start_character":16,"end_line":266,"end_character":21},"in_reply_to":"47e14f76_51b6c672","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":263,"context_line":"            subscription_id_t2, self.tacker_client_tenant2)"},{"line_number":264,"context_line":""},{"line_number":265,"context_line":"    def test_vnf_package_functionality(self):"},{"line_number":266,"context_line":"        \"\"\"Test vnf package operations with member role users."},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"        In this test case, we do following steps."},{"line_number":269,"context_line":"        Note: User A belongs to Tenant 1."}],"source_content_type":"text/x-python","patch_set":33,"id":"47e14f76_51b6c672","line":266,"range":{"start_line":266,"start_character":16,"end_line":266,"end_character":21},"in_reply_to":"d5262433_2cd451b5","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":281,"context_line":"            - Show VNF Package"},{"line_number":282,"context_line":"              - User A only gets information about VNF Package A."},{"line_number":283,"context_line":"              - User B only gets information about VNF Package B."},{"line_number":284,"context_line":"            - Delete VNF Package"},{"line_number":285,"context_line":"              - User A deletes VNF Package A."},{"line_number":286,"context_line":"              - User B deletes VNF Package B."},{"line_number":287,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":33,"id":"f0ac2774_677d952d","line":284,"updated":"2022-03-04 08:41:51.000000000","message":"Are the following tests written on Spec unnecessary with this patch? Will it be done with a different patch?\n```\nDelete VNF Package\n* User A belongs to Project A deletes VNF Package B, and should fail\n* User B belongs to Project B deletes VNF Package A, and should fail\n```","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":true,"context_lines":[{"line_number":281,"context_line":"            - Show VNF Package"},{"line_number":282,"context_line":"              - User A only gets information about VNF Package A."},{"line_number":283,"context_line":"              - User B only gets information about VNF Package B."},{"line_number":284,"context_line":"            - Delete VNF Package"},{"line_number":285,"context_line":"              - User A deletes VNF Package A."},{"line_number":286,"context_line":"              - User B deletes VNF Package B."},{"line_number":287,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":33,"id":"10c5991c_c2d783ca","line":284,"in_reply_to":"d5fe126d_5e65a80e","updated":"2022-03-07 08:48:17.000000000","message":"(same comment as test_subscription_functionality function)\nUmm.. I think `negative test case` is more important in tests of this feature..\nIs it confirmed in the execution of the local environment?\n\nIf it is difficult to add, how about to add a TODO comment?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":281,"context_line":"            - Show VNF Package"},{"line_number":282,"context_line":"              - User A only gets information about VNF Package A."},{"line_number":283,"context_line":"              - User B only gets information about VNF Package B."},{"line_number":284,"context_line":"            - Delete VNF Package"},{"line_number":285,"context_line":"              - User A deletes VNF Package A."},{"line_number":286,"context_line":"              - User B deletes VNF Package B."},{"line_number":287,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":33,"id":"d5fe126d_5e65a80e","line":284,"in_reply_to":"f0ac2774_677d952d","updated":"2022-03-04 11:59:33.000000000","message":"This patch only addresses positive test cases, negative test cases (for subscription, notification, and lcm operation) would be covered in the next/upcoming release.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":312,"context_line":"            csar_package_path_t2)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"        # User B uploads VNF Package B"},{"line_number":315,"context_line":"        vnf_package_id_t2, vnfd_id_t2 \u003d \\"},{"line_number":316,"context_line":"            vnflcm_base._create_and_upload_vnf_package("},{"line_number":317,"context_line":"                self.tacker_client_tenant2, user_defined_data\u003d{"},{"line_number":318,"context_line":"                    \"key\": sample_name_t2}, temp_csar_path\u003dtempname_t2)"}],"source_content_type":"text/x-python","patch_set":33,"id":"d260a188_e10cdace","line":315,"range":{"start_line":315,"start_character":40,"end_line":315,"end_character":41},"updated":"2022-03-04 08:41:51.000000000","message":"How about to refactor it so that it doesn\u0027t end with a backslash?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":312,"context_line":"            csar_package_path_t2)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"        # User B uploads VNF Package B"},{"line_number":315,"context_line":"        vnf_package_id_t2, vnfd_id_t2 \u003d \\"},{"line_number":316,"context_line":"            vnflcm_base._create_and_upload_vnf_package("},{"line_number":317,"context_line":"                self.tacker_client_tenant2, user_defined_data\u003d{"},{"line_number":318,"context_line":"                    \"key\": sample_name_t2}, temp_csar_path\u003dtempname_t2)"}],"source_content_type":"text/x-python","patch_set":33,"id":"006bdd6d_6aa78006","line":315,"range":{"start_line":315,"start_character":40,"end_line":315,"end_character":41},"in_reply_to":"a47a8f98_a9473ffe","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":312,"context_line":"            csar_package_path_t2)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"        # User B uploads VNF Package B"},{"line_number":315,"context_line":"        vnf_package_id_t2, vnfd_id_t2 \u003d \\"},{"line_number":316,"context_line":"            vnflcm_base._create_and_upload_vnf_package("},{"line_number":317,"context_line":"                self.tacker_client_tenant2, user_defined_data\u003d{"},{"line_number":318,"context_line":"                    \"key\": sample_name_t2}, temp_csar_path\u003dtempname_t2)"}],"source_content_type":"text/x-python","patch_set":33,"id":"a47a8f98_a9473ffe","line":315,"range":{"start_line":315,"start_character":40,"end_line":315,"end_character":41},"in_reply_to":"d260a188_e10cdace","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":338,"context_line":""},{"line_number":339,"context_line":"        # Show VNF Package"},{"line_number":340,"context_line":"        # User A only gets information about VNF Package A"},{"line_number":341,"context_line":"        show_url \u003d self.base_url + \"/\" + vnf_package_id"},{"line_number":342,"context_line":"        resp, body \u003d self.http_client_tenant1.do_request("},{"line_number":343,"context_line":"            show_url, \"GET\")"},{"line_number":344,"context_line":"        self.assertEqual(200, resp.status_code)"}],"source_content_type":"text/x-python","patch_set":33,"id":"64ac4af5_7636ddc4","line":341,"range":{"start_line":341,"start_character":19,"end_line":341,"end_character":55},"updated":"2022-03-04 08:41:51.000000000","message":"How about using `os.path.join` or f-strings to concatenate strings?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":338,"context_line":""},{"line_number":339,"context_line":"        # Show VNF Package"},{"line_number":340,"context_line":"        # User A only gets information about VNF Package A"},{"line_number":341,"context_line":"        show_url \u003d self.base_url + \"/\" + vnf_package_id"},{"line_number":342,"context_line":"        resp, body \u003d self.http_client_tenant1.do_request("},{"line_number":343,"context_line":"            show_url, \"GET\")"},{"line_number":344,"context_line":"        self.assertEqual(200, resp.status_code)"}],"source_content_type":"text/x-python","patch_set":33,"id":"8054fa1f_176a8532","line":341,"range":{"start_line":341,"start_character":19,"end_line":341,"end_character":55},"in_reply_to":"64ac4af5_7636ddc4","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":338,"context_line":""},{"line_number":339,"context_line":"        # Show VNF Package"},{"line_number":340,"context_line":"        # User A only gets information about VNF Package A"},{"line_number":341,"context_line":"        show_url \u003d self.base_url + \"/\" + vnf_package_id"},{"line_number":342,"context_line":"        resp, body \u003d self.http_client_tenant1.do_request("},{"line_number":343,"context_line":"            show_url, \"GET\")"},{"line_number":344,"context_line":"        self.assertEqual(200, resp.status_code)"}],"source_content_type":"text/x-python","patch_set":33,"id":"c49d3f9b_668945e5","line":341,"range":{"start_line":341,"start_character":19,"end_line":341,"end_character":55},"in_reply_to":"8054fa1f_176a8532","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":344,"context_line":"        self.assertEqual(200, resp.status_code)"},{"line_number":345,"context_line":""},{"line_number":346,"context_line":"        # User B only gets information about VNF Package B"},{"line_number":347,"context_line":"        show_url_t2 \u003d self.base_url + \"/\" + vnf_package_id_t2"},{"line_number":348,"context_line":"        resp_t2, body_t2 \u003d self.http_client_tenant2.do_request("},{"line_number":349,"context_line":"            show_url_t2, \"GET\")"},{"line_number":350,"context_line":"        self.assertEqual(200, resp_t2.status_code)"}],"source_content_type":"text/x-python","patch_set":33,"id":"eaad961f_915c8960","line":347,"range":{"start_line":347,"start_character":22,"end_line":347,"end_character":61},"updated":"2022-03-04 08:41:51.000000000","message":"ditto.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":344,"context_line":"        self.assertEqual(200, resp.status_code)"},{"line_number":345,"context_line":""},{"line_number":346,"context_line":"        # User B only gets information about VNF Package B"},{"line_number":347,"context_line":"        show_url_t2 \u003d self.base_url + \"/\" + vnf_package_id_t2"},{"line_number":348,"context_line":"        resp_t2, body_t2 \u003d self.http_client_tenant2.do_request("},{"line_number":349,"context_line":"            show_url_t2, \"GET\")"},{"line_number":350,"context_line":"        self.assertEqual(200, resp_t2.status_code)"}],"source_content_type":"text/x-python","patch_set":33,"id":"752a9cfd_945958f5","line":347,"range":{"start_line":347,"start_character":22,"end_line":347,"end_character":61},"in_reply_to":"a9d427b8_6bd51bc9","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":344,"context_line":"        self.assertEqual(200, resp.status_code)"},{"line_number":345,"context_line":""},{"line_number":346,"context_line":"        # User B only gets information about VNF Package B"},{"line_number":347,"context_line":"        show_url_t2 \u003d self.base_url + \"/\" + vnf_package_id_t2"},{"line_number":348,"context_line":"        resp_t2, body_t2 \u003d self.http_client_tenant2.do_request("},{"line_number":349,"context_line":"            show_url_t2, \"GET\")"},{"line_number":350,"context_line":"        self.assertEqual(200, resp_t2.status_code)"}],"source_content_type":"text/x-python","patch_set":33,"id":"a9d427b8_6bd51bc9","line":347,"range":{"start_line":347,"start_character":22,"end_line":347,"end_character":61},"in_reply_to":"eaad961f_915c8960","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":366,"context_line":"            self.http_client_tenant2)"},{"line_number":367,"context_line":""},{"line_number":368,"context_line":"    def test_vnf_instantiation_by_vim_of_different_tenant_and_role(self):"},{"line_number":369,"context_line":"        \"\"\"Test vnf instantiation by vim of differnt tenant."},{"line_number":370,"context_line":""},{"line_number":371,"context_line":"        In this test case, we do following steps."},{"line_number":372,"context_line":"        Note: User A is an admin role user belongs to Tenant 1."}],"source_content_type":"text/x-python","patch_set":33,"id":"deedc3b6_eb4fc055","line":369,"range":{"start_line":369,"start_character":16,"end_line":369,"end_character":19},"updated":"2022-03-04 08:41:51.000000000","message":"nit: How about capitalizing it to match with others?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":366,"context_line":"            self.http_client_tenant2)"},{"line_number":367,"context_line":""},{"line_number":368,"context_line":"    def test_vnf_instantiation_by_vim_of_different_tenant_and_role(self):"},{"line_number":369,"context_line":"        \"\"\"Test vnf instantiation by vim of differnt tenant."},{"line_number":370,"context_line":""},{"line_number":371,"context_line":"        In this test case, we do following steps."},{"line_number":372,"context_line":"        Note: User A is an admin role user belongs to Tenant 1."}],"source_content_type":"text/x-python","patch_set":33,"id":"bb5f3bff_39dffd95","line":369,"range":{"start_line":369,"start_character":16,"end_line":369,"end_character":19},"in_reply_to":"aec32f19_202c217a","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":366,"context_line":"            self.http_client_tenant2)"},{"line_number":367,"context_line":""},{"line_number":368,"context_line":"    def test_vnf_instantiation_by_vim_of_different_tenant_and_role(self):"},{"line_number":369,"context_line":"        \"\"\"Test vnf instantiation by vim of differnt tenant."},{"line_number":370,"context_line":""},{"line_number":371,"context_line":"        In this test case, we do following steps."},{"line_number":372,"context_line":"        Note: User A is an admin role user belongs to Tenant 1."}],"source_content_type":"text/x-python","patch_set":33,"id":"aec32f19_202c217a","line":369,"range":{"start_line":369,"start_character":16,"end_line":369,"end_character":19},"in_reply_to":"deedc3b6_eb4fc055","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":381,"context_line":"        # User B registers Subscription B."},{"line_number":382,"context_line":"        callback_url \u003d os.path.join(vnflcm_base.MOCK_NOTIFY_CALLBACK_URL,"},{"line_number":383,"context_line":"            self._testMethodName)"},{"line_number":384,"context_line":"        req_body_t2 \u003d \\"},{"line_number":385,"context_line":"            fake_vnflcm.Subscription.make_create_request_body("},{"line_number":386,"context_line":"                \u0027http://localhost:{}{}\u0027.format("},{"line_number":387,"context_line":"                    base.FAKE_SERVER_MANAGER_T2.SERVER_PORT_T2,"}],"source_content_type":"text/x-python","patch_set":33,"id":"a0d17331_96b2cae7","line":384,"range":{"start_line":384,"start_character":22,"end_line":384,"end_character":23},"updated":"2022-03-04 08:41:51.000000000","message":"How about to refactor it so that it doesn\u0027t end with a backslash?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":381,"context_line":"        # User B registers Subscription B."},{"line_number":382,"context_line":"        callback_url \u003d os.path.join(vnflcm_base.MOCK_NOTIFY_CALLBACK_URL,"},{"line_number":383,"context_line":"            self._testMethodName)"},{"line_number":384,"context_line":"        req_body_t2 \u003d \\"},{"line_number":385,"context_line":"            fake_vnflcm.Subscription.make_create_request_body("},{"line_number":386,"context_line":"                \u0027http://localhost:{}{}\u0027.format("},{"line_number":387,"context_line":"                    base.FAKE_SERVER_MANAGER_T2.SERVER_PORT_T2,"}],"source_content_type":"text/x-python","patch_set":33,"id":"4cacde7e_f8b218e5","line":384,"range":{"start_line":384,"start_character":22,"end_line":384,"end_character":23},"in_reply_to":"7f34db31_e01c5ef6","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":381,"context_line":"        # User B registers Subscription B."},{"line_number":382,"context_line":"        callback_url \u003d os.path.join(vnflcm_base.MOCK_NOTIFY_CALLBACK_URL,"},{"line_number":383,"context_line":"            self._testMethodName)"},{"line_number":384,"context_line":"        req_body_t2 \u003d \\"},{"line_number":385,"context_line":"            fake_vnflcm.Subscription.make_create_request_body("},{"line_number":386,"context_line":"                \u0027http://localhost:{}{}\u0027.format("},{"line_number":387,"context_line":"                    base.FAKE_SERVER_MANAGER_T2.SERVER_PORT_T2,"}],"source_content_type":"text/x-python","patch_set":33,"id":"7f34db31_e01c5ef6","line":384,"range":{"start_line":384,"start_character":22,"end_line":384,"end_character":23},"in_reply_to":"a0d17331_96b2cae7","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":411,"context_line":"            csar_package_path_t2)"},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"        # User B uploads VNF Package B"},{"line_number":414,"context_line":"        vnf_package_id_t2, vnfd_id_t2 \u003d \\"},{"line_number":415,"context_line":"            vnflcm_base._create_and_upload_vnf_package("},{"line_number":416,"context_line":"                self.tacker_client_tenant2, user_defined_data\u003d{"},{"line_number":417,"context_line":"                    \"key\": sample_name_t2}, temp_csar_path\u003dtempname_t2)"}],"source_content_type":"text/x-python","patch_set":33,"id":"6bc1dd55_859f98e7","line":414,"range":{"start_line":414,"start_character":40,"end_line":414,"end_character":41},"updated":"2022-03-04 08:41:51.000000000","message":"How about to refactor it so that it doesn\u0027t end with a backslash?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":411,"context_line":"            csar_package_path_t2)"},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"        # User B uploads VNF Package B"},{"line_number":414,"context_line":"        vnf_package_id_t2, vnfd_id_t2 \u003d \\"},{"line_number":415,"context_line":"            vnflcm_base._create_and_upload_vnf_package("},{"line_number":416,"context_line":"                self.tacker_client_tenant2, user_defined_data\u003d{"},{"line_number":417,"context_line":"                    \"key\": sample_name_t2}, temp_csar_path\u003dtempname_t2)"}],"source_content_type":"text/x-python","patch_set":33,"id":"12cbad97_f77b1358","line":414,"range":{"start_line":414,"start_character":40,"end_line":414,"end_character":41},"in_reply_to":"19a01135_767fed64","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":411,"context_line":"            csar_package_path_t2)"},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"        # User B uploads VNF Package B"},{"line_number":414,"context_line":"        vnf_package_id_t2, vnfd_id_t2 \u003d \\"},{"line_number":415,"context_line":"            vnflcm_base._create_and_upload_vnf_package("},{"line_number":416,"context_line":"                self.tacker_client_tenant2, user_defined_data\u003d{"},{"line_number":417,"context_line":"                    \"key\": sample_name_t2}, temp_csar_path\u003dtempname_t2)"}],"source_content_type":"text/x-python","patch_set":33,"id":"19a01135_767fed64","line":414,"range":{"start_line":414,"start_character":40,"end_line":414,"end_character":41},"in_reply_to":"6bc1dd55_859f98e7","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":416,"context_line":"                self.tacker_client_tenant2, user_defined_data\u003d{"},{"line_number":417,"context_line":"                    \"key\": sample_name_t2}, temp_csar_path\u003dtempname_t2)"},{"line_number":418,"context_line":""},{"line_number":419,"context_line":"        # Post Setting: Reserve deleting vnf package."},{"line_number":420,"context_line":"        self.addCleanup(vnflcm_base._delete_vnf_package,"},{"line_number":421,"context_line":"            self.tacker_client_tenant2, vnf_package_id_t2)"},{"line_number":422,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"b3b5ff28_dab597cf","line":419,"range":{"start_line":419,"start_character":41,"end_line":419,"end_character":46},"updated":"2022-03-04 08:41:51.000000000","message":"nit: How about capitalizing it to match with others?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":416,"context_line":"                self.tacker_client_tenant2, user_defined_data\u003d{"},{"line_number":417,"context_line":"                    \"key\": sample_name_t2}, temp_csar_path\u003dtempname_t2)"},{"line_number":418,"context_line":""},{"line_number":419,"context_line":"        # Post Setting: Reserve deleting vnf package."},{"line_number":420,"context_line":"        self.addCleanup(vnflcm_base._delete_vnf_package,"},{"line_number":421,"context_line":"            self.tacker_client_tenant2, vnf_package_id_t2)"},{"line_number":422,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"faff91c6_4a2cdbf1","line":419,"range":{"start_line":419,"start_character":41,"end_line":419,"end_character":46},"in_reply_to":"b3b5ff28_dab597cf","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":416,"context_line":"                self.tacker_client_tenant2, user_defined_data\u003d{"},{"line_number":417,"context_line":"                    \"key\": sample_name_t2}, temp_csar_path\u003dtempname_t2)"},{"line_number":418,"context_line":""},{"line_number":419,"context_line":"        # Post Setting: Reserve deleting vnf package."},{"line_number":420,"context_line":"        self.addCleanup(vnflcm_base._delete_vnf_package,"},{"line_number":421,"context_line":"            self.tacker_client_tenant2, vnf_package_id_t2)"},{"line_number":422,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"f2f4b67c_0d0f82b1","line":419,"range":{"start_line":419,"start_character":41,"end_line":419,"end_character":46},"in_reply_to":"faff91c6_4a2cdbf1","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":433,"context_line":"            self.tacker_client_tenant2,"},{"line_number":434,"context_line":"            base.FAKE_SERVER_MANAGER_T2)"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"        # Instantiate vnf instance"},{"line_number":437,"context_line":"        # User A fails to instantiate VNF Instance B as both VIM and VNF"},{"line_number":438,"context_line":"        # belongs to differernt tenants"},{"line_number":439,"context_line":"        request_body \u003d \\"}],"source_content_type":"text/x-python","patch_set":33,"id":"1f612ebc_99fd35b0","line":436,"range":{"start_line":436,"start_character":22,"end_line":436,"end_character":27},"updated":"2022-03-04 08:41:51.000000000","message":"nit: How about capitalizing it to match with others?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":433,"context_line":"            self.tacker_client_tenant2,"},{"line_number":434,"context_line":"            base.FAKE_SERVER_MANAGER_T2)"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"        # Instantiate vnf instance"},{"line_number":437,"context_line":"        # User A fails to instantiate VNF Instance B as both VIM and VNF"},{"line_number":438,"context_line":"        # belongs to differernt tenants"},{"line_number":439,"context_line":"        request_body \u003d \\"}],"source_content_type":"text/x-python","patch_set":33,"id":"c47dfe53_9b2c4585","line":436,"range":{"start_line":436,"start_character":22,"end_line":436,"end_character":27},"in_reply_to":"1f612ebc_99fd35b0","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":433,"context_line":"            self.tacker_client_tenant2,"},{"line_number":434,"context_line":"            base.FAKE_SERVER_MANAGER_T2)"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"        # Instantiate vnf instance"},{"line_number":437,"context_line":"        # User A fails to instantiate VNF Instance B as both VIM and VNF"},{"line_number":438,"context_line":"        # belongs to differernt tenants"},{"line_number":439,"context_line":"        request_body \u003d \\"}],"source_content_type":"text/x-python","patch_set":33,"id":"7ec17306_fcef0a75","line":436,"range":{"start_line":436,"start_character":22,"end_line":436,"end_character":27},"in_reply_to":"c47dfe53_9b2c4585","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"decc0f403cb5853efa23e07c7abc2114a1b95950","unresolved":true,"context_lines":[{"line_number":436,"context_line":"        # Instantiate vnf instance"},{"line_number":437,"context_line":"        # User A fails to instantiate VNF Instance B as both VIM and VNF"},{"line_number":438,"context_line":"        # belongs to differernt tenants"},{"line_number":439,"context_line":"        request_body \u003d \\"},{"line_number":440,"context_line":"            fake_vnflcm.VnfInstances.make_inst_request_body("},{"line_number":441,"context_line":"                \u0027nfv_user\u0027,"},{"line_number":442,"context_line":"                self.vim[\u0027tenant_id\u0027], self.ext_networks,"}],"source_content_type":"text/x-python","patch_set":33,"id":"52df94b6_abc93b6d","line":439,"range":{"start_line":439,"start_character":23,"end_line":439,"end_character":24},"updated":"2022-03-04 08:41:51.000000000","message":"How about to refactor it so that it doesn\u0027t end with a backslash?","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"16fada8fbceba7edd764763a08a3a23bccc4d12f","unresolved":false,"context_lines":[{"line_number":436,"context_line":"        # Instantiate vnf instance"},{"line_number":437,"context_line":"        # User A fails to instantiate VNF Instance B as both VIM and VNF"},{"line_number":438,"context_line":"        # belongs to differernt tenants"},{"line_number":439,"context_line":"        request_body \u003d \\"},{"line_number":440,"context_line":"            fake_vnflcm.VnfInstances.make_inst_request_body("},{"line_number":441,"context_line":"                \u0027nfv_user\u0027,"},{"line_number":442,"context_line":"                self.vim[\u0027tenant_id\u0027], self.ext_networks,"}],"source_content_type":"text/x-python","patch_set":33,"id":"da200eb5_545188db","line":439,"range":{"start_line":439,"start_character":23,"end_line":439,"end_character":24},"in_reply_to":"52df94b6_abc93b6d","updated":"2022-03-04 11:59:33.000000000","message":"Done","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"ef9e3a95f985f26cae4d2d103c9727711cc10777","unresolved":false,"context_lines":[{"line_number":436,"context_line":"        # Instantiate vnf instance"},{"line_number":437,"context_line":"        # User A fails to instantiate VNF Instance B as both VIM and VNF"},{"line_number":438,"context_line":"        # belongs to differernt tenants"},{"line_number":439,"context_line":"        request_body \u003d \\"},{"line_number":440,"context_line":"            fake_vnflcm.VnfInstances.make_inst_request_body("},{"line_number":441,"context_line":"                \u0027nfv_user\u0027,"},{"line_number":442,"context_line":"                self.vim[\u0027tenant_id\u0027], self.ext_networks,"}],"source_content_type":"text/x-python","patch_set":33,"id":"e0055049_f7e8a03a","line":439,"range":{"start_line":439,"start_character":23,"end_line":439,"end_character":24},"in_reply_to":"da200eb5_545188db","updated":"2022-03-07 08:48:17.000000000","message":"I\u0027ve confirmed.","commit_id":"4777965d8b895fa7038ba938ae14da5555ed25b4"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"abe77adf3530904dbedd1b8aa217bd0b8292e820","unresolved":true,"context_lines":[{"line_number":181,"context_line":"        Negative test cases"},{"line_number":182,"context_line":"              - User A fails to delete Subscription B."},{"line_number":183,"context_line":"              - User B fails to delete Subscription A."},{"line_number":184,"context_line":"        Validation of negative test cases would require design changes"},{"line_number":185,"context_line":"        in Fake NFVO server, which could be implemented in the upcoming"},{"line_number":186,"context_line":"        cycle."},{"line_number":187,"context_line":"        \"\"\""},{"line_number":188,"context_line":"        # Create subscription"}],"source_content_type":"text/x-python","patch_set":38,"id":"8c5e3b62_d0d32331","line":185,"range":{"start_line":184,"start_character":8,"end_line":185,"end_character":27},"updated":"2022-03-08 07:40:04.000000000","message":"Do you need to change the Fake NFVO server other than fixing the following patches?\nhttps://review.opendev.org/c/openstack/tacker/+/831566\n\nAgain, have you tested negative test cases (for subscription, notification, and lcm operation) in the local environment to make sure multi-tenant LCM work correctly?","commit_id":"181f503518a333ad7e0dbd36012bb8202b2fce88"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"34b8b27c28628bae350874f613edfc48c4cd3249","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        Negative test cases"},{"line_number":182,"context_line":"              - User A fails to delete Subscription B."},{"line_number":183,"context_line":"              - User B fails to delete Subscription A."},{"line_number":184,"context_line":"        Validation of negative test cases would require design changes"},{"line_number":185,"context_line":"        in Fake NFVO server, which could be implemented in the upcoming"},{"line_number":186,"context_line":"        cycle."},{"line_number":187,"context_line":"        \"\"\""},{"line_number":188,"context_line":"        # Create subscription"}],"source_content_type":"text/x-python","patch_set":38,"id":"d92cbc8a_08e9a831","line":185,"range":{"start_line":184,"start_character":8,"end_line":185,"end_character":27},"in_reply_to":"080d78dd_6526b8af","updated":"2022-03-09 04:51:09.000000000","message":"I understood, I misunderstand the subscription server and NFVO server are different.\nThank you very much.","commit_id":"181f503518a333ad7e0dbd36012bb8202b2fce88"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"13da85fc24d6cd210933b1d0f3bdc88d11857276","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        Negative test cases"},{"line_number":182,"context_line":"              - User A fails to delete Subscription B."},{"line_number":183,"context_line":"              - User B fails to delete Subscription A."},{"line_number":184,"context_line":"        Validation of negative test cases would require design changes"},{"line_number":185,"context_line":"        in Fake NFVO server, which could be implemented in the upcoming"},{"line_number":186,"context_line":"        cycle."},{"line_number":187,"context_line":"        \"\"\""},{"line_number":188,"context_line":"        # Create subscription"}],"source_content_type":"text/x-python","patch_set":38,"id":"84ea15a1_113d1a51","line":185,"range":{"start_line":184,"start_character":8,"end_line":185,"end_character":27},"in_reply_to":"176e3eb0_59685b93","updated":"2022-03-09 02:17:29.000000000","message":"Thanks for your answer, in my understanding as below, is it correct?\n* negative test cases need different NFVO server for each tenant.\n* but currently Tacker can\u0027t target different NFVO server for each tenant, therefore NFVO server design need to be changed.\n\nSorry for my lack of knowledge, I don\u0027t understand the first point, could you tell me why the same NFVO server is not good and you need another NFVO server?","commit_id":"181f503518a333ad7e0dbd36012bb8202b2fce88"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"ce723d8b5caa22755692f5999f5b56c964a9f775","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        Negative test cases"},{"line_number":182,"context_line":"              - User A fails to delete Subscription B."},{"line_number":183,"context_line":"              - User B fails to delete Subscription A."},{"line_number":184,"context_line":"        Validation of negative test cases would require design changes"},{"line_number":185,"context_line":"        in Fake NFVO server, which could be implemented in the upcoming"},{"line_number":186,"context_line":"        cycle."},{"line_number":187,"context_line":"        \"\"\""},{"line_number":188,"context_line":"        # Create subscription"}],"source_content_type":"text/x-python","patch_set":38,"id":"080d78dd_6526b8af","line":185,"range":{"start_line":184,"start_character":8,"end_line":185,"end_character":27},"in_reply_to":"84ea15a1_113d1a51","updated":"2022-03-09 02:56:42.000000000","message":"The design was to dedicate a subscription notification server for each tenant to validate that these servers only receive notifications of VNF package or LCM operations performed by their respective tenants.","commit_id":"181f503518a333ad7e0dbd36012bb8202b2fce88"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"3670979c702bd7c2aefc5d5ff238e16b0f191385","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        Negative test cases"},{"line_number":182,"context_line":"              - User A fails to delete Subscription B."},{"line_number":183,"context_line":"              - User B fails to delete Subscription A."},{"line_number":184,"context_line":"        Validation of negative test cases would require design changes"},{"line_number":185,"context_line":"        in Fake NFVO server, which could be implemented in the upcoming"},{"line_number":186,"context_line":"        cycle."},{"line_number":187,"context_line":"        \"\"\""},{"line_number":188,"context_line":"        # Create subscription"}],"source_content_type":"text/x-python","patch_set":38,"id":"176e3eb0_59685b93","line":185,"range":{"start_line":184,"start_character":8,"end_line":185,"end_character":27},"in_reply_to":"8c5e3b62_d0d32331","updated":"2022-03-08 11:01:57.000000000","message":"The NFVO server changes done in https://review.opendev.org/c/openstack/tacker/+/831566 introduce multiple instantiations of FakeServerManager class objects, which helps in executing positive test cases for multi-tenant policy.\n\nIn my understanding, in multi-tenant negative test cases, we might require dedicated NFVO servers (physical server) per tenant which could reject the upcoming requests if not for a particular tenant.\n\nWhereas current implementation Zuul or local environment have 2 NFVO servers listening on localhost, without any port restriction on request. So it was difficult to test negative cases locally as well.\n\nTherefore as suggested would test negative test cases in the upcoming cycle with the new NFVO server design.","commit_id":"181f503518a333ad7e0dbd36012bb8202b2fce88"}]}
