)]}'
{"tempest/api/compute/servers/test_server_metadata.py":[{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"27dc0731f2a25f42a6b124d5849485da0fabc195","unresolved":false,"context_lines":[{"line_number":29,"context_line":"        cls.quotas \u003d cls.quotas_client"},{"line_number":30,"context_line":"        cls.admin_client \u003d cls._get_identity_admin_client()"},{"line_number":31,"context_line":"        resp, tenants \u003d cls.admin_client.list_tenants()"},{"line_number":32,"context_line":"        cls.tenant_id \u003d [tnt[\u0027id\u0027] for tnt in tenants if tnt[\u0027name\u0027] \u003d\u003d"},{"line_number":33,"context_line":"                         cls.client.tenant_name][0]"},{"line_number":34,"context_line":"        resp, server \u003d cls.create_test_server(meta\u003d{}, wait_until\u003d\u0027ACTIVE\u0027)"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2FwIc%3D","line":32,"updated":"2014-01-02 11:30:23.000000000","message":"cls.tenant_id is used in this file.","commit_id":"f9583189db8aac3dacefebedf2200df08ca0a757"}],"tempest/api/compute/servers/test_server_metadata_negative.py":[{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"27dc0731f2a25f42a6b124d5849485da0fabc195","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    def setUp(self):"},{"line_number":40,"context_line":"        super(ServerMetadataNegativeTestJSON, self).setUp()"},{"line_number":41,"context_line":"        meta \u003d {\u0027key1\u0027: \u0027value1\u0027, \u0027key2\u0027: \u0027value2\u0027}"},{"line_number":42,"context_line":"        resp, _ \u003d self.client.set_server_metadata(self.server_id, meta)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2FwH0%3D","line":39,"updated":"2014-01-02 11:30:23.000000000","message":"setUp method seems not required.","commit_id":"f9583189db8aac3dacefebedf2200df08ca0a757"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"f053ea82a45730c0104f8f429692fd63ae181850","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    def setUp(self):"},{"line_number":40,"context_line":"        super(ServerMetadataNegativeTestJSON, self).setUp()"},{"line_number":41,"context_line":"        meta \u003d {\u0027key1\u0027: \u0027value1\u0027, \u0027key2\u0027: \u0027value2\u0027}"},{"line_number":42,"context_line":"        resp, _ \u003d self.client.set_server_metadata(self.server_id, meta)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F%2BHo%3D","line":39,"in_reply_to":"AAAAT3%2F%2FwH0%3D","updated":"2014-01-06 02:30:28.000000000","message":"Agreed, this setUp() seems unnecessary.","commit_id":"f9583189db8aac3dacefebedf2200df08ca0a757"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"f053ea82a45730c0104f8f429692fd63ae181850","unresolved":false,"context_lines":[{"line_number":67,"context_line":""},{"line_number":68,"context_line":"        # GET on a non-existent server should not succeed"},{"line_number":69,"context_line":"        self.assertRaises(exceptions.NotFound,"},{"line_number":70,"context_line":"                          self.client.get_server_metadata_item, 999, \u0027test2\u0027)"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        # List metadata on a non-existent server should not succeed"},{"line_number":73,"context_line":"        self.assertRaises(exceptions.NotFound,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F%2BGw%3D","line":70,"updated":"2014-01-06 02:30:28.000000000","message":"better to use data_utils.rand_uuid() instead of static value(999), because of the other negative tests(test_servers_negative.py etc.) and 999 is not server-id format.\n\nin addition, better to separate each negative test into the separated methods because we will be able to investigate the cause more easily when some negative test fails.","commit_id":"f9583189db8aac3dacefebedf2200df08ca0a757"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"f053ea82a45730c0104f8f429692fd63ae181850","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        # List metadata on a non-existent server should not succeed"},{"line_number":73,"context_line":"        self.assertRaises(exceptions.NotFound,"},{"line_number":74,"context_line":"                          self.client.list_server_metadata, 999)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"        # Raise BadRequest if key in uri does not match"},{"line_number":77,"context_line":"        # the key passed in body."}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F%2BGs%3D","line":74,"updated":"2014-01-06 02:30:28.000000000","message":"ditto.","commit_id":"f9583189db8aac3dacefebedf2200df08ca0a757"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"f053ea82a45730c0104f8f429692fd63ae181850","unresolved":false,"context_lines":[{"line_number":83,"context_line":"        # Set metadata on a non-existent server should not succeed"},{"line_number":84,"context_line":"        meta \u003d {\u0027meta1\u0027: \u0027data1\u0027}"},{"line_number":85,"context_line":"        self.assertRaises(exceptions.NotFound,"},{"line_number":86,"context_line":"                          self.client.set_server_metadata, 999, meta)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"        # An update should not happen for a non-existent image"},{"line_number":89,"context_line":"        meta \u003d {\u0027key1\u0027: \u0027value1\u0027, \u0027key2\u0027: \u0027value2\u0027}"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F%2BGo%3D","line":86,"updated":"2014-01-06 02:30:28.000000000","message":"ditto.","commit_id":"f9583189db8aac3dacefebedf2200df08ca0a757"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"27dc0731f2a25f42a6b124d5849485da0fabc195","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        self.assertRaises(exceptions.NotFound,"},{"line_number":86,"context_line":"                          self.client.set_server_metadata, 999, meta)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"        # An update should not happen for a non-existent image"},{"line_number":89,"context_line":"        meta \u003d {\u0027key1\u0027: \u0027value1\u0027, \u0027key2\u0027: \u0027value2\u0027}"},{"line_number":90,"context_line":"        self.assertRaises(exceptions.NotFound,"},{"line_number":91,"context_line":"                          self.client.update_server_metadata, 999, meta)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2FwIE%3D","line":88,"updated":"2014-01-02 11:30:23.000000000","message":"non-existent server?","commit_id":"f9583189db8aac3dacefebedf2200df08ca0a757"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"f053ea82a45730c0104f8f429692fd63ae181850","unresolved":false,"context_lines":[{"line_number":98,"context_line":""},{"line_number":99,"context_line":"        # Should not be able to delete metadata item from a non-existent server"},{"line_number":100,"context_line":"        self.assertRaises(exceptions.NotFound,"},{"line_number":101,"context_line":"                          self.client.delete_server_metadata_item, 999, \u0027d\u0027)"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"        # Raise a 413 OverLimit exception while exceeding metadata items limit"},{"line_number":104,"context_line":"        # for tenant."}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F%2BGg%3D","line":101,"updated":"2014-01-06 02:30:28.000000000","message":"ditto.","commit_id":"f9583189db8aac3dacefebedf2200df08ca0a757"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"63759959a488a9fa1d5eed887f91420089e1ba61","unresolved":false,"context_lines":[{"line_number":98,"context_line":""},{"line_number":99,"context_line":"    @test.attr(type\u003d[\u0027negative\u0027, \u0027gate\u0027])"},{"line_number":100,"context_line":"    def test_update_metadata_non_existent_server(self):"},{"line_number":101,"context_line":"        # An update should not happen for a non-existent image"},{"line_number":102,"context_line":"        non_existent_server_id \u003d data_utils.rand_uuid()"},{"line_number":103,"context_line":"        meta \u003d {\u0027key1\u0027: \u0027value1\u0027, \u0027key2\u0027: \u0027value2\u0027}"},{"line_number":104,"context_line":"        self.assertRaises(exceptions.NotFound,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2Fftg%3D","line":101,"updated":"2014-01-13 10:39:09.000000000","message":"non-existent image -\u003e non-existent server","commit_id":"3d03d5574e5aae4273b7b1330d9b58c6c9b8d86f"},{"author":{"_account_id":7039,"name":"Hoisaleshwara Madan V S","email":"hoisalvs@in.ibm.com","username":"Madan"},"change_message_id":"688f2e2622d5863878cfeb07af3803d950ed0bac","unresolved":false,"context_lines":[{"line_number":98,"context_line":""},{"line_number":99,"context_line":"    @test.attr(type\u003d[\u0027negative\u0027, \u0027gate\u0027])"},{"line_number":100,"context_line":"    def test_update_metadata_non_existent_server(self):"},{"line_number":101,"context_line":"        # An update should not happen for a non-existent image"},{"line_number":102,"context_line":"        non_existent_server_id \u003d data_utils.rand_uuid()"},{"line_number":103,"context_line":"        meta \u003d {\u0027key1\u0027: \u0027value1\u0027, \u0027key2\u0027: \u0027value2\u0027}"},{"line_number":104,"context_line":"        self.assertRaises(exceptions.NotFound,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FZDc%3D","line":101,"in_reply_to":"AAAAUH%2F%2Fftg%3D","updated":"2014-01-14 09:26:16.000000000","message":"Done","commit_id":"3d03d5574e5aae4273b7b1330d9b58c6c9b8d86f"}]}
