)]}'
{"tempest/api/compute/keypairs/test_keypairs.py":[{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"192b123f6da10d1261675c8827167b88af407f61","unresolved":false,"context_lines":[{"line_number":52,"context_line":"    def test_keypair_create_delete(self):"},{"line_number":53,"context_line":"        # Keypair should be created, verified and deleted"},{"line_number":54,"context_line":"        k_name \u003d data_utils.rand_name(\u0027keypair\u0027)"},{"line_number":55,"context_line":"        keypair \u003d self.client.create_keypair(name\u003dk_name)[\u0027keypair\u0027]"},{"line_number":56,"context_line":"        private_key \u003d keypair[\u0027private_key\u0027]"},{"line_number":57,"context_line":"        key_name \u003d keypair[\u0027name\u0027]"},{"line_number":58,"context_line":"        self.assertEqual(key_name, k_name,"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba5201f7_99945fe9","line":55,"range":{"start_line":55,"start_character":8,"end_line":55,"end_character":68},"updated":"2016-12-29 08:20:23.000000000","message":"The reason maybe that self.addCleanup(self._delete_keypair) in _create_keypair will raise exception because keypair is already deleted.\nBut addCleanup should be added everytime a resource is created, even if the resource will be deleted in following test steps, because if something wrong, the resource will be left over in the system.\nSo, maybe you can add test_utils.call_and_ignore_notfound_exc(self._delete_keypair,k_name) here.","commit_id":"e9d8bd952d866f963d0ee7595f6f68cbeb7a255f"},{"author":{"_account_id":23184,"name":"DavidPurcell","email":"d.purcell222@gmail.com","username":"DavidPurcell"},"change_message_id":"758e613aa4a2d5000acfd4a67d54b42b6ea67968","unresolved":false,"context_lines":[{"line_number":52,"context_line":"    def test_keypair_create_delete(self):"},{"line_number":53,"context_line":"        # Keypair should be created, verified and deleted"},{"line_number":54,"context_line":"        k_name \u003d data_utils.rand_name(\u0027keypair\u0027)"},{"line_number":55,"context_line":"        keypair \u003d self.client.create_keypair(name\u003dk_name)[\u0027keypair\u0027]"},{"line_number":56,"context_line":"        private_key \u003d keypair[\u0027private_key\u0027]"},{"line_number":57,"context_line":"        key_name \u003d keypair[\u0027name\u0027]"},{"line_number":58,"context_line":"        self.assertEqual(key_name, k_name,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_aa7577cb","line":55,"range":{"start_line":55,"start_character":8,"end_line":55,"end_character":68},"updated":"2016-12-06 22:28:24.000000000","message":"Why did you change this from _create_keypair?","commit_id":"e9d8bd952d866f963d0ee7595f6f68cbeb7a255f"},{"author":{"_account_id":23184,"name":"DavidPurcell","email":"d.purcell222@gmail.com","username":"DavidPurcell"},"change_message_id":"758e613aa4a2d5000acfd4a67d54b42b6ea67968","unresolved":false,"context_lines":[{"line_number":60,"context_line":"                         \"to the requested name\")"},{"line_number":61,"context_line":"        self.assertIsNotNone(private_key,"},{"line_number":62,"context_line":"                             \"Field private_key is empty or not found.\")"},{"line_number":63,"context_line":"        self.client.delete_keypair(key_name)"},{"line_number":64,"context_line":"        self.assertRaises(lib_exc.NotFound,"},{"line_number":65,"context_line":"                          self.client.delete_keypair, key_name)"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_6a143f4c","line":63,"range":{"start_line":63,"start_character":8,"end_line":63,"end_character":44},"updated":"2016-12-06 22:28:24.000000000","message":"I think this should be _delete_keypair(key_name).","commit_id":"e9d8bd952d866f963d0ee7595f6f68cbeb7a255f"},{"author":{"_account_id":23184,"name":"DavidPurcell","email":"d.purcell222@gmail.com","username":"DavidPurcell"},"change_message_id":"758e613aa4a2d5000acfd4a67d54b42b6ea67968","unresolved":false,"context_lines":[{"line_number":62,"context_line":"                             \"Field private_key is empty or not found.\")"},{"line_number":63,"context_line":"        self.client.delete_keypair(key_name)"},{"line_number":64,"context_line":"        self.assertRaises(lib_exc.NotFound,"},{"line_number":65,"context_line":"                          self.client.delete_keypair, key_name)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @test.idempotent_id(\u0027a4233d5d-52d8-47cc-9a25-e1864527e3df\u0027)"},{"line_number":68,"context_line":"    def test_get_keypair_detail(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_0529fc89","line":65,"range":{"start_line":65,"start_character":26,"end_line":65,"end_character":52},"updated":"2016-12-06 22:28:24.000000000","message":"ditto","commit_id":"e9d8bd952d866f963d0ee7595f6f68cbeb7a255f"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"192b123f6da10d1261675c8827167b88af407f61","unresolved":false,"context_lines":[{"line_number":62,"context_line":"                             \"Field private_key is empty or not found.\")"},{"line_number":63,"context_line":"        self.client.delete_keypair(key_name)"},{"line_number":64,"context_line":"        self.assertRaises(lib_exc.NotFound,"},{"line_number":65,"context_line":"                          self.client.delete_keypair, key_name)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @test.idempotent_id(\u0027a4233d5d-52d8-47cc-9a25-e1864527e3df\u0027)"},{"line_number":68,"context_line":"    def test_get_keypair_detail(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba5201f7_5993d7fa","line":65,"range":{"start_line":65,"start_character":26,"end_line":65,"end_character":52},"updated":"2016-12-29 08:20:23.000000000","message":"maybe use show_keypair to check whether the keypair is deleted or not will be better.","commit_id":"e9d8bd952d866f963d0ee7595f6f68cbeb7a255f"}]}
